Revit API Forum
Welcome to Autodesk’s Revit API Forums. Share your knowledge, ask questions, and explore popular Revit API topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Revit 2024 rendering performance drops on selection

35 REPLIES 35
Reply
Message 1 of 36
nice3point
3516 Views, 35 Replies

Revit 2024 rendering performance drops on selection

Rendering performance drops on selection. When the selection is de-selected, all is restored. This is especially evident on roofs

 

 

Also, in version 24, the hardware acceleration section of the interface is removed and always set as software.

 

Revit 2023:

nice3point_0-1680805417224.png

 

Revit 2024:

nice3point_1-1680805460653.png

 

Are there changes planned on this issue?

35 REPLIES 35
Message 2 of 36
jeremy_tammik
in reply to: nice3point

I'll take a look asap.

  

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 3 of 36
jeremy_tammik
in reply to: nice3point

Dear Roman,

 

Thank you for noticing and reporting this and your sample video.

 

Sorry to hear about this.

 

I logged the issue REVIT-205596 [Revit 2024 add-in form rendering performance drops with a roof element selected] with our development team for this on your behalf as it requires further exploration and possibly a modification to our software. Please make a note of this number for future reference.

 

You are welcome to request an update on the status of this issue or to provide additional information on it at any time quoting this change request number.

 

Do you think it might have anything to do with WPF?

 

Best regards,

 

Jeremy

 

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 4 of 36
nice3point
in reply to: nice3point

I've run profiling with and without selected roof, no keyboard or mouse was pressed during the process, the results are +- the same and the .Net code with WPF doesn't cause any problems. Profiling result in attached files

Message 5 of 36
nice3point
in reply to: nice3point

But the situation changes dramatically with RevitLookup running, the Main thread is severely overloaded and running all the time. Check out the scrolling, it becomes too slow when spinning mouse wheel

 

 

Jeremy, thank you so much for your feedback 😉

  

Message 6 of 36
jeremy_tammik
in reply to: nice3point

Dear Roman,

 

Thank you for your further analysis.

 

Partial feedback from the development team on the issue REVIT-205596 [Revit 2024 add-in form rendering performance drops with a roof element selected]:

 

Regarding the removal of the "Use hardware graphics acceleration if available" option in the Visual Experience section, this is By Design as mentioned in the release notes for Revit 2024:

 

> "Fixed instability in the Revit UI by removing the option to turn on Use Hardware Acceleration in the User Interface options and internally force it off."

 

Release notes available here:

 

https://help.autodesk.com/view/RVT/2024/ENU/?guid=RevitReleaseNotes_2024release_Enhancements_html

 

This does not affect the overall performance of Revit, which is handled by the option available at File > Options > Hardware> Use hardware acceleration, which should be checked.

 

Some background about this removed option can be found here:

 

https://www.revitforum.org/node/447352#post447623

 

Best regards,

 

Jeremy

 

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 7 of 36
nice3point
in reply to: nice3point

Thanks Jeremy) In that case we will keep this option in Lookup, as Revit does not use animations and other smooth transitions and visually it is almost invisible compared to third party plugins. All that remains is to understand the reason why the Main thread is 100% loaded with the selected roof

 

I think the problem from the https://www.revitforum.org/node/447352#post447623 forum is only relevant for version 2023.0. I haven't seen it in earlier and later builds, I don't think it's related to hardware acceleration if the removed option only switched RenderOptions.ProcessRenderMode of WPF engine. But that's my opinion

Message 8 of 36
nice3point
in reply to: nice3point

By the way, the IExternalEventHandler is not triggered when the roof is selected, instead switching the placement from the face to the working plane and back. There is no problem on other Revit elements. Issue: https://github.com/jeremytammik/RevitLookup/issues/155
 
nice3point_0-1682078200766.png
Message 9 of 36
jeremy_tammik
in reply to: nice3point

Dear Roman,

 

Thank you for your further analysis and new input on the external event handler.

 

The development team focus very specifically on very specific issues.

 

Adding something new 'by the way' to an existing issue will not work at all.

 

Is it the exact same issue, or is it a different issue?

 

Even if it is only slightly different, and even if it is related, I see little hope of grabbing their attention for more than one very specific aspect at a time.

 

So, if you have uncovered a new problem with external events, I think it would be best to raise a new separate ticket for that.

 

So, please clarify: is the external event issue the exact same problem that you originally reported and we captured in REVIT-205596 [Revit 2024 add-in form rendering performance drops with a roof element selected]?

 

If yes, I will add the new information there.

 

If no, please let us submit a new ticket for the new problem.

 

For that, I would suggest describing a completely new and completely unrelated complete minimal reproducible case that they can use to reproduce, analyse, debug and test the new problem, unrelated to the previous ticket.

 

What do you think?

 

Thank you!

 

Best regards,

 

Jeremy

 

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 10 of 36
nice3point
in reply to: nice3point

All the problems I have described have to do with the chosen roof:
1. Rendering performance drops. As it turned out, it's related to 100% load of Main thread
2. IExternalEventHandler.Execute doesn't work instead Revit switches placement from the face to the working plane and back

 

Yes you can start a new ticket if the previous one discussed hardware acceleration since it was not the main problem.

 

Sorry for the confusion, I'm just describing the strange behaviour I've noticed and I can't see the ticket itself and the developers discussion as it's closed to the public.

