Isadora, 2013 Mac Pro, dual GPUs and CPU isssues
-
Hi Don,
OK well it will be interesting to hear about the comparison. There has been a noticeable move to the PC/Nvidia platform and it is entirely understandable.
Best Wishes
Bonemap
-
Bonemap and Jacques, thank you for the information on using Isadora under Windows. I am now considering this option as my tests on a 3.5 GHz Mac Pro with a D700 GPU did not provide a significant increase over a Mac Pro with a D500. I would greatly appreciate if you or another user could clarify my findings regarding using Isadora under Windows:
1. An Isadora patch created under OSX can be opened in Isadora on a Windows computer, only the container and codec for the video files must be changed.
2. Continuous multi-channel OSC data can be sent between a Mac and a PC with no problems. (Mac->router->PC)
3. The best performing/suggested video format for Windows is the AVI container using the HAP codec. (Is it possible to convert a ProRes MOV file to a HAP AVI file on a Mac, or can this only be done on the Windows side? I have no video software for Windows.)
4. I am considering a Dell with a Xeon E-2146G, 6 Core 3.5 GHz CPU, 16 or 32 GB RAM, GeForce GTX 1080 (8GB), NVMe SSD , and 460 W power supply. I read other Isadora users are using this GPU or is there something better? Do you think would this setup outperform the 3.5GHz Mac Pro with the D700 GPU?
Many thanks!Don
-
1. An Isadora patch created under OSX can be opened in Isadora on a Windows computer, only the container and codec for the video files must be changed.
Yes this works fine, as long as the versions are matching, or the move is one directional.
2. Continuous multi-channel OSC data can be sent between a Mac and a PC with no problems. (Mac->router->PC)
OSC and networking work great on PC and MAC
3. The best performing/suggested video format for Windows is the AVI container using the HAP codec. (Is it possible to convert a ProRes MOV file to a HAP AVI file on a Mac, or can this only be done on the Windows side? I have no video software for Windows.)
At the moment this is a little difficult, depending on the content and resolution high data rate H264 may be suitable. Otherwise the conversion is a little annoying.
4. I am considering a Dell with a Xeon E-2146G, 6 Core 3.5 GHz CPU, 16 or 32 GB RAM, GeForce GTX 1080 (8GB), NVMe SSD , and 460 W power supply. I read other Isadora users are using this GPU or is there something better? Do you think would this setup outperform the 3.5GHz Mac Pro with the D700 GPU?
The 1080 is great, you may find a cheap 1080TI these days and it is worth the extra, either are orders of magnitude better than the D700. The CPU is also great, and yes this setup will leave your trash can in the dust.
-
Great, thank you Fred, I don't know what you mean when you wrote "the move is one directional." Do you mean only from a lower to higher version and between same versions? I will occasionally move the patch between osx and windows in both directions, always using 2.6.1.
regards,
Don
-
@dritter once a patch is opened on a later version and saved it cannot be opened on an earlier version.
-
thank you Fred.
-
Fred, I just read your discussion about 5 outputs from a GTX 1080
https://community.troikatronix...
I am unclear what is the answer to your question. Does “primary display” refer to the Isadora control screen or the output from a stage. I will be using a GTX 1080 in a PC which also has an output from an Intel UHD Graphics 630. Do you know if that output can be used for a control screen/programming for Isadora while 4 stages come out through the 4 outputs on the GTX 1080.
many thanks,Don
-
@dritter said:
https://community.troikatronix...
THis would mean you are using multiple GPUs and there are some hard limitations and drawbacks, I would suggest using an MST hub with the Nvidia card and disabling the onboard GPU.
-
-
Fred,
Is it typical for an onboard GPU to turn off automatically if another video card is installed in a PCIe slot, or must it be disabled manually? If no video signal is present from the onboard video output, can I assume the onboard GPU is disabled?thank you,
Don -
Hi Don,
Just thought I would mention the result of testing my similar patch running 45 x 3D players with Kinect 2 skeleton OSC data through a Mac Pro (2013) AMD D500.
With 6 individual displays each at 2560 x 1446 (2 x TH2Go) and achieving over 48 FPS. The patch is available through this post from a couple of years ago. I would say the big difference is going to be the number of vertices in the 3ds files used. The open source Meshlab is the best option for 'decemating' 3D files to reduce vertices without deforming the original shape.
best wishes
bonemap
-
@dritter You can eiyher just not use it (dont plug a monitor into it), disable it in the Bios, (takes 5 seconds) or use it but beware of the problems and limitations. I think if you only use it as a control screen (and dont use it at all for stage previews or showing media that is also going to the actual video card) you will also have less problems. There are a few threads on using multiple video cards with Isadora on this forum. You can try your patch with and without and choose your config or stability.
-
Bonemap, thanks very much for your suggestions. I appreciate your help. I will look at your other Kinect_Isadora_Patch and try Meshlab. I spent a few hours yesterday trying to use your method from Geometry_Groups.izz patch, but have not yet been able to move my geometry smoothly.
all the best,
Don -
@fred
thank you Fred, I am still working on a solution with the Mac Pro, but a new PC with the GTX10180 will arrive tomorrow. This project is only using three HD video projectors, so I can use the 4th output from the GTX1080 as a control screen. The Isadora patch currently uses a 3840x1080 stage preview stage with Syphon before splitting it into three stages for the projectors, so it appears using the built-in video output for a control screen is not an option.The three video projectors for development are now running at 1920x1080, but this will change to 1920x1200 when I connect to the large projectors. I have never used an MST hub, but I have now read about it. Is it correct that I can attach an MST hub to a displayport on the GTX1080 and get two independent 1920x1080 signals, and then I can drive 4 HD projectors and one control monitor?
many thanks,Don
-
@dritter Yes the MST hub will appear as separate monitors that come from a single disaplay port output
-
Thank you Fred, I will try it. I now have the PC and have been working on it all day. Unfortunately I have many problems, which I will post in two minutes.
-
@dritter said:
@fred
@bonemapFred and Bonemap,
After 24 hours of trouble-shooting, I was able to get my Mac-Isadora patch working on a 3.5GHz 6-core PC with a GTX1080ti GPU. In one mode of playback, the patch plays 90 3D texture mapped objects, 90 3D particles (each with a particle count of 50) and 6 3D Model particles (each with a particle count of 15), all controlled with live xyz data from 3 Kinects and composited onto a 3840x1080 video (Prores or MP4) that output to three mapped and blended video HD projections. The maximum frame-rate for the PC with this configuration was 18.7, and the Mac Pro with a Radeon D700 was 11.4. Comparing various tests with this setup, the PC was 45-79% faster than the Mac Pro, but the Mac was much more stable. Does this seem what you expected?
Sincerely,
Don
-
Hi Don,
It is really great that you have done this comparison on your particular set of variables, actors and processes as it is very close to the kind of work that I am also developing in Isadora. I believe that you are being very ambitious with the amount of realtime data processing being attempted and I would say that getting a frame rate around 18fps is a great and encouraging result. There is no question that the Nvidia GPU is superior for purpose.
I would be interested to hear how the patch set-up performs over time, particularly if the amount of OSC data creates a bottleneck and performance issues (other than fps) become a factor. I am experiencing something happening that contributes to a slow down of the OSC data that is not associated with frame rate. The issue only occurs after the system has been running for some time.
Thanks for posting about your experiences with the development of your work. There are numerous comparative reviews of AMD vs Nvidia mostly focused on gaming performance and the Nvidia gpu's are clearly outperforming the AMD graphics for realtime rendering. With a new series of very expensive cards including the Nvidia GeForce RTX 2080 Ti, the gap in performance and cost appears to be widening further still.
Best WIshes
bonemap
-
@bonemap
Hello Bonemap, thank you for you various comments and for sharing you patches. They were very helpful. Good luck with you projects.
sincerely,
Don -
@dritter good to hear you made some progress. I was thinking about @jhoepffner 's reply regarding vertices and I had a chance to do some checking and reading. I although vertices are computed on the CPU they are then uploaded to the GPU. For a 3D scene the rendering system then does raycasting on a per vertex basis to calculate what would be seen in a 2D perspective of your 3D scene. The more vertexes the more power needed, and the more time needed (= a lower frame rate). This is such a thing that game developers have a vertex budget for characters and scenes. We are not using a game engine, but the pipeline for showing 3d models is exactly the same. Here is one of many articles about optimising assets and scenes for the GPU
https://docs.unity3d.com/Manua...
Optimisation of assets is a very serious task and, done well makes the difference between a playable game and something that eats frame-rates for no reason. Done well the optimisation will not look any different. It is just that when creating a model (mesh) artists will use settings and tools for creating that often have many extra vertices that are not needed to show the shape you want, many extras are made using bending tools and uniform mesh sizes. However when it is time for the GPU pipeline for playback we do not need them. The same can be applied to your work with Isadora.
I would guess you can get a lot more power out of your system (considering what I have seen the 1080ti do) by optimising your models, and reducing the number of vertexes as much as possible. You can see some hints here https://help.sketchfab.com/hc/...but in general mesh labs decimation tool can be the first thing to try.
With a bit of work I am sure you can push past 25fps or higher.
And an edited note: power of 2 texturing is also much more efficient, even if it means a larger texture file. This means the dimensions of your texture should be powers of 2, like 128, 512, 1024 etc. This can really reduce the load on the GPU as well.