Reputation: 1257
I am developing a processing program that uses 12 full HD screens aiming to display a 7680x3240 video, but I am seeing that the performance is really bad, as I am getting something between 7 and 9 fps when playing those videos.
Testing with a lower resolution like 2000 x 3240 I am getting values between 65 and 100 fps, and with a medium resolution of 4000 x 3240 I am getting values between 12 and 14 fps.
As technical details, I am using two AMD FireProW600 and Ubuntu 12.04 LTS, with crossfire deactivated to enable the use of Xinerama.
I can see there's a huge gap in performance. Is there anything that I am missing to improve the fps when using all the screens?
Upvotes: 1
Views: 109
Reputation: 51857
Using multiple machines I recommend using Daniel Shiffman's Most Pixels Ever project and for a single computer, multiple screens scenario have a look at Texas Advanced Computing Center from UT Austin's MassivePixelEnvironment library.
You might also want to check how you're generating these 12 HD screens and also, in case they are pre-rendered or even static images, what's the fastest way to display them on your target screen(s)
Upvotes: 1
Reputation: 42174
Processing uses a single thread to do all the rendering and event stuff.
You could try multi-threading anything you can. Or more likely, you'd be better off having different Processing sketches for each screen- maybe connected by a Java program for communication between them.
Upvotes: 1