I'm developing an application which doe's lots of arithmetic calculations, and when I tested it on the E61 I had very bad performance in terms of running time.
I expected that the running time will be correlated to the ratio between the E61 and a PC processor, meaning that since the E61's processor is 206mhz and my PC's processor is 3.0ghz, the running time should be 15 times longer when running the application on the E61. Unfortunately, the running time was about 70 times longer.
Having these results, I tried a new approach and ran the following piece of code on both machines:
I tested it several times. In some of them i&k were ints and in the other floats. I also replaced the adding operation with multiply.
The conclusion was that it takes between 45-50 times longer for the code to ran on the E61 that on the PC. Now, if I normalize the the results with the processors' ratio, it still takes between 3-4 times slower on the E61.
When searching for the reason over the internet I found out that the E61's processor is optimized for power consumption (or so) rather than performance.
I would like to know if my results seem reasonable for someone, or whether someone has a better explanation for that.
In addition, it would really help to know if it's possible to change some flag or call an API which sets the cpu to performance mode.