NASA-like setup
After a long fight I finally managed to get our NASA-like setup running at 60FPS on all outputs, on a single MacPro 2009 loaded with GT120 cards. Strangely, it works only if all the fullscreen outputs are VGA, except one DVI.
That’s a lot of particles for a single Nehalem core at 2.26Ghz … (since I don’t know how to multithread QCviews yet, if that’s even possible).
The good point is that I can still run Photoshop on the control monitor without a framedrop.
EDIT: due to some apparent bug in the GT120 drivers, depending on reboot, the framerate is either 60FPS or … 30FPS. Pretty lame actually.
EDIT2: thanks to David, the super-coder, we managed to disable vsync on all openGL contexts. Now we have 60FPS ! Yeah, 60 ! (I love reading that number on my FPScounter…)
September 3, 2010 at 02:23
Very nice setup. You can thread QCRenderer, but not QCViews (which I believe run on the main thread, but dont take my word on it).
September 3, 2010 at 02:24
Oh, and lets be careful lest I get yelled at. QCRender can be called from a single arbitrary thread, but not from multiple without leaks. So you can alloc/init one in a say, CVDisplayLink thread, and render, but have to dealloc in that thread too, lest you leak. Just FYI :)
September 3, 2010 at 08:56
thanks vade for the tips !
QCviews leak as well btw, I let it run for a night, and memory usage doubled.
September 3, 2010 at 19:14
Well, QC’s runtime has pretty aggressive caching, did it continue to leak, or settle a lot higher than when the app initially ran? When developing Syphon I noticed this in a simple test case and thought we had a huuge leak. Letting the app keep running it eventually settled down on a value about 3x more than what the app launched with (even though we were not inniting new objects). Once it got to what it thought was right, it stayed at that value.
QC is… fun :)
You’ve been doing awesome work lately, well done! I want a setup like that, ha!
September 3, 2010 at 19:33
It settled about 2/3 times bigger than when launched, after a full night of freerun. Don’t know if the leak was constant, or, like you said, it did pretty aggressive caching. I’ll have to test it further.
On the Syphon side, I’ve got a few question, but I’ll go through your forum.
And thanks for the kind words !
September 26, 2010 at 17:37
You can roll your own full tile display using cglX. It basically wraps a few OpenGL calls and handles the cluster work for you. The tile systems I use dont use any interconnect fancier than 1Gbit ethernet, and you never noticed lag between screens. It might be worth checking out: http://vis.ucsd.edu/~cglx/
September 27, 2010 at 15:04
thanks for the info !
cglX seems awesome, I’ll have to look at it deeper..
January 20, 2013 at 21:45
“NASA-like setup 1024 Architecture Blog / MadMapper, Video Mapping, Quartz Composer plugins, whatever ”
was in fact a great blog post. However, if it included even more photos this should be possibly even better.
Thank u ,Sonia