but why would an app run slower on a fast machine than on a slow machine ?

Starting from the graphicsExample, I built an small app that draws 1 million rectangles in the main window.
I built this app, using OF0061, on a MacBookPro IntelCoreDuo2 2.5GHz, under Leopard (MacOSX10.5.8), with the standard GeForce 8600M GT graphic card.
It takes 0.33s to draw the 1 million rectangles.

I then copy this executable on a powerful MacPro Quad-Core Intel Xeon, 2.8GHz, under Snow Leopard (MacOSX10.6.8) with an ATI Radeon HD 5770 graphic card.
It takes 0.41s to draw the 1 million rectangles. Slower than on the slow machine !

When I do the same in Processing, it runs 4 times faster on the MacPro.

Any idea why this would happen that a program is slower on the fast machine ?

I suspected 32bit/64bit issues, but cannot test this as OF cannot build 64bits apps. Any other idea ?
Sorry if this is a stupid question, or if I am a bit tried to see the obvious answer…

hey Antoine,

welcome to the openFrameworks forums!

i think that most of the speed difference is coming from the differences in video cards. when drawing objects with openFrameworks, most of the actual drawing is done by the graphics card – so it seems that in your test case a GeForce 8600M GT graphic card is faster than an ATI Radeon HD 5770 (not surprising as the ATI drivers for OSX are not very good… i know because that’s the card I have and it performs way better under Windows!).

also, Apple doesn’t really release the exact specs of the CPUs they use, so it could also be that the 2.5GHz CoreDuo2 is actually faster in some ways than the Xeon 2.8GHz (the number of cores won’t make any difference here) – hard to say.

with Processing a lot more of the work is being done by the CPU, so you will get a performance increase on a faster CPU, although i’m surprised it’s a 4x increase.