Message 11 of 36
jeremy_tammik
in reply to: nice3point

Dear Roman,

 

The development team completed their analysis of the issue REVIT-205596 [Revit 2024 add-in form rendering performance drops with a roof element selected] and decided a code fix is required.

 

They opened a new ticket for the code fix, REVIT-206157 [Revit 2024 add-in form rendering performance drops with a roof element selected]. Please make a note of this number for future reference. You are welcome to request an update on the status of this issue or to provide additional information on it at any time quoting this change request number.

 

I have not yet been able to address the other issue you reported.

 

Cheers,

 

Jeremy

 

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 12 of 36
jeremy_tammik
in reply to: nice3point

Looking at your description of the problem with the event handler when the roof is selected, I don't quite understand how to reproduce, and what steps to specify to the development team for their analysis. Where does the external event come from? Is it built into RevitLookup? Is RevitLookup set up so that the snoop form is populated by an external event? And that event does not trigger on roof selection, so the form is not populated? And the external event and snoop form population works fine for all other element categories? Can you confirm, please? Then I can raise a new ticket for this issue. Thank you!

  

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 13 of 36
jeremy_tammik
in reply to: nice3point

Dear Roman,

 

Thank you for your report and sample video with the external event problem.

 

I logged the issue REVIT-206162 [IExternalEventHandler.Execute not triggered when roof selected] with our development team for this on your behalf as it requires further exploration and possibly a modification to our software. Please make a note of this number for future reference.

 

Best regards,

 

Jeremy

 

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 14 of 36
jeremy_tammik
in reply to: nice3point

The devteam asks: I am contacting you in regards to REVIT-206157 bug you added for the “Selection” feature. We discussed in the team today and it would be very helpful for us if you could provide us some more information or a sample of how the Revit selection in this case triggers the performance issue, or how the add-in interacts with the Revit API in the slowed down workflow described. While the issue may very well be from Revit, it would be hard for us to properly investigate the root cause without knowing the add-in itself, and it could speed up our investigation and potential bug fix in this case. Thank you!

    

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 15 of 36
nice3point
in reply to: jeremy_tammik

REVIT-206162

Hi Jeremy, about the external event here is a video and example solution. The event only triggers when the roof is de-selected. It works fine on the other elements

 

 

 

Also, the fact of chaotic placement switching should help developers analyse the problem

nice3point_0-1682430917828.png

 

Message 16 of 36
nice3point
in reply to: jeremy_tammik

REVIT-206157

Okay, removing the mention of RevitLookup, I was able to replicate the problem in Revit itself. For example the Symbol selection. When selecting the wall size, everything seems to be fine, the interface works smoothly. When selecting the roof size, the user interface becomes jerky and slow. The profiler shows that the Main thread is 100% loaded and all calls are to RevitDB.dll, DesktopMFC.dll, RevitMFC.dll

 

nice3point_0-1682432524129.png

 

Frame graph on wall selection:

nice3point_0-1682433268647.png

Frame graph on roof selection:

nice3point_1-1682433287804.png

 

 

 

 
 

 

 

Message 17 of 36
jeremy_tammik
in reply to: nice3point

Added this information to REVIT-206157 [Revit 2024 add-in form rendering performance drops with a roof element selected].

  

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 18 of 36
jeremy_tammik
in reply to: nice3point

The development team reply to REVIT-206162:

  

The earliest affected version is not the same as the version in the description. The sample model is for Revit 2023. Is it an issue for both Revit 2023 and Revit 2024?

  

(jeremy: I guess no)

  
I have tried the same workflow using both Revit 2023 and Revit 2024, and RevitLookup downloaded from https://github.com/jeremytammik/RevitLookup/releases/tag/2024.0.3 . I cannot reproduce the same problem as described above. Here is a gif of what I got using Revit 2023:

  

  • 3555730_revit_206162.gif

    

The roof attribute can be correctly obtained.

  
There are some differences between the workflow I use and the one shown in the video.

  
The UI entrance of "Snoop Selection" is different. I could not find the button under the Modify Tab. I saw this is a new feature from the public repository.

  
The sample project I use might be different.

  

Could you provide the RevitLookup add-in file and the sample project file?

  

Jeremy: I have not yet shared the non-RevitLookup workflow with them. I will do that now.

  

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 19 of 36
jeremy_tammik
in reply to: nice3point

P.S. I answered: 

  

Thank you for taking a look. The problem only appears in Revit 2024. The sample file is from Revit 2023, but that is irrelevant. Here is a video and example solution defining its own external event, so there is no need for RevitLookup at all:

 

  • 2023-04-25_video_2.mp4
  • revit_addin.zip

  

The event only triggers when the roof is de-selected. It works fine on the other elements.

  

Also, the fact of chaotic placement switching should help developers analyse the problem.

  

I hope that captures the gist of it.

  

Jeremy Tammik Developer Advocacy and Support + The Building Coder + Autodesk Developer Network + ADN Open
Message 20 of 36
nice3point
in reply to: nice3point

I have checked now on Revit versions 2021-2024, the situation is the same. Also the external event is not called. Tested on pure Revit without any third-party plugins. Yes, your gif does look good, but it was @ahmadeltobshy who first pointed out the issue, so it's not just me who has the problem https://github.com/jeremytammik/RevitLookup/issues/155

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Rail Community


Autodesk Design & Make Report