#(IN-52428) Entities Graphics 1.0.14 is insanely slower than 0.51.1

1 messages · Page 1 of 1 (latest)

cedar sleet
#

IN-52428
The performance of Entities Graphics 1.0.14 is insanely slow which is 600 ms+ is around 37x+ slower than 0.51.1 version which is 16 ms at 5/12 stress test scene at 1.0 project. I setup all slow scenes at 1.0 project and same set of scene at 0.51 project and attach with this bug report together for official to compare side by side. Tested with Mi 9T Pro (Snagdragon 855) that it's solid 16ms for almost all the scenes at 0.51 project (i.e. 1/11, 3/11, 4/11, 6/11, 8/11, 9/11, 11/11 scenes) but at 1.0 project all scenes are extremely slow. From my further testing and observation, looks like it's caused by Unity 2022.3 engine brg plus vulkan and opengl regression. I believe the regression is there since 2022.2.0f1 up until latest 2022.3 release. At 2021.3.29f1, it's able to get solid 60 fps for most of scenarios i.e. camera far from scene or super near to scene and will drop certain amount of fps when camera near to certain distance but at 2022.3.7f1 with vulkan is insanely slow no matter which camera distance but at opengl when camera goes quite far or goes super near to visual entities can get solid 60fps but still not as fast as 2021.3.29f1 yet. I would like official to fully address this performance regression and make it much faster than 0.51 release at Unity 2023.3 release since I'm going to upgrade project to Unity 2023.3 once it's released.

wet whale
#

This is being investigated. There shouldn't be any intentional changes between the two versions that could explain a difference this large, but it is of course possible that there is some kind of bug or other problem.

cedar sleet
wet whale
#

To clarify: you were testing on Android with Vulkan?

cedar sleet
wet whale
#

GLES can sometimes be faster on some devices, and slower on others, as both the shader code is different, and the shader compiler is different.

#

Usually the difference between the two is not large, but there might be some outlier devices, especially if they are older and have poor Vulkan drivers.

cedar sleet
#

So basically 0.51 with Vulkan completely beats 1.0 with Vulkan and OpenGLES at same snagdragon 855 phone

wet whale
#

That sounds like some kind of serious bug, since the shader code shouldn't have changed that much.

cedar sleet
#

Ya. Let me know when u found the culprit. I would like to know what make it so slow?

wet whale
#

It seems there may be a bug in 2022.3 and later which causes Unity to limit instance counts to 1 on some hardware on Vulkan. This could certainly cause both CPU and GPU performance problems in the kind of scenes that are supposed to have a lot of instancing.

cedar sleet
wet whale
#

OpenGLES uses completely different code paths, so it's not directly comparable to begin with.

#

It has much more severe batch size limits due to uniform buffer maximum size, and the GPU performance characteristics are different because it uses UBOs instead of SSBOs.

#

On some phones it's slower, on others it can sometimes be faster.

#

The difference should not be big, however.

cedar sleet
wet whale
#

It should be roughly the same speed or possibly slightly faster, since we did some shader side optimizations.

#

But there shouldn't be a big difference.

#

This kind of heavily instanced scene should be completely GPU bound, and the shader has not changed much.

cedar sleet