Large file, CPU (and GPU?)

Hi there, I have to work on a rather large file (23 MB, 430 pages opera score) and my current computer (MacBook Pro 2018, i7 with 16 GB RAM) is way too slow for it, even if I split the file into say three parts. To give an example: Switching on condensed score takes around 2 minutes of processing, switching between page view and galley more than half a minute. Putting a new page break causes also almost two minutes of calculating. Nudging the horizontal position of a note more than 10 seconds, etc.

Considering to buy a new MacBook Pro with the M4 CPU I am wondering wether it will make a noticable difference wether it will have the M4 Pro with 48 GB RAM or the M4 Max with 64 GB RAM. I am not working with fancy sound libraries, it’s all about layout and graphical work.
All insights welcome, thanks!
Joachim

Joachim,
before getting a new computer, may be you could adapt your workflow for this very project.
First advice, as always for Dorico: don’t think of any layout or condensing before you have completely finished the musical input.
You don’t necessarily have to split the project file into segments (like act 1, act 2, act 3). Instead make yourself “work layouts” consisting f.e. of one aria only. Do the “layouting” on these layouts.
Switching to condensed view: you will only have to do it once (at all). If you have to do musical corrections or edits, do them in Galley view. If you don’t need playback, you could choose the silent playback template. If you need playback to proof/check your score, choose the standard template, if possible. All these little steps might help you use your still quite powerful computer in an effective way.

1 Like

You can’t do things like system breaks and staff spacing adjustments in these layouts, as each layout is separate for these things.

At some point, you will have to make Engraving edits to your full score with Condensing on; but I’d agree that’s the final stage.

The Max is just more of the same cores. You’ll be unlikely to use all 14 of the Pro’s cores with Dorico as it is.
48Gb of RAM should be more than enough. If you were working with huge sample libraries, then perhaps 64Gb. I have 32Gb, and that’s more than enough.

Many thanks for your ideas. Fortunately the inputting is already done, I have to work “only” on layout and graphical fine tuning.
So many operations involve systems breaks, page breaks, fitting into system or page, changing staff size for certain pages, moving staves up and down, etc. All this is very slow.

Thanks a lot for your suggestion, and for clarifying that there is no such thing as “work layouts”, i.e. splitting a flow into small parts.

Joachim,

  1. make sure to have only one Layout open.
  2. try to adjust Layout Options->Vertical spacing->Ideal gaps, instead of moving staves up or down. Dorico works best this way.
  3. you can avoid System breaks if you instead make local Note Spacing changes.

All these little steps will make Dorico work much faster.

Thanks for the hints.
Yes, I do as much as I can in all available options before doing too much of unnecessary fine tuning.
But especially in respect to vertical spacing there is many times quite a lot of nudging, when the music is very dense and tight, and when you cannot enlarge the format or reduce the staff size (for legibility reasons).
E.g. you move individual dynamics (which you have to ungroup in advance), flatten slurs, shorten stems, etc., in order to create vertical space. This manually created space will not be filled automatically by Dorico, that is you have to move staves and systems manually.

Joachim, the rule of thumb for Dorico is: if you have to do more than just a few little corrections, go into your Engraving Options, Layout Options and change the settings there, default slur settings, space around dynamics, distance text from staves and many, many more. Once you have found good settings there, your layout will freely update (once you remove the overrides).
Engrave Mode should only be used very sparingly. May be you can give it another try, or even upload a problematic flow, so we can point you to the right settings.

In order to show better of what my engraving work consists of attached an admittedly rather extreme example of tight vertical spacing, where you have to do a lot in Engrave mode (though this score still was set in Sibelius).
Of course you can say now to reduce the staff size, but than legibility suffers.
It’s hard work to create a good printing costs to legibility ratio :wink:

TIght vertical spacing.pdf (62.3 KB)

I’d say a small size with more space would be more legible. It’s hard to tell which line is which.

:thinking: hmm, I can confirm, your example is nothing to aim for. Try a larger paper size for that Full Score layout, reduce the top and bottom margin. Then find a Rastral size for the staves, where in Engrave Mode the Percentage at the bottom of the page stays beyond 100%. If you still think, the Rastral size is too small, start reducing the inter-system-gaps (Layout Options->Vertical spacing).
And so on, go into Engeaving Options, look for the Settings for Dynamics, especially distance to other objects (it might be named differently).
This is all before manually tweaking at all.

I have been eyeing Activity Monitor sometimes.
My file is also a full-scale opera. 2800 bars, 43 “instruments” etc.
What I can tell is:

  1. RAM is not an issue with my M3 Max, I have 36GB , plenty free.

  2. @benwiggy is not right about cores. Actually- Dorico has no say in how many cores are used, Dorico can process data parallel in multiple threads and how these threads are distributed among processor cores is decided by OS.
    Example: when I switch from write to engrave mode, Dorico has around 60 threads open and indeed all my 14 cores are engaged. That does not mean the processing power maxes out. Far from that.

VST Audio Engine that handles playback has a separate process as you see.

Screenshot of Dorico idling. Opera open. Sound is handled by NotePerformer, and routed though Loopback app bus to DigitalPerformer. That is needed because Dorico can handle only one stereo output pair of my Clarett+ at a time but I have speakers and headphone amp connected to Interface.

PS. GPU is not an issue with the static image of notation app.

That’s exactly my point. Dorico can’t keep splitting its processes into more and more threads. If you have 6000 cores, it’s not going to go any faster.

1 Like

@benwiggy … and again the raw speed of a single core comes to play. The frequency etc. starts to play an important role how fast these 60+ threads compute.
The original post was asking M4Pro or Max (Ram is enough in both cases).
I agree that PRO is enough. I checked- the frequencies are the same 4.52 GHz, if my source is right.
So Max would be mainly pouring more money into apple garden.

Many thanks for this very helpful information!