anonymous@RULINUX.NET~# Last login: 2024-12-23 17:17:14
Регистрация Вход Новости | Разметка | Пользователи | Галерея | Форум | Статьи | Неподтвержденное | Трекер | Правила форума | F.A.Q. | Ссылки | Поиск
[#] [Добавить метку] [Редактировать]
Скрыть

[cpufreq] Охуеть

Не знал, что ядрам одного камня можно персонально выставлять частоту:

  1.  $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
  2.  3000000 2300000 1800000 800000
  3.  
  4.  $ sudo cpufreq-set -c 3 -d 3000000
  5.  
  6.  $ sudo cpufreq-set -c 2 -d 2300000
  7.  
  8.  $ sudo cpufreq-set -c 1 -d 1800000
  9.  
  10.  $ cpufreq-info
  11.  cpufrequtils 005: cpufreq-info (C) Dominik Brodowski 2004-2006
  12.  Report errors and bugs to [email protected], please.
  13.  analyzing CPU 0:
  14.   driver: powernow-k8
  15.   CPUs which need to switch frequency at the same time: 0
  16.   hardware limits: 800 MHz - 3.00 GHz
  17.   available frequency steps: 3.00 GHz, 2.30 GHz, 1.80 GHz, 800 MHz
  18.   available cpufreq governors: ondemand, userspace, performance
  19.   current policy: frequency should be within 800 MHz and 3.00 GHz.
  20.   The governor "ondemand" may decide which speed to use
  21.   within this range.
  22.   current CPU frequency is 800 MHz.
  23.  analyzing CPU 1:
  24.   driver: powernow-k8
  25.   CPUs which need to switch frequency at the same time: 1
  26.   hardware limits: 800 MHz - 3.00 GHz
  27.   available frequency steps: 3.00 GHz, 2.30 GHz, 1.80 GHz, 800 MHz
  28.   available cpufreq governors: ondemand, userspace, performance
  29.   current policy: frequency should be within 1.80 GHz and 3.00 GHz.
  30.   The governor "ondemand" may decide which speed to use
  31.   within this range.
  32.   current CPU frequency is 1.80 GHz.
  33.  analyzing CPU 2:
  34.   driver: powernow-k8
  35.   CPUs which need to switch frequency at the same time: 2
  36.   hardware limits: 800 MHz - 3.00 GHz
  37.   available frequency steps: 3.00 GHz, 2.30 GHz, 1.80 GHz, 800 MHz
  38.   available cpufreq governors: ondemand, userspace, performance
  39.   current policy: frequency should be within 2.30 GHz and 3.00 GHz.
  40.   The governor "ondemand" may decide which speed to use
  41.   within this range.
  42.   current CPU frequency is 2.30 GHz.
  43.  analyzing CPU 3:
  44.   driver: powernow-k8
  45.   CPUs which need to switch frequency at the same time: 3
  46.   hardware limits: 800 MHz - 3.00 GHz
  47.   available frequency steps: 3.00 GHz, 2.30 GHz, 1.80 GHz, 800 MHz
  48.   available cpufreq governors: ondemand, userspace, performance
  49.   current policy: frequency should be within 3.00 GHz and 3.00 GHz.
  50.   The governor "ondemand" may decide which speed to use
  51.   within this range.
  52.   current CPU frequency is 3.00 GHz.
  53.  

Интересно, а можно выключить пару-тройку из них для экономии?

HEBECTb_KTO(*) (2009-12-04 05:39:00)

[Ответить на это сообщение]
[#] [Добавить метку] [Редактировать] Ответ на: [cpufreq] Охуеть от HEBECTb_KTO 2009-12-04 05:39:00
avatar
Скрыть

Re: [cpufreq] Охуеть

> Интересно, а можно выключить пару-тройку из них для экономии?
В смысле вот такое действие вроде не выключает ядро физически:

  1.   echo "0" > /sys/devices/system/cpu/cpu3/online
  2.  

Т.е. в то время как переход между 0.8, 1.8, 2.3 и 3.0 ГГц всеми ядрами даёт разницу в среднем по 10 ватт, то выключение записью нолика в online для двух ядер вообще не сказывается на потреблении.

HEBECTb_KTO(*)(2009-12-04 05:50:49)

[#] [Добавить метку] [Редактировать] Ответ на: Re: [cpufreq] Охуеть от HEBECTb_KTO 2009-12-04 05:50:49
avatar
Скрыть

Re: [cpufreq] Охуеть

в если 0 ГГц поставить?:)

anonymous(*)(2009-12-04 10:27:35)

Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.15) Gecko/2009101601 Firefox/3.0.15
[#] [Добавить метку] [Редактировать] Ответ на: Re: [cpufreq] Охуеть от anonymous 2009-12-04 10:27:35
avatar
Скрыть

Re: [cpufreq] Охуеть

> в если 0 ГГц поставить?:)
Читайть умееешь, виндузятное быдло?

> # available frequency steps: 3.00 GHz, 2.30 GHz, 1.80 GHz, 800 MHz


anonymous(*)(2009-12-04 10:35:18)

Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.12) Gecko/2009072221 Iceweasel/3.0.12 (Debian-3.0.12-1)
[#] [Добавить метку] [Редактировать] Ответ на: Re: [cpufreq] Охуеть от anonymous 2009-12-04 10:27:35
avatar
Скрыть

Re: [cpufreq] Охуеть

Нолик нельзя.

HEBECTb_KTO(*)(2009-12-04 13:22:41)

[#] [Добавить метку] [Редактировать] Ответ на: [cpufreq] Охуеть от HEBECTb_KTO 2009-12-04 05:39:00
avatar
Скрыть

Re: [cpufreq] Продолжаем хуеть

Теперь с точки зрения энергопотребления. По результатам крайне грубых замеров, разница в энергопотреблении между крайними режимами - т.е. все яда на 0.8 ГГц VS все ядра на 3 ГГц составляет 25-30 ватт или 35-40 евро в год при цене 16 центов за квтч или, проще говоря, бутылку хорошего виски.

Что любопытно, при последовательном включении ядер с 0.8 на 3 ГГц потребление растёт не пропорционально количеству ядер, работающих на максимальной частоте. Т.е. если в состоянии все яда на 0.8 ГГц включить одно ядро на максимум - разница в потреблении сразу составит ватт 15-16, последовательное включение остальных ядер добавляет ватта по четыре.

Как вывод - для обеспечения максимальной экономии электроэнергии нужно стараться избегать разгона хотя бы одного ядра без необходимости. Т.е. есть смысл ограничить одно из ядер по частоте и вынести на него фоновые процессы, заведующие ротацией логов, бэкапами, торрентами и прочей фигнёй, не критичной к задержкам. Тем более, что как оказалось, говернёр ondemand масштабирует частоту только для нагруженных ядер, а не всех сразу.

В качестве примера, простенькая программка, интенсивно потребляющая CPU:

c
/* load.c  */

void main(void){
  while(1);
}
 

Если такую программку просто запустить в терминале - говернёр загонит тактовую частоту того ядра, куда её поселит система, на максимум и, при условии круглосуточной работы программы, мы теряем полбутылки хорошего виски в год, что непремлемо.

Однако, учитывая возможность задания ограничений частоты персонально для каждого ядра процессора, и при возможности пожертвовать одним из ядер, можно извратиться следующим образом:

ограничим максимальную частоту работы одного из ядер (4е ядро в д.с.) минимально возможным значением:

    cpufreq-set -c 3 -u 800000

.. и привяжем нашу cpu-прожорливую программу load к данному ядру:

    taskset -c 3 ./load

и, собственно, всё. load занимает 100% процессора, но, поскольку, говернёру некуда поднимать частоту для этого ядра, а система не может переселить процесс на другое - то, как можно убедиться посредством команды cpufreq-info, процессор продолжает работать в наиболее экономичном режиме, выполняя при этом интенсивные вычисления. А три ядра остаются для наших интерактивных задач. При необходимости запускать другие фоновые процессы в таком же режиме - их можно подселить на то же самое ограниченное ядро используя команду chrt в комбинации с командой привязки к процессору taskset. chrt позволяет задавать процессам разные приоритеты и политику планирования процессов (man sched_setscheduler), которые впрочем непонятно как уживаются между собой в случае привязки процессов с разными планировщиками к одному и тому же ядру. Видимо для экономии электричества лучше пользоваться опциями говернёра, позволяющими не повышать частоту процессора для таких процессов - заодно и использование остальных ядер будет более эффективным благодаря тому, что процессы не будут привязаны к единственному ядру.

HEBECTb_KTO(*)(2009-12-05 05:57:25)

[#] [Добавить метку] [Редактировать] Ответ на: Re: [cpufreq] Продолжаем хуеть от HEBECTb_KTO 2009-12-05 05:57:25
avatar
Скрыть

Re: [cpufreq] Продолжаем хуеть

> процессор продолжает работать в наиболее экономичном режиме, выполняя при этом интенсивные вычисления.
а смысл? Будет работать медленнее - будет считать дольше. Экономии похоже не выйдет.

bugmaker(*)(2009-12-05 06:26:13)

Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.0.15) Gecko/2009102815 Ubuntu/9.04 (jaunty) Firefox/3.0.15
[#] [Добавить метку] [Редактировать] Ответ на: Re: [cpufreq] Продолжаем хуеть от bugmaker 2009-12-05 06:26:13
avatar
Скрыть

Re: [cpufreq] Продолжаем хуеть

Выйдет, разница между полностью загруженными 4мя ядрами и практически простаивающими - ватта полтора всего на 0.8 ГГц. Тем более, что на низких частотах требуются меньшие напряжения для камня и матери, и они умеют их снижать автоматически. А вот на 3ГГц полная загрузка проца даёт ещё ватт 15 к тем 25-30 вышеупомянутым - в предыдущих выкладках цифры были для практически ничего не делающего проца на тех же частотах.

HEBECTb_KTO(*)(2009-12-05 07:05:30)

Этот тред читают 1 пользователь:
Анонимных: 1
Зарегистрированных: 0




(c) 2010-2020 LOR-NG Developers Group
Powered by TimeMachine

Valid HTML 4.01 Transitional Правильный CSS!