Aximmetry performance

 

Can someone explain me this issue?

Aximmetry says my machine performance are saturated but in fact I see no issues in windows monitoring...

I have Ryzen 9 5950x with NVIDIA rtx 3090


thank you in advance!!


   The Pepegas Team

 
Profile Image
Eifert@Aximmetry
  -  

Hi,

It is likely that you have energy-saving settings in your Windows or hardware driver, when there is a big difference between what Aximmetry reports and what the Task Manager reports.
This is also usually visible when there is a big difference between CPU Base Speed and Speed in the Task Manager, like this:


If you are using AMD like Ryzen, then turn off Simultaneous multithreading ( SMT ).
If you are using an Intel processor then turn off the Hyper Threading ( SMT ). And if it is Intel 12th+ generation then turn off the E-Cores (efficiency cores) too.
These settings otherwise may cause needless CPU loads on Aximmetry processes and might not be even visible in Aximmetry's CPU performance meter. And make sure your hardware doesn't overheat, which too can cause misleading performance values.

Warmest regards,

 
Profile Image
TwentyStudios
  -  

@Eifert: There are still performance discrepancies between running a scene in the Editor and running it in Aximmetry, especially with Lumen enabled. This is when comparing performance 1 to 1, with the editor running the scene in 4K and with Screen Percentage at 100%. This needs to be investigated further, since unpredictable performance can be a huge issue. 

 
Profile Image
Eifert@Aximmetry
  -  

Hi TwentyStudios,

Do you mean the difference between live sync and cooked mode? Or running the scene without Aximmetry cameras or even in the original Unreal?

Note that the Aximmetry cameras and even Unreal Editor for Aximmetry add some additional performance drain compared to vanilla Unreal. However, this performance difference is very likely much less than what The Pepegas Team experienced in this post.
And between live sync and cooked, the cooked mode should run faster.

Warmest regards,

 
Profile Image
TwentyStudios
  -  

@Eifert: No, I’m saying that there is a big drop in performance when opening the cooked scene in Aximmetry compared to running it at the same resolution in the Aximmetry UE5 editor. Aximmetry camera is added to the scene and the performance drop is extremely noticeable even before connecting any video sources, billboards or outputs in Aximmetry. In short, something isn’t right with the performance, especially when running scenes with Lumen. 

 
Profile Image
Eifert@Aximmetry
  -  

Hi TwentyStudios,

You are comparing the cooked project running in Aximmetry and the project running in Unreal Editor for Aximmetry with the Aximmetry camera added. So when you run the project in Unreal Editor for Aximmetry you set Screen Percentage at 100% and you pressed F11 for full screen. If you don't put it full screen, it will render the size of the viewport on your screen and not in the full resolution of your monitor. You also have the same FOV in both and you have the same being rendered. Also, close the Unreal Editor when running cooked projects, as the Unreal Editor drains lots of resources even when it is not in the focus of Windows.

After doing so, I see that cooked is running faster, but not much faster.
Unreal Editor for Aximmetry:

Aximmetry Composer cooked:

Of course, there are still other things that I am not accounting for here. But if you did the same you should get that it is actually running faster in cooked inside the Aximmetry Composer. If not, maybe you use an Unreal setting that runs slower in cooked? I used Lumen Global Illumination in the above example.

Note, you can do the following little edit of the Virtual Camera actor to set your camera's position in Unreal Editor:

Warmest regards,

 
Profile Image
TwentyStudios
  -  

@Eifert: Like I already described, I did exactly what you suggested to get a 1 to 1 comparison. I’m telling you that some scenes run MUCH slower in Aximmetry compared to the Aximmetry editor. This have been brought up so many times by so many people that you really need to start to take this seriously. I have seen examples where a scene can render in 4K 50p in the editor while not being able to keep up with 1080p30 in Aximmetry. I’ve tested with SM6 enabled and disabled but it doesn’t seem to make any difference. 

 
Profile Image
Eifert@Aximmetry
  -  

Hi TwentyStudios,

