Particle system benchmark

Hi. I’ve noticed a considerable difference in the performance of a patch that uses particles with jit.gl.multiple, between Max 5.1.9 and 6.0.8. I’ve tested it in Windows 7 and Mac OS X 10.8 with the same hardware: it is much slower in 6.0.8. I’ve made a patch to test this performance difference with a 5000 particle system and here are the results:

Thanks, Terry. I guess that your GPU is the AMD Radeon HD 6750M. I’ve tested with an AMD also (HD 4870 1 GB).

To me, this test shows that:
1, With shape 1 (plane, low poly count), Max 5 is 2 to 3 times faster than Max 6.
I know that Max 6 had many changes under-the-hood. Maybe some of these changes introduced a bug? I hope so… can anyone from Cycling comment/confirm this?

2. AMD graphic drivers on Windows perform much better with high poly count (shape 2) than on Mac OS X.
If anyone has a system with dual boot (macintosh, hackintosh), I would like to confirm this… and to also have results from NVidia cards!

With that kind of performance, I guess it was really using the Radeon. I’m glad to see that current mobile GPUs have similar performance to my current non-mobile Radeon HD 4870 1 GB.
It’s just sad to see this amount of performance penalty from Max 5 to 6 (at least in this particular case).

Just a quick update: I’ve adapted the above patch to use jit.gl.mesh in points and in tri_grid draw modes instead of using jit.gl.multiple to draw the particle system. A 100.000 particle system has the exact same behaviour in Max 5 and Max 6: about 60 fps.

So I guess the problem resides inside jit.gl.multiple.

Can anyone from Cycling’74 confirm this? Wesley? Robert? Joshua?

And maybe update the title of the thread to mention jit.gl.multiple as it seems that’s the main problem here…

Thanks.

— Pasted Max Patch, click to expand. —

Copy all of the following text. Then, in Max, select New From Clipboard.

The patch works fast enough(30 fps) on Max 5, but very slow(10 fps) on Max 6.
(Since I can’t upload the whole patch of mine here, but will provide a simplified version soon that can reproduce the problem.)

The clue I have is that [ jit.gl.sketch ] is not the problem but [ jit.window ] or an underlying mechanism.
When I delete [ jit.window ] and recreate it (‘undo’), Max 6 shows as fast performance as Max 5.

This is not case for the Pedro’s patch, but I’m writing this if the developers at Cycling74 can have some clues.