Epic Optimizes Unreal Engine 5 Compilation For AMD's Threadripper CPUs

AMD
(Image credit: AMD)

In a recent blog post by AMD, the company announced that Epic Game's Unreal Engine 5, which is now in early access mode and will power a new generation of games, is now fully optimized for compilation work with Ryzen Threadripper CPUs. Epic Games VP Nick Penwarden notes that using Threadripper CPUs has allowed developers to compile code in Unreal Engine 5 much quicker than ever before. 

"Using Threadripper CPUs, we're able to compile the engine much more quickly than we could previously. That's a huge efficiency boost for all the engineers on the team. The less time they're spending compiling code, the more time they can spend actually developing features, testing functionality, and improving Unreal Engine 5.- Nick Penwarden, VP of Engineering at Epic Games. 

It's good to remember that Epic refers to compilation performance alone, which is completely different from actual core utilization in real gameplay. For example, Unreal Engine 4 can already utilize far more than 8-12 cores for compilation tasks, but most games running on Unreal Engine 4 can only use eight cores when it comes to actual gameplay performance. 

AMD is a direct partner with Epic Games, so it isn't surprising that the company has helped enable the full Ryzen Threadripper optimizations for Unreal Engine 5 code compilation tasks. These optimizations could include CCX awareness or spanning processor groups with the Threadripper 3990X, the latter of which has caused quite the challenge with existing software that doesn't fully utilize all 64 threads. 

Perhaps we could even see Unreal Engine 5 supporting core counts a full 64 cores for real gameplay. For instance, space sim Star Citizen is already being developed to utilize more than eight CPU cores. The developers of Star Citizen, CIG, have stated that the game will utilize “all available cores” once the game has been updated to a new render engine (codenamed ‘Gen12’) and swapped to the Vulkan API. The game already utilizes eight cores to the max in certain areas (on the rather old DX11 API).

In conjunction with lower-level APIs such as DX12 and Vulkan becoming widely adopted, there is a lot of opportunity for higher core count support in real gameplay. Still, AMD and Epic haven't shared that level of detail about the new engine yet. 

Aaron Klotz
Contributing Writer

Aaron Klotz is a contributing writer for Tom’s Hardware, covering news related to computer hardware such as CPUs, and graphics cards.

  • evdjj3j
    Shouldn't this benefit Ryzen also if people use it to compile?
    Reply
  • Makaveli
    lol Star Citizen

    Space X will have a base on Mars before that ever gets released.
    Reply
  • GenericUser
    Makaveli said:
    lol Star Citizen

    Space X will have a base on Mars before that ever gets released.

    I think Mars will be terraformed and fully colonized before it ever gets fully released.
    Reply
  • Soaptrail
    evdjj3j said:
    Shouldn't this benefit Ryzen also if people use it to compile?
    I was wondering that as well.
    Reply
  • hotaru.hino
    Optimizing the compiler for compilation performance doesn't mean the app it compiles gets optimized.

    This is no different than a factory reworking its processes for efficiency, but they're still making the same product in the end.
    Reply
  • alceryes
    Check out the blog post and scroll down to the video of the engine in action.
    It looks amazing!
    Reply
  • ddcservices
    evdjj3j said:
    Shouldn't this benefit Ryzen also if people use it to compile?
    The big issue is if the GAMES are written in a way to spawn more threads. There is always the issue of trying to balance what customers may have in their computers and how well the game will scale for those with more powerful computers. We already see times where those with a quad-core CPU whine because performance is too low, because the game doesn't scale DOWN for their low end machine(by modern standards where 8 core is seen as the norm).

    In a game where there are a lot of NPCs in the game environment, it would be ideal to be able to spawn one thread per NPC where each thread handles that NPC. You can have multiple threads that go to the same CPU core, but performance will drop the more there are. So, does the game have a way to reduce the number of NPCs that have a thread assigned to them? Some games, such as Cyberpunk 2077, make it obvious where the NPCs can suddenly disappear or blink out based on some game logic decision that too much is going on around the player, but that is the big problem, scale up is easy, but how to scale the game down for those with a low end computer.
    Reply