Page MenuHome

T78995: Enable keylist threaded drawing.
ClosedPublic

Authored by Jeroen Bakker (jbakker) on Aug 11 2021, 4:57 PM.

Details

Summary

This enabled multithreaded building of the keys that needs to be drawn in the timeline (and other action editors).
The patch should be applied on top of D12052.

Test file is a adaptation of the file found in T78995: Poor performance in Timeline, Dope Sheet, etc when at the top of the editor.. It enabled the onion skinning to make sure that it still works.

On my system AMD Ryzen 3800 it is can get 8 frames per second.

Diff Detail

Repository
rB Blender
Branch
master
Build Status
Buildable 16365
Build 16365: arc lint + arc unit

Event Timeline

Enable keylist threaded drawing.

Rebased with master + D12052.

Jeroen Bakker (jbakker) requested review of this revision.Aug 13 2021, 10:33 AM
Jeroen Bakker (jbakker) retitled this revision from Enable keylist threaded drawing. to T78995: Enable keylist threaded drawing..
Jeroen Bakker (jbakker) edited the summary of this revision. (Show Details)

That's awesome man! Just tested the patch, this makes the performance much much better. Without the patch I cant even move the timeline a single frame without waiting for a couple seconds. With the patch it's actually possible to work on those high keyframe files. Granted it's still not blazing fast but its fast enough to be able to get some edits done without ripping the hairs out.

@Jeroen Bakker (jbakker) after some testing I noticed that when I select a keyframe in the dope sheet it always selects the very first one rather than the one under the mouse. Idk how I didnt notice that at first haha. In graph editor it selects fine tho.

  • Merge branch 'arcpatch-D12052' into arcpatch-D12198_1

So much improvement, thanks!

source/blender/editors/animation/keyframes_draw.c
561

Why is this set to this value? This might need a comment.

  • Added comment why min_iter_per_thread is set.
Jeroen Bakker (jbakker) marked an inline comment as done.Sep 10 2021, 1:40 PM
Jeroen Bakker (jbakker) edited the summary of this revision. (Show Details)Sep 10 2021, 1:48 PM
Jeroen Bakker (jbakker) edited the summary of this revision. (Show Details)
This revision is now accepted and ready to land.Sep 10 2021, 2:14 PM
This revision was automatically updated to reflect the committed changes.