Compressor doesn't appear to max out my M1 Pro processor.

I'm converting prores to small h.264 files with Compressor. Activity Monitor appears to show about 33% activity on the GPU and only 75% of the CPU (of one core, I presume). The machine is not getting hot and I don't hear fans. AND, the speed at which it converts these files is not impressive. I think I could do the same action in Davinci Resolve in half the time (or less). Is there some way to force more "effort" from my machine?


2021 mbp M1 Pro



MacBook Pro (2021)

Posted on Sep 29, 2023 6:46 AM

Reply
Question marked as Top-ranking reply

Posted on Sep 29, 2023 10:57 AM

Not if you are only converting one file at a time. This process is sequential, as H264 is a GOP codec. It does not lend itself easily to encoding in multiple parts in multiple processors.


And, besides, that is not the only reason.

I could be wrong, by my guess is that the reason CPU and GPU are only partially used is that the IO is the limiting factor.


Now if you create a batch consisting of multiple input files and/or multiple outputs for each file, Compressor will gladly use more cores.

You can also go to Compressor->Settings->Advanced and check how much additional instances you can use.

This is dependent on your mac hardware, and I think that with an M1 Pro you should be allowed to have 1 additional instance - that is kind of having two copies of Compressor running side by side. Again, you will have to be doing more than one job simultaneously to see the benefit from it.


It would be enlightening to see a comparison of results you get from Compressor vs Resolve. Note that just saying H264 does not tell the whole story. The file size and the output bit rate can have a tremendous impact on the amount of work needed for encoding.

Similar questions

5 replies
Question marked as Top-ranking reply

Sep 29, 2023 10:57 AM in response to chmed

Not if you are only converting one file at a time. This process is sequential, as H264 is a GOP codec. It does not lend itself easily to encoding in multiple parts in multiple processors.


And, besides, that is not the only reason.

I could be wrong, by my guess is that the reason CPU and GPU are only partially used is that the IO is the limiting factor.


Now if you create a batch consisting of multiple input files and/or multiple outputs for each file, Compressor will gladly use more cores.

You can also go to Compressor->Settings->Advanced and check how much additional instances you can use.

This is dependent on your mac hardware, and I think that with an M1 Pro you should be allowed to have 1 additional instance - that is kind of having two copies of Compressor running side by side. Again, you will have to be doing more than one job simultaneously to see the benefit from it.


It would be enlightening to see a comparison of results you get from Compressor vs Resolve. Note that just saying H264 does not tell the whole story. The file size and the output bit rate can have a tremendous impact on the amount of work needed for encoding.

Sep 29, 2023 11:32 AM in response to chmed

There are a lot of unknowns, but

I think that at least checking that option for “additional Compressor instances” should help when there is more than one encoding to do in the batch.


If I have the opportunity, I will try to some tests on this, and will report back. Do tell us if you get more information.


In the meantime, maybe Tom and others can share their views.

Sep 30, 2023 10:52 AM in response to chmed

I have not had a chance to do a very thorough test, but I tried exporting a short ProRes video to H264, with the same settings, in Compressor and in HandBrake. HandBrake did use about twice as much CPU (running at around 1000% vs Compressor at about 500%), but nevertheless HandBrake also took twice as long to finish...

So using more CPU does not necessarily mean running faster...

I would have tested with Resolve, but I am on mobile internet with limited data for the next few days.

Sep 29, 2023 11:16 AM in response to Luis Sequeira1

Thank you for the reply.


At one point I did indeed drop 4 files in and ran it as a batch. They were encoded sequentially so, no gains there.


The reason I mentioned H264 was to give an indication about what the process/codec was. I certainly did not give you any other information but, it feels much slower than what I can do in Resolve - while also rendering an entire video with color correction etc.


This slow encoding in Compressor was happening while a client was breathing down my neck and I did not try to time or benchmark what was happening. I'll do that later on.


The drive in question was a SATA SSD mounted in a USB-C adaptor. The SSDs are reasonably fast so I would expect 300MB/s+ read and write speed.


I'll try to benchmark and get back to this conversation but it definitely seems like there must be a setting somewhere that was limiting my conversion to one thread or something similar.


Thanks,



Sep 30, 2023 2:59 PM in response to Luis Sequeira1

I would expect most of the work for this should happen in the GPU. I believe that handbrake is still CPU only. It doesn't surprise me that it's slower than Compressor which is probably using GPU. But, I'm not sure of any of this, hence my post here.


Thanks for running this test. I'm still working on customer projects so haven't had any desk time to do some comparisons.




This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

Compressor doesn't appear to max out my M1 Pro processor.

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.