Search Issue Tracker
Active
Under Consideration for 6000.4.X
Votes
0
Found in
6000.0.72f1
6000.3.13f1
6000.4.2f1
Issue ID
UUM-140868
Regression
No
Excessive memmove calls on the render thread and performance drop when using GraphicsBuffer.SetData()
How to reproduce:
1. Open the attached “IN-135569“ project
2. In the top menu, click (Sparrows > OTS > "Reimport all models")
3. Open the "Scenes/Init" scene
4. Enter Play Mode
5. Open Instruments (Cmd + Space, type "Instruments")
6. Select the "Time Profiler" template
7. In the target dropdown, attach to the running Unity process
8. Click Record for 10 seconds, then Stop
9. Observe the “Heaviest Stack Trace by Weight“ section
Actual result: _platform_memmove dominates the render thread (10.14s out of 12.20s in a 29s capture)
Expected result: _platform_memmove is not the dominant function on the render thread
Reproducible with: 6000.0.55f1, 6000.0.72f1, 6000.3.13f1, 6000.4.2f1
Could not test with: 2023.1.0a10 (Rendering API errors), 6000.0.40f1 (Could not get game to render), 6000.5.0b3, 6000.6.0a2 (Rendering API errors)
Reproducible on: macOS 26.4 (M1 Max)
Not reproducible on: Windows 10
Note: Using the Unity Profiler (Window > Analysis > Profiler), the render thread is ~40ms with matrix upload enabled and drops to ~5ms when disabled via (MacOsBug > Disable Matrix Upload)
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Active quality level set on a new Universal 2D project is not the default quality level when creating a new project
- Inspector Open button does nothing when navigating to a different folder with a locked asset
- Pre-generated XML serializers fail to deserialize types that use polymorphism when the Player is built with the IL2CPP scripting backend
- Editor crashes with error "Failed to present D3D11 swapchain due to device reset/removed" and Player freezes when rendering a particle system while using modified URP package on DX11
- Crash on Scripting::LogException when async HTTP callback executes after scripting domain teardown
Add comment