Search Unity

Video Unity Performance Problems with Multiple Monitors, Multiple GPUs

Discussion in 'Audio & Video' started by MarkeeDragon, Apr 25, 2019.

  1. MarkeeDragon

    MarkeeDragon

    Joined:
    Apr 15, 2019
    Posts:
    1
    I am a content creator and business partner with multiple game publishers. I am having serious performance issues with Unity games and the devs have tried to assist me but they always come back to limitations or issues with Unity. So I am asking for help here in the hopes that we can find some answers.

    The 3 Unity games I support are Shroud of the Avatar, Crowfall and Legends of Aria. I do content creation that drives sales for the games. But I have for years had issues with poor frame rates. I have 64 cores CPU, 64gb memory and a Titan XP as well as a GTX 980ti for video cards. Yet at 1080p on medium graphics I struggle to get 30 FPS. I usually hover in the mid 20s. Causing a eye strain on video and live shows. These issues are not present with other non Unity games.

    I have tried to tackle this problem many times over the past few years with no success. But there is one area I do have success. That is with my laptop. My laptop has a GTX 770m GPU and the games run great on it. I get good frame rates. Always above 30fps and usually in the 50+ range even on full graphics. So I know the games can run well. But what kills me on this is that is a 4 year old laptop and my monster machine for the games runs like crap.

    So here is where I am at. I have worked with all 3 game publishers on this issue. All 3 have tried to help me with this. Shroud of the Avatar has told me that the performance issues could be to do with object tracking and that only one CPU core is doing this. Thus causing a bottleneck and lowering FPS. I can attest that Unity games do not use my GPU to it's fullest. My GPU runs at 20 to 35% usage with Unity games. Whereas other games I commonly push things into the 80 to 90% range or more when I set the FPS to unlimited.

    With Crowfall they tell me that Unity wants the game on the boot monitor and that this monitor should also be the primary. They also have tested on a Titan XP and tell me they get blazing FPS as long as you meet these conditions and that it does not work well when not played on the boot / primary monitor and not in full screen. (They note that their Titan XP machine is single GPU.)

    I have tested this. I disconnected all monitors from the system except 1. Run the games and the FPS still is not good. I suspect that the second GPU in the system might be an issue. But I have not pulled it and tested again.

    To be the boot monitor. When booting a system the bios looks for monitors in an order that is usually the lowest tech requirements first. Meaning the bios boot order is HDMI, DPI then DP. I have not found any computers that allow you to set the boot monitor to force something like the DP to be primary. The only way to force this is to have it be the only monitor or all monitors are DP.

    To do live shows OBS and Xsplit do not have options to select what GPU is used by the software. They always use whatever GPU has the "Windows Primary" monitor. This is why I have a second GPU in my system. I boot the machine. Change the primary monitor to the GTX 980ti. Start Xsplit. Then change the primary monitor again to my Titan XP. Then start the games. This ensures a smooth broadcast or recording. This is required even when using the CPU for encoding. Don't ask me why but if you max out the GPU your broadcaster is using it kills the performance of the broadcast and you drop frames.

    The reason I mention the second GPU is because it is really needed to do content on a single machine. Otherwise I have to use a second machine for the broadcasts and recording. This adds other issues of it's own.

    I am hoping for one of two things here. A solution or something I can try to fix this issue. Or someone official to just tell me that it is not possible with Unity to get the performance I need with this machine. If that is the case then I'll build a dedicated single monitor / single GPU system that is just for Unity games. Seems silly to need a dedicated machine for this but I am really at that point. It is not an option for me to not support these games.
     
  2. janoking

    janoking

    Joined:
    Sep 16, 2019
    Posts:
    1
    With Crowfall they tell me that Unity wants the game on the boot monitor and that this monitor should also be the primary. They also have tested on a Titan XP and tell me they get blazing FPS mouse as long as you meet these conditions and that it does not work well when not played on the boot / primary monitor and not in full screen. (They note that their Titan XP machine is single GPU.)