Yes, it has been brought up many times and we run multiple tests. In most of these cases, it is very likely that people did not set up the Unreal Editor for such a test correctly.
Especially if you see such a big difference that it runs in 1080p30 instead of 4K 50, that is likely the result of having Unreal Editor open in the background, while you run Aximmetry.


I tested again using a high-end computer with a 4k monitor and a different scene. I got similar results.
However, I realized that even this matters:
Before putting full-screen (F11) the Unreal Editor viewport on your 4k monitor, you have to put the viewport into a new window.
You can do this by first revealing the tabs by clicking on this blue corner triangle:

And then dragging the viewport tab into a separate new window:
->

And when pressing F11, you should check the output log, it should write out the resized viewport's size:

This should be very close to your desired frame size (4k).


Also, in aximmetry, you should test using the Unlimited Frame rate option:

Warmest regards,

 
Profile Image
TwentyStudios
  -  

Again, I’m of course not running Unreal in the background! Just Aximmetry is running. 

I don’t know why I would head with a separate viewport window. I just enable Game mode and then Immersive Mode, making sure the screen is set to 4K and that screen percentage is 100%. 

Why Unlimited frame rate? I want to run my project in 29.97 and the test is if Aximmetry can consistently render that frame rate without dropping frames.

This is not a matter of testing the wrong way. Beyond doubt there is a big performance hit for some scenes when running them in Aximmetry. 

 
Profile Image
The Pepegas Team
  -  

Dear Eifert@Aximmetry,

thank you for your reply!

Things are going slighlty bettere after disabling SMT but the difference between windows performance monitoring tool and aximmetry are still 8:1

At this point, I think Aximmetry only count the performance of the first core or something like that. Does anyone find lumen very heavy on CPU? There are optimized UE5 project settings that improve performance?

Any advice is super welcome thank you!! You great!


The Pepegas

 
Profile Image
Eifert@Aximmetry
  -  

Hi TwentyStudios,

The separate viewport window is for making sure that Unreal is really resizing to 4k.
You don't need to set it to Game mode. You should instead start PIE (Play In Editor):

Also, make sure you didn't change Scalability Settings, Material Quality, or you use the right Previews Rendering Level or none:


And target hardware set Maximum in the Project Settings:

You should run with an Unlimited frame rate to get an accurate reading of what is the maximum FPS the Unreal project can reach.
Otherwise, you won't really have common ground to compare the Unreal Editor and Aximmetry.
If the issue is frame drops from time to time, then there is no reason to compare Aximmetry with the Unreal Editor, as there is nothing in Unreal Editor to compare it with. Even if Unreal Editor is set to a fixed frame rate, it will drop frames from time to time without making that obvious.


Unreal Engine is a complex software with countless settings. Without finding the source of the issue, and what is different compared to other projects, we really can not be sure what is going wrong.
If you are still experiencing the performance hit, you could share it with us by sending it to sales@aximmetry.com. Or at least sharing its DefaultEngine.ini file's text.

Warmest regards,



 
Profile Image
TwentyStudios
  -  

@Eifert: My monitor is 4K, so switching to immersive mode ensures it’s rendering in 4K. When you do your performance comparisons, are you sure you have Screen Percentage set to 100% in the editor?

I know Unreal is complex and that some settings have a big impact on performance. What I’m trying to get across is that there is a DIFFERENCE in performance between the editor and Aximmetry. Not in all cases, but in some scenes. 

 
Profile Image
Eifert@Aximmetry
  -  

Hi Pepegas,

Even if there is only one core that is running at 100%, that will still limit the FPS as every rendered frame will have to wait for it.
You can make Task Manager show all cores and their loads by enabling Logical processors:


Unreal has detailed documentation on optimization: https://docs.unrealengine.com/5.1/en-US/testing-and-optimizing-your-content/
But probably there are others who can give more specific suggestions on virtual production scenes and Lumen optimization.

Warmest regards,

 
Profile Image
Eifert@Aximmetry
  -  

Hi TwentyStudios,

Yes, the Screen Percentage is set to 100%.
By the way, even the Screen Percentage written here:

