Whenever I do some performance testing on my Linux-installed MacBook Pro, I often see the following messages in dmesg:

Aug  8 09:29:31 infinity kernel: [79791.789404] CPU1: Package power limit notification (total events = 40365)
Aug  8 09:29:31 infinity kernel: [79791.789408] CPU3: Package power limit notification (total events = 40367)
Aug  8 09:29:31 infinity kernel: [79791.789411] CPU2: Package power limit notification (total events = 40453)
Aug  8 09:29:31 infinity kernel: [79791.789414] CPU0: Package power limit notification (total events = 40453)

I also see the throttle counters in the sysfs increases over time:

$ ls
core_power_limit_count  package_power_limit_count
core_throttle_count     package_throttle_count
$ cat core_power_limit_count 
$ cat core_throttle_count 
$ cat package_power_limit_count 
$ cat package_throttle_count 

What do these counters mean?

Do they affect the performance of CPU or system? Do they result in increased deviation of performance numbers? (i.e. Do they prevent me from getting reliable performance numbers?)

If so, how do I avoid these messages and increasing counters? Would running the performance tests on a well-cooled desktop system help?


When the core is throttled it means it is slowed down (voltage lowered, frequency lowered) to cut the heat being generated (the heat comes from the power and the power is proportional to the square of the frequency). I am guessing the package throttling means that the piece of silicon the core has been placed on is overheating (rather than the core itself) and so once again voltage has been lowered.

This certainly has a negative impact on performance.

Ways to avoid are (a) don't run such compute heavy applications (at least not all at once), (b) check your cooling mechanisms (fans etc) are working and (c) operate your machine in a cooler environment. It's possible that none of these are doable/fixable/broken in your case.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.