You can use either background rendering or manual rendering via selecting all timeline clips with CMD+A then rendering them to cache with CTRL+R.
By default the cache is optimized ProRes 422. Only the clip ranges within the timeline are rendered to cache, not the full length of the parent clips. There are separate caches for proxy mode and original media mode, so you'd need to render to cache while in original media mode.
That said, the durability of the cache files is not perfect. In some cases relaunching FCP or doing other activities will cause segments of the cache to become unrendered, and it will display as "render dots" above the timeline.
There is another situation whereby the timeline can be fully rendered, you get smooth performance, yet on export the render cache may not be used. That is apparently caused by certain interactions between some effects and the Motion runtime engine.
Thanks for your help, I am afraid a timeline render is not an option, as any slight color correction makes it render again and I would have to wait until finished. Is there a way to render only the used CLIPS to optimized media, NOT the timeline?
You can transcode to optimized media only the used parent clips, vs all the other library clips which were not used. But that will be the full-length parent clips, not just the ranges used in the timeline.
To do that, create a smart collection for used media, select those clips, then transcode to optimized media.
However even with optimized media, every time you change any effect on the clip, that range in the timeline will become uncached. So with FCP or any other NLE you cannot get around recomputing the effects on a clip when it is changed. Using optimized media saves the decode time but it does not save the compute CPU/GPU time when a clip is changed. On older Macs, the decode time for certain codecs was significant, so optimized media helped performance. On an M1 Max, etc, it often makes less difference because decoding is so fast.
Resolve has a feature called "Render in Place", which is a persistent form of render cache. But every time you make a grading change to a clip, it invalidates those files and they must be re-rendered.
Thanks joema, thats exactly what I was looking for. So I guess I have to delete all my scratch-timelines first, if they contain lots of footage which didnt end up in the final edit - so the clips will become unused again. Its not possible for a whole timeline like in avid when you just right click a timeline and select "transcode". But this will work. I still own a macbook pro mid 2012, I am still waiting for a mac pro or mac studio m3 (god only knows how long this will take). Right now transcoding to prores makes a significant difference, in UHD 50p XAVC-S even playback for preview is impossible, in Prores 50p it kind of works even when grading - depends on how many monitors are connected and additional effects etc..
... So I guess I have to delete all my scratch-timelines first, if they contain lots of footage which didnt end up in the final edit...
You don't need to do that. With FCP, a smart collection on "used media" only displays used clips for the currently-open timeline. So if you create that smart collection, then open timeline A, it shows you the used clips in timeline A. Then if you open timeline B, that same smart collection shows you used clips in timeline B, etc.
By "used clips" it is technically used *ranges* from the parent clips. However if you filter on used media, then select all those (which are actually ranges), then right-click>Transcode Media>Optimized, it will create optimized media on the entire parent clip length, not just the used media range.
If you enable View>Browser>Used Media Ranges, it also puts an orange stripe on each range within a clip. Again, that is used media for the currently open timeline, not all used media in all timelines.
Stu, thank you for that correction. I think I was unaware of that because I rarely use optimized media, and when I do it has been via right-click on selected clips in the Browser. You are correct the Apple FCP documentation says you can select the project, then do File>Transcode Media, and it will create optimized media for just the clips in the timeline.
On older Macs, the decode time for certain codecs was significant, so optimized media helped performance. On an M1 Max, etc, it often makes less difference because decoding is so fast.
Even my new MacBook Air m1 does not playback Sonys XAVC-S UHD 10bit 50p footage well when its not optimized. There's just a little color correction and a broadcast safe filter applied on the timeline - the project is 50i HD. I did expect the MacBook to handle h264 based codecs better - but I must admit it only has 8gb ram, maybe that's the cause. When I use ProRes optimized footage from the same SSD it plays back well, so SSD speed is not the problem.