Can be overwritten with Project Settings:

I guess at this point the easiest way forward is to share such a project with us at sales@aximmetry.com or on the support ticket system. Or at least sharing the project's DefaultEngine.ini file.

Warmest regards,

 
Profile Image
The Pepegas Team
  -  

Oooook will study then! ♥ thanks for your support!

 
Profile Image
TwentyStudios
  -  

@Eifert: I think I’ve narrowed down the culprit a bit. Simply adding the Aximmetry camera drops the performance of the Unreal engine scene in Aximmetry from 67 fps to 35 fps, nothing else changes. No Billboards or videos active, just purely rendering the scene. I tested this by comparing opening the scene in Aximmetry with and without the Aximmetry camera added to it. This means that running the scene in Aximmetry loses half the performance, before running the keyer, getting video input and anything else that’s required for an actual production. I hope you agree that this is totally unacceptable and needs to be addressed urgently?. I’m packing the project and sending it to support for further analysis. 

 
Profile Image
ericmarodon
  -  

I'm also experiencing strange GPU performances on the brand new machine we have here (i7-13700KF + RTX4090).

On a static scene with no video playing in virtual screen, no lumen or raytracing, everything baked and cooked, billboards off, it goes from mid 20% GPU usage to mid 50% on a regular pattern.

On a much weaker machine (i7-3770 + 1660ti) I of course get higher GPU usage on the same scene (around 64% in the same conditions), but it's much more steady (give or take 2%) and the performance gap between the two cards don't seem to add up.

 
Profile Image
Eifert@Aximmetry
  -  

Hi TwentyStudios,

You removed Aximmetry Camera from the project. And instead of seeing this in Aximmetry:

You see this:

In this case, to ensure an accurate comparison you should use the same Unreal camera actor as Aximmetry's camera blueprint uses (Cine Camera Actor). And the camera has to have the same FOV and position.
You should add a Cine Camera Actor to your map. And set its position and FOV to be the same as it was in your test with the Aximmetry Camera blueprint. And also set the Transform to be the same:

Note, you change the FOV by changing the Focal Length.
It is very important for the FOV to be the same as with the Aximmetry Camera blueprint. Lower FOV can increase performance drastically. This could be one of your culprits.

Also, you have to make the level to use that camera. You can do that with the following blueprint nodes:You can copy the above blueprint from here: https://blueprintue.com/blueprint/9_zbe2fw/

After all this, the example project that I used previously gained 2 FPS, from 29 to 31:



If you are experiencing an fps drop from
67 fps to 35 fps even after this, then there could be some kind of bug or issue that happens in your case.

Warmest regards,

 
Profile Image
Eifert@Aximmetry
  -  

Hi Eric,

Performance changing on a regular pattern could be the result of a third-party program doing calculations in the background.

You can not compare two video cards linearly, there are countless things that affect the performance in different ways. For example, just having Lumen in Unreal turned on is a huge drain on your video card even if you are rendering almost nothing.

Warmest regards,


 
Profile Image
buffos
  -  

What a great page this  https://blueprintue.com
Very very helpful!

 
Profile Image
TwentyStudios
  -  

@eifert: Are you doing the tests in 4K? In my experience, the performance difference ins much bigger in a fully (input and output) pipeline. 

 
Profile Image
Eifert@Aximmetry
  -  

Hi TwentyStudios,

I also did the tests in 4k now, I got the same results as before.
What do you mean by an input and output pipeline? Once you add the camera compound and connect it, that will add additional performance load, especially if you have 4k input that is being keyed. But this load is not related to the cooked mode or to Unreal Editor.

Warmest regards,


 
Profile Image
buffos
  -  

My question is the following.

I understand that aximmetry gets the image through the cinema camera actor.

Is it possible to get the through the normal ue output, the one we get after we press play on the unreal editor.

I do not know the results of such a decision, but it looks like performance-wise there is a /3 drop in FPS when viewing through the cinema actor.

Is it even possible?

 
Profile Image
Eifert@Aximmetry
  -  

Hi Buffos,

It is unlikely that the Cine Camera alone would consume /3 of the FPS. It is said that they are only really different in their controls of FOV and Focus. Maybe you have something turned on in the PostProccessVolume that works differently with Cine Camera cause its additional focus or FOV settings? Or you are using a different FOV?

Changing the cine camera actor to the normal camera would require lots of edits in Aximmetry's Unreal cameras.

If you want to optimize your scene and gain more FPS, then there are countless other optimizations in Unreal that you should probably consider at first.

Warmest regards,

 
Profile Image
TwentyStudios
  -  

@Eifert: me and several others are telling you that there is a big performance loss when rendering through the Aximmetry Cine camera. I’ve done my tests and I’ve confirmed it for myself. Please, please investigate this properly. If there’s a difference in the Aximmetry camera that overrides the settings in the PostProcessingVolume, this needs to be addressed. I haven’t made any changes to the Aximmetry camera actor, and follow best practices of only making those adjustment in PPV. 

 
Profile Image
buffos
  -  

@eifert

Ok. I will remove the post process volume and test performance and try to establish a baseline.

 
Profile Image
buffos
  -  

1st try:  Deleted post processing.


Unreal Engine 5: 95-102 fps
Aximmetry: 42-45fps

Remarks
For both tests, the camera was in the same position. 
Also, I have flags to stream or not images from Aximmetry. When I turn them off, no image is transmitted (but there is no practical performance gain). Maybe 0.5 fps)

2nd try: Live sync (to save some time in back and forth)

Initial fps: 37-39fps

I tried disconnecting all execute pins to see the performance impact, but all those functions have zero performance impact.

 
Profile Image
Eifert@Aximmetry
  -  

Hi TwentyStudios,

I am not sure about the Cine Camera and how it changes the PostProcessingVolume, it was one guess. Also, it is a difference between the Cine camera and the normal camera, it has nothing to do with the Aximmetry camera blueprint.

Warmest regards,

 
Profile Image
Eifert@Aximmetry
  -  

Hi Buffos,

You can send the scene to sales@aximmetry.com and I can look into it.
Note that in the previous posts, there were discussed numerous settings that can go wrong, when comparing Unreal performance to Aximmetry.

Warmest regards,

 
Profile Image
buffos
  -  

Hi Eifert.

I just sent the scene (removed the intermediate and saved folders to make it a little bit leaner). This is the version with the Aximmetry camera removed and a new cinema camera actor added and set as the main view.

What I saw, is that in the editor, there was a big fps drop, but when pressing play, the fps were once again very high.

Thank you once again for your time

Best Regards

 
Profile Image
ericmarodon
  -  

Hi Eifert,

In my case I was able to identify at least one culprit for the up-and-down performance spikes: It seems to be related to the lack of real input.

When I'm working with TEST INPUTS for instance (a simple picture) or if all inputs are OFF, the GPU usage goes wild on a regular pattern going from 20% to almost 55% and back, and I occasionally get frame drops.

Meanwhile when a camera is connected to the capture card and the input is ON, so far it gives me a steady 35% usage 25 FPS with no drops, despite being a 4K signal in that case.

It's as if Aximmetry is trying to connect to the capture card or something and freaks out periodically because it can't.

For the record, I'm using 2 Blackmagic Intensity Pro 4K.

Best,

Eric



 
Profile Image
buffos
  -  

Very interesting. I, too, only tested with test inputs! Thank you for sharing.

 
Profile Image
Eifert@Aximmetry
  -  

Hi,

We're excited to share that the latest version of Aximmetry, version 2023.2.0, has been released today!

The new version improved performance when using Unreal Engine in cooked mode. Note in most cases this is a slight improvement.

If you are experiencing a big performance decrease in Unreal, then it is likely caused by one of the Windows power saving settings, Unreal Editor running in the background, performance-heavy Unreal Project setting, or by comparing very different resolutions or quality settings between Unreal and Unreal running in Aximmetry.

To learn more about all the changes and improvements included in this version of Aximmetry, please visit the following link: https://aximmetry.com/learn/software-version-history/

Warmest regards,