3

I have Intel® Core™ i7-2670QM CPU @ 2.20GHz × 8 process which has 4 physical cores and 4 logical cores.

Most of the time i been on AskUbuntu, Watching videos, Basically no processor hungry stuff.

So I was thinking to take cores offline but i have few question, I know i can take the core offline

  cat /sys/devices/system/cpu/cpu7/online 
  1
  echo 0 > /sys/devices/system/cpu/cpu7/online

So my question is:

  1. Is it safe to take core/cores offline ?
  2. Is it possible that my app crash ?
  3. Does taking the cores offline save power ( On battery ) ?
3

Some people will argue that changing or modifying anything related to the CPU is not a good thing. Well if that's the case, then there would be no overclocking. I think that you can disable of one or more of the cores in the CPU. I know that it can be done in windows, so there has to be a way to do it in Linux.

Now personally, I think that only advanced users attempt doing such things to the CPU, and the system for that matter. Because any small mistake can render the system useless. So any modifications of this sort, should be done with complete caution.

By default Intel processors, have some technologies built in that help in saving power, such as:

Intel Turbo Boost Technology dynamically increases the processor's frequency as needed by taking advantage of thermal and power headroom to give you a burst of speed when you need it, and increased energy efficiency when you don’t.

Idle States (C-states) are used to save power when the processor is idle. C0 is the operational state, meaning that the CPU is doing useful work. C1 is the first idle state, C2 the second, and so on, where more power saving actions are taken for numerically higher C-states.

As mentioned above, be careful when dealing with such settings.

Disabling a core in Linux can be done through the grub menu and add parameters to the kernel entry. These parameters are sent directly to the core when the Linux is starting. The Linux system has to be restarted after the modifications to disable a core in a multi-core CPU are made.

For the Procedure when using Linux see Multicore CPU: how to disable a core

Source: Intel

Source: Multicore CPU: how to disable a core

0

You can't, no OS can do that and it's for a good reason, The CPU has internal registers and controllers to manipulate the frequency and the number of active cores.

This days all the CPUs have auto-scaling features, even low end ARM smartphones, they are able to scale on any OS, depending on what their architecture is and how they operate, it's also not correct to assume that your CPU is doing nothing or that there is a "low" CPU usage, your CPU is always doing something, it's a specific task or an IDLE loop but since the IDLE loop can be optimized by the manufacturer it can consume a really low amount of power compared to how many Watt are used to perform a specific task.

Never ever manipulate any CPU or Bios related setting if you don't strictly need to ( I don't think that there could ever be a situation like this ) and if you don't really know all the bits and specs of your machine.

Keep in mind that Ubuntu it's probably consuming more resource to keep your GUI alive than what it need to reproduce your video.

0

Yes, you can and there is a gnome extension to do it called "CPUFREQ" Installing is pretty self explanatory. Find it here: https://extensions.gnome.org/extension/1082/cpufreq/

Very useful to take cores offline on long flights without electricity. You Can also clock down speed on the cores, etc.

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.