Is the algorithm taking a long time? The fact that it uses 50-60% of your CPU really means nothing. Your Central Processing Unit is there to do one thing, process. If it's not processing (idle), you're just wasting energy.

Viggy