CommandPost / FCPCafe

FCP Cafe Website
https://fcp.cafe
MIT License
27 stars 15 forks source link

Maximum Performance Mode? Using more than 2 cores... What about others? Does Metal Matter? #408

Open belisoful opened 1 week ago

belisoful commented 1 week ago

Apple Feedback Assistant ID: FB15619021

Is your feature request related to a problem? Please describe. When rendering, the CPU only take 200-250% when i have 8 remaining performance cores on the table not being utilized. This may be the complexity of the video? I'm not sure why the load can't be distributed onto the un-used cores. Update: I have a test render now going at 408% CPU.

Describe the solution you'd like If there is a limit of 2 cores (or only 2 rendering threads?) for export, I'd like to see the other performance cores being utilized for the fastest rendering. It would eat more electricity but i'd like to render as a higher priority and with more cores, as fast as possible.

For instance, if i have a long render while i sleep, I'd like for FCP to just go full throttle while I'm sleeping. There could be a check box under the "Background Tasks" - "Sharing" View, for toggling on and off performance mode. Maybe a switch style UI element.

If frames can be rendered on the unused CPU Cores doing the same work as the GPU, FCP should have an option for that as a maximum performance mode. That's the whole point of Metal, right? CPU and GPU work is interchangeable, no?

FCP wouldn't be limited to just 2 Cores in exporting but would use all Performance cores. Maybe there could be a maximum over drive option that also utilizes the efficiency cores to the max as well.

Apple, why sell us computers with 10 CPUS when your premier softwares like Final Cut Pro only uses 2-4 cores? It's not PRO, if you ask me.

If this option is on a laptop and is not connected to power, then a warning dialog could displayed. This could be turned off, and turned back on in the final cut pro settings itself.

Describe alternatives you've considered Adobe Premier? Resolve? Blender? Apple Compressor seems to have all core support, but that is an option that final cut pro should include by itself. It's 2024 after all. How many cores did you pay apple to have and use? How many years has 4+ cores been the standard?

belisoful commented 1 week ago

I know this sounds funny.... but what if an attached iPad or iphone were also used for render? i mean, those new iPad M4 are heavy duty SoCs. Doing remote work via Compressor is one thing, but if an iPad or iPhone were physically attached by wire, why not allow Final Cut to use it for faster rendering without Compressor? It would be a selling point for M4 iPad.... to render your Final Cut Pro Exports 2x+ faster. lol.

latenitefilms commented 1 week ago

Compressor for iPad is an excellent idea!

belisoful commented 1 week ago

Compressor for iPad is an excellent idea!

Even without Apple's Compressor Software, if adding an M4 iPad or iPhone support to make our direct Final Cut Pro export 2x faster? It'd be killer.

latenitefilms commented 1 week ago

The only thing really stopping Apple is that currently on iPadOS only frontmost applications are running - you can't render in the background. You'd have to keep Compressor on iPad frontmost and open for it to work (like FCP for iPad and DaVinci Resolve for iPad currently). This seems like it would be a support nightmare.

belisoful commented 1 week ago

There has to be a way for apple to create a low priority special NO UI background threads for rendering these things. They have total control over iOS.

latenitefilms commented 1 week ago

Absolutely, however doing major engineering changes to iPadOS is probably a multi-year project, and not something the ProApps team could easily just request.

belisoful commented 1 week ago

I'm thinking there is an internal way for them to set Apple tasks/threads in the background on iOS. It's not available for us regular developers. One such iOS background task is "computer sync". A Final Cut Pro background task on iOS would have the same modality as a "sync" function when physically connected to a Mac. At least that's my thinking as a professional software engineer.

I know Apple has internal APIs they don't give us access to. That's what I am banking on for this request. It'd be unreal to half the time of a Final Cut Pro export by connecting a iPad or iPhone. well. 10% to 300% faster is my guess.

latenitefilms commented 1 week ago

If iPadOS already had a way to do it - they would have already done it for Final Cut Pro for iPad.

belisoful commented 1 week ago

Does Final Cut Pro for iOS not allow exporting on the device? I don't have one and haven't played with the iOS version of FCP.

Assuming FCP for iOS does export, Why not just put that render pipeline, already on Final Cut Pro for iOS, into an executable background task accessible by a connected host computer? The FCP iPad slave service could be a thin [background] client with the host FCP providing almost everything, even executables (ahem plugins, Audio Units, and such)

latenitefilms commented 1 week ago

Final Cut Pro for iPad can only export in the foreground. If you switch to another app the export will fail.

belisoful commented 1 week ago

Holy cow. This is 2024, that's a bug and a half, by three quarters of a bite out of Apple. I had no idea it worked that way for FCP on iOS.

belisoful commented 1 week ago

I'd report that as a bug. FCP should at least pause the export rather than fail if leaving the foreground on iOS. just basic UI and usability design.

belisoful commented 3 days ago

I'm noodling about it.... Even if the iPad-M4/Mx was locked into FCP for iOS to make my Mac FCP Export faster, that'd work with me. It'd be nice if it were built in to FCP without Compressor, if we just so happened to have an iPad.