I might have a solution to the sluggishness!

I have been complaining - I’m not the only one :wink: ) to the sluggishness of Dorico when there was many flows in a project.
To day Ben Byram-Wigfield tested my latest project and reported back that he didn’t find it slow and hard to work on.
So I tried to download and install Dorico 2 pro to my MacBookPro 2014, and guess! It ran the project much quicker than on my Mac Pro 6.1!!
So I thought maybe it was because that the e-licenser was connected directly to my MacBookPro. So back at the Mac Pro I tried to connect the e-licenser directly and I THINK it works okay!
So maybe try this if you find that Dorico is slowing down!

Thanks for sharing this. It could be useful if other users experience the same sluggishness that they write their feedback here with this issue.

I would be very surprised if the e-licencer had any effect on run-time speed at all, because Dorico doesn’t call into it very often once it’s running. I would be interested to see some statistics if you really find that it is faster.

No, you are right I don’t think the speed of Dorico is affected by how the e-licenser is connected! But I have now tested the time Dorico needs to delete the last flow of a series of 28 in 2 different situations: 1) 9 layouts opened, and 2) 1 layout open. By open I mean that the layouts are present in the tabs.
In the first situation it took 43 sec from the click on delete until Dorico was ready to move on, in the test where only one layout was open it took 6 secs.!

Yes, this is a well-known performance characteristic of the software: when you have multiple layouts open in multiple tabs, Dorico is doing more work. Each layout is processed separately, so every edit you make is processed for each open layout. To as great a degree as is practical this processing is carried out in parallel, which is why having a computer with more CPU cores will normally perform faster with Dorico than a computer with fewer CPU cores. And some operations are much more expensive than others: most Setup mode operations (such as adding, deleting or reordering players and flows) require the open layouts to be recalculated from scratch, more or less equivalent to the time it takes to reopen the project from disk.

The best strategy to avoid waiting longer than necessary for Dorico to complete these kinds of tasks is to do the following: close all tabs except for the layout you need to work on; if possible, make that layout a part layout rather than the score layout; save, close and reopen the file with just that single layout showing. This step is important, because even after you close existing tabs, at least one of the layouts (the one that was open when you last opened the project) will always be maintained in memory even if it doesn’t have a tab showing. So if you have the full score open when you open the project, then switch to a part layout, the full score is still being updated in the background, and the full score is of course generally the most expensive to update, as it has the most players and flows.

So close all but the layout you need to work on. Close additional windows. Save, close and reopen the project. Now carry out the expensive Setup mode operation you need to do, and it should be considerably faster.

Obviously as the program matures we want to try to improve these kinds of issues, but even though we understand the performance characteristics of the software very well by now, making changes to the architecture to ameliorate these characteristics is not a simple job. Making Setup mode operations faster is a high priority, but it also requires some careful work to redesign certain bits of Dorico’s core architecture, which both cannot be done quickly and which takes us away from adding other kinds of features to the software. Performance is itself a feature, of course, but as such it has to be balanced in priority terms against all of the other features that we want to add to the software.

Hi Daniel,
will unticking all the part-layouts for all the flows in a project (except the score layout), also increase the responsiveness?
See screengrab;

No, provided you’re not editing those layouts, they’re not doing any harm.

Since my initial post I have switched to a Mac Studio Max, and Dorico runs great!

1 Like