Maniphest T96003

Geometry nodes related severe performance penalty with file upgraded from previous version of blender - symptoms disappear after disabling and re-enabling the geometry node modifiers.
Closed, Resolved

Assigned To
Germano Cavalcante (mano-wii)
Authored By
Mr Chocolate Bar (WillyWonka)
Feb 24 2022, 12:38 AM
Tags
  • Geometry Nodes
  • BF Blender
Subscribers
Diogo Valadares Reis dos Santos (DiogoX2)
Germano Cavalcante (mano-wii)
Mr Chocolate Bar (WillyWonka)
Pratik Borhade (PratikPB2123)

Description

System Information
Operating system: Microsoft Windows 11 Pro - 64-bit - Version=10.0.22000

┌────────────────────────────────────────────────────────────────┐
│ * Hardware Information:                                        │
│   - GPU: NVIDIA GeForce GTX 1060 6GB/PCIe/SSE2                 │
│   - GPU Driver Version: NVIDIA Corporation 4.5.0 NVIDIA 511.79 │
│   - CPU MaxClockSpeed=3187                                     │
│   - CPU Name=12th Gen Intel(R) Core(TM) i9-12900K              │
│   - CPU NumberOfCores=16                                       │
│   - Total System RAM: 34.088476672 GB                          │
└────────────────────────────────────────────────────────────────┘

Blender Version
Broken: 3.1.0 ec5bbebf3ee1
Worked: 3.0.0 f1cca3055776

Blender Executable Location: C:\Users\olliv\Desktop\Olliver\programs\Blender\blender-3.1.0-beta+v31.ec5bbebf3ee1-windows.amd64-release\blender.exe

Short description of error
So today I encountered a bug where a blend file first created in 3.0.0 f1cca3055776 which was upgraded 3.1.0 saw severe performance issues related to a specific set of geometry node modifiers.

The symptoms would only appear if I was either selecting objects in the viewport, was in solid view or wireframe view.

The symptoms would disappear by disabling and again enabling viewport visibility for a set of geometry node modifiers and no symptoms seem to re-appear after restarting the blend file afterwards if you save your file after enabling/disabling the modifiers.

To demonstrate (Sorry in advance for the lengthy video) :

To give some history on the file, it was first created in Blender 3.0.0 f1cca3055776 (build hash) where I created the geometry node trees and modifiers that glitched out. I believe the bug appeared at first when I opened the file in 3.1.0.
So if I were to make a guess based on that, hence my issue title as I believe the issue could be caused by some form of geometry nodes related cashing that gets reset once you disable/enable viewport visibility. If this is the case, an appropriate fix would probably be to on file open, check if the file was last saved with the same blender version and if it wasnt reset the cache).

NOTE: however that Im mostly guessing that this was the cause here, its perfectly possible that the issue started appearing for other reasons 😅 So take my words with a grain of salt.

Unfortunately I dont have any 3.0.0 copy of the file on my disk anymore, so I can not experiment to see if the issue always re-appears when opening a 3.0.0 file in 3.1.0

Exact steps for others to reproduce the error

  • Download the blend file attached
  • On Blender 3.1.0 Beta, open the attached file
  • Switch to solid view.
  • Check the performance by selecting some objects

And to "fix" the issue, select the wireframe cube object in the center or your viewport and disable the modifiers, then re-enable them.

The issue may seem insignificant for some as its easily fixed by disabling/enabling your modifiers, but as an unknowing end user it was difficult for me to figure out that this particular modifier was the cause.

Event Timeline

Mr Chocolate Bar (WillyWonka) created this task.Feb 24 2022, 12:38 AM
Mr Chocolate Bar (WillyWonka) updated the task description.Feb 24 2022, 12:46 AM
Mr Chocolate Bar (WillyWonka) updated the task description.
Pratik Borhade (PratikPB2123) added a subscriber: Pratik Borhade (PratikPB2123).Feb 24 2022, 7:07 AM
Pratik Borhade (PratikPB2123) added a comment.Feb 24 2022, 7:20 AM

Hi, Thanks for the report. I simplified your file and I think issue is related to GN generated attributes: T93440: Viewport performance drops drastically after switching from atributte visualization to solid view
Will close this as duplicate. Feel free to comment if there is misunderstanding. I'll reopen the report in that case.

Mr Chocolate Bar (WillyWonka) added a comment.EditedFeb 24 2022, 8:35 AM
In T96003#1313198, @Pratik Borhade (PratikPB2123) wrote:

Hi, Thanks for the report. I simplified your file and I think issue is related to GN generated attributes: T93440: Viewport performance drops drastically after switching from atributte visualization to solid view
Will close this as duplicate. Feel free to comment if there is misunderstanding. I'll reopen the report in that case.

Thanks Patrik. I dont seem to get any performance penalty related issues with the blend files provided in that issue - at least not with my copy of 3.1.0. Also, I am not using any geometry node related attributes in the node tree causing the issues (so if its related, then its related to GN generated attributes that automatically generates)! In fact I dont get any performance downgrade in the file you attached in this issue either! Downloading my own file however - again displays the very same symptoms. Interestingly I dont see any performance issues if I try opening the same file in 3.0.0

This is the node tree of the modifier causing the issue (as you can see, unlike the node trees in the other issue, Im not using any attributes) :

Pratik Borhade (PratikPB2123) reopened this task as Needs Triage.Feb 24 2022, 9:31 AM
Diogo Valadares Reis dos Santos (DiogoX2) added a subscriber: Diogo Valadares Reis dos Santos (DiogoX2).EditedFeb 24 2022, 3:40 PM

I feel like most of the lag is being created by the realize instances, if you mute that part the viewport still a bit laggy but much less than with the realize instances, It just don't make sense why it doesn't lag on eevee

Also, there are not attributes on the geometry, but there are attribute nodes in the shaders, I have absolutely no clue where the attributes are comming from(in fact the attribute nodes are returning nothing), but they are also the reason why the viewport is lagging, which is the same way T93440 is happening

probably the problematic node may be the uvmap being called from the attribute node instead of the own UVMap node(I'm gessing this is necessary in this case because after realizing the instances, the object loses the UVMap if its called from the UVMap node)

If you delete the attributtes nodes from the shader, then reload the geometry nodes you will not get the laggy viewport anymore

Philipp Oeser (lichtwerk) added a project: BF Blender.Mar 10 2022, 9:52 AM
Germano Cavalcante (mano-wii) added a subscriber: Germano Cavalcante (mano-wii).Mar 10 2022, 3:24 PM

It is preferable to follow the bug report convention as described in submission template and guidelines.
So developers familiar with the template will know better where they want to look for specific information.
I will edit and description...

Germano Cavalcante (mano-wii) updated the task description.Mar 10 2022, 3:29 PM
Mr Chocolate Bar (WillyWonka) added a comment.Mar 10 2022, 3:31 PM
In T96003#1320337, @Germano Cavalcante (mano-wii) wrote:

It is preferable to follow the bug report convention as described in submission template and guidelines.
So developers familiar with the template will know better where they want to look for specific information.
I will edit and description...

Good initiative 👍Looks better now indeed

Germano Cavalcante (mano-wii) closed this task as Resolved.Mar 10 2022, 3:37 PM
Germano Cavalcante (mano-wii) claimed this task.

I reproduced this bug in the latest official release, but not the latest daily build, so it appears the bug has been fixed already.

Please try the latest daily build: https://builder.blender.org/download/

If the problem persists, please let us know so we can re-open the report. Don't forget to mention the specific version you tested again.