<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
					xmlns:content="http://purl.org/rss/1.0/modules/content/"
					xmlns:wfw="http://wellformedweb.org/CommentAPI/"
					xmlns:atom="http://www.w3.org/2005/Atom"
				  >
<channel>
<atom:link rel="self"  type="application/rss+xml"  href="http://rulinux.net/rss_from_sect_4_subsect_10_thread_5351"  />
<title>rulinux.net - Форум - Talks - [cpufreq] Охуеть</title>
<link>http://rulinux.net/</link>
<description><![CDATA[Портал о GNU/Linux и не только]]></description>
<image><title>rulinux.net - Форум - Talks - [cpufreq] Охуеть</title>
<link>http://rulinux.net/</link>
<url>http://rulinux.net/rss_icon.png</url>
</image>
<item>
<title>Re: [cpufreq] Продолжаем хуеть</title>
<link>https://rulinux.net/message.php?newsid=5351&amp;page=1#33634</link>
<guid>https://rulinux.net/message.php?newsid=5351&amp;page=1#33634</guid>
<pubDate>Sat, 05 Dec 2009 03:05:30 +0300</pubDate>
<description><![CDATA[<p>Выйдет, разница между полностью загруженными 4мя ядрами и практически простаивающими - ватта полтора всего на 0.8 ГГц. Тем более, что на низких частотах требуются меньшие напряжения для камня и матери, и они умеют их снижать автоматически. А вот на 3ГГц полная загрузка проца даёт ещё ватт 15 к тем 25-30 вышеупомянутым - в предыдущих выкладках цифры были для практически ничего не делающего проца на тех же частотах. </p>]]></description>
</item>
<item>
<title>Re: [cpufreq] Продолжаем хуеть</title>
<link>https://rulinux.net/message.php?newsid=5351&amp;page=1#33633</link>
<guid>https://rulinux.net/message.php?newsid=5351&amp;page=1#33633</guid>
<pubDate>Sat, 05 Dec 2009 02:26:13 +0300</pubDate>
<description><![CDATA[<p><i>> процессор продолжает работать в наиболее экономичном режиме, выполняя при этом интенсивные вычисления.</i><br> а смысл? Будет работать медленнее - будет считать дольше. Экономии похоже не выйдет.</p>]]></description>
</item>
<item>
<title>Re: [cpufreq] Продолжаем хуеть</title>
<link>https://rulinux.net/message.php?newsid=5351&amp;page=1#33632</link>
<guid>https://rulinux.net/message.php?newsid=5351&amp;page=1#33632</guid>
<pubDate>Sat, 05 Dec 2009 01:57:25 +0300</pubDate>
<description><![CDATA[<p>Теперь с точки зрения энергопотребления. По результатам крайне грубых замеров, разница в энергопотреблении между крайними режимами - т.е. все яда на 0.8 ГГц VS все ядра на 3 ГГц составляет 25-30 ватт или 35-40 евро в год при цене 16 центов за квтч или, проще говоря, бутылку хорошего виски.</p><p>Что любопытно, при последовательном включении ядер с 0.8 на 3 ГГц потребление растёт не пропорционально количеству ядер, работающих на максимальной частоте. Т.е. если в состоянии все яда на 0.8 ГГц включить одно ядро на максимум - разница в потреблении сразу составит ватт 15-16, последовательное включение остальных ядер добавляет ватта по четыре. </p><p>Как вывод - для обеспечения максимальной экономии электроэнергии нужно стараться избегать разгона хотя бы одного ядра без необходимости. Т.е. есть смысл ограничить одно из ядер по частоте и вынести на него фоновые процессы, заведующие ротацией логов, бэкапами, торрентами и прочей фигнёй, не критичной к задержкам. Тем более, что как оказалось, говернёр ondemand масштабирует частоту только для нагруженных ядер, а не всех сразу. </p><p>В качестве примера, простенькая программка, интенсивно потребляющая CPU: <fieldset><legend>c</legend><code><br />
<span style="color: #808080; font-style: italic;">/* load.c &nbsp;*/</span><br />
<br />
<span style="color: #993333;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #993333;">void</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #b1b100;">while</span><span style="color: #009900;">&#40;</span>1<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><br />
&nbsp;</code></fieldset></p><p>Если такую программку просто запустить в терминале - говернёр загонит тактовую частоту того ядра, куда её поселит система, на максимум и, при условии круглосуточной работы программы, мы теряем полбутылки хорошего виски в год, что непремлемо.</p><p>Однако, учитывая возможность задания ограничений частоты персонально для каждого ядра процессора, и при возможности пожертвовать одним из ядер, можно извратиться следующим образом:</p><p>ограничим максимальную частоту работы одного из ядер (4е ядро в д.с.) минимально возможным значением: <fieldset style="border: 1px dashed black; padding:0px;"><ol style="background-color:#3d3d3d;" start="1"> cpufreq-set -c 3 -u 800000 </ol></fieldset></p><p>.. и привяжем нашу cpu-прожорливую программу load к данному ядру: <fieldset style="border: 1px dashed black; padding:0px;"><ol style="background-color:#3d3d3d;" start="1"> taskset -c 3 ./load </ol></fieldset></p><p>и, собственно, всё. load занимает 100% процессора, но, поскольку, говернёру некуда поднимать частоту для этого ядра, а система не может переселить процесс на другое - то, как можно убедиться посредством команды cpufreq-info, процессор продолжает работать в наиболее экономичном режиме, выполняя при этом интенсивные вычисления. А три ядра остаются для наших интерактивных задач. При необходимости запускать другие фоновые процессы в таком же режиме - их можно подселить на то же самое ограниченное ядро используя команду chrt в комбинации с командой привязки к процессору taskset. chrt позволяет задавать процессам разные приоритеты и политику планирования процессов (man sched_setscheduler), которые впрочем непонятно как уживаются между собой в случае привязки процессов с разными планировщиками к одному и тому же ядру. Видимо для экономии электричества лучше пользоваться опциями говернёра, позволяющими не повышать частоту процессора для таких процессов - заодно и использование остальных ядер будет более эффективным благодаря тому, что процессы не будут привязаны к единственному ядру.</p><p></p><p></p><p> </p>]]></description>
</item>
<item>
<title>Re: [cpufreq] Охуеть</title>
<link>https://rulinux.net/message.php?newsid=5351&amp;page=1#33631</link>
<guid>https://rulinux.net/message.php?newsid=5351&amp;page=1#33631</guid>
<pubDate>Fri, 04 Dec 2009 09:22:41 +0300</pubDate>
<description><![CDATA[<p>Нолик нельзя.</p>]]></description>
</item>
<item>
<title>Re: [cpufreq] Охуеть</title>
<link>https://rulinux.net/message.php?newsid=5351&amp;page=1#33630</link>
<guid>https://rulinux.net/message.php?newsid=5351&amp;page=1#33630</guid>
<pubDate>Fri, 04 Dec 2009 06:35:18 +0300</pubDate>
<description><![CDATA[<p><i>> в если 0 ГГц поставить?:)</i><br> Читайть умееешь, виндузятное быдло? </p><p><i>> #   available frequency steps: 3.00 GHz, 2.30 GHz, 1.80 GHz, 800 MHz </p></i><br>]]></description>
</item>
<item>
<title>Re: [cpufreq] Охуеть</title>
<link>https://rulinux.net/message.php?newsid=5351&amp;page=1#33629</link>
<guid>https://rulinux.net/message.php?newsid=5351&amp;page=1#33629</guid>
<pubDate>Fri, 04 Dec 2009 06:27:35 +0300</pubDate>
<description><![CDATA[<p>в если 0 ГГц поставить?:)</p>]]></description>
</item>
<item>
<title>Re: [cpufreq] Охуеть</title>
<link>https://rulinux.net/message.php?newsid=5351&amp;page=1#33628</link>
<guid>https://rulinux.net/message.php?newsid=5351&amp;page=1#33628</guid>
<pubDate>Fri, 04 Dec 2009 01:50:49 +0300</pubDate>
<description><![CDATA[<p><i>> Интересно, а можно выключить пару-тройку из них для экономии?</i><br> В смысле вот такое действие вроде не выключает ядро физически:</p><p><fieldset style="border: 1px dashed black; padding:0px;"><ol style="background-color:#3d3d3d;" start="1"> <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  echo &quot;0&quot; &gt;  /sys/devices/system/cpu/cpu3/online <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;</ol></fieldset></p><p>Т.е. в то время как переход между 0.8, 1.8, 2.3 и 3.0 ГГц всеми ядрами даёт разницу в среднем по 10 ватт, то выключение записью нолика в online для двух ядер вообще не сказывается на потреблении.</p>]]></description>
</item>
<item>
<title>[cpufreq] Охуеть</title>
<link>https://rulinux.net/message.php?newsid=5351&amp;page=1#33627</link>
<guid>https://rulinux.net/message.php?newsid=5351&amp;page=1#33627</guid>
<pubDate>Fri, 04 Dec 2009 01:39:00 +0300</pubDate>
<description><![CDATA[<p>Не знал, что ядрам одного камня можно персонально выставлять частоту:</p><p><fieldset style="border: 1px dashed black; padding:0px;"><ol style="background-color:#3d3d3d;" start="1"><li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;3000000 2300000 1800000 800000<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;$ sudo cpufreq-set -c 3 -d 3000000<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;$ sudo cpufreq-set -c 2 -d 2300000  <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;$ sudo cpufreq-set -c 1 -d 1800000  <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;$ cpufreq-info<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;cpufrequtils 005: cpufreq-info (C) Dominik Brodowski 2004-2006<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;Report errors and bugs to cpufreq@vger.kernel.org, please.    <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;analyzing CPU 0:                                              <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  driver: powernow-k8                                         <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  CPUs which need to switch frequency at the same time: 0     <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  hardware limits: 800 MHz - 3.00 GHz                         <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  available frequency steps: 3.00 GHz, 2.30 GHz, 1.80 GHz, 800 MHz<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  available cpufreq governors: ondemand, userspace, performance   <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  current policy: frequency should be within 800 MHz and 3.00 GHz.<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;                  The governor &quot;ondemand&quot; may decide which speed to use<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;                  within this range.                                   <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  current CPU frequency is 800 MHz.                                    <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;analyzing CPU 1:                                                       <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  driver: powernow-k8                                                  <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  CPUs which need to switch frequency at the same time: 1              <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  hardware limits: 800 MHz - 3.00 GHz                                  <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  available frequency steps: 3.00 GHz, 2.30 GHz, 1.80 GHz, 800 MHz     <li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  available cpufreq governors: ondemand, userspace, performance<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  current policy: frequency should be within 1.80 GHz and 3.00 GHz.<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;                  The governor &quot;ondemand&quot; may decide which speed to use<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;                  within this range.<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  current CPU frequency is 1.80 GHz.<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;analyzing CPU 2:<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  driver: powernow-k8<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  CPUs which need to switch frequency at the same time: 2<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  hardware limits: 800 MHz - 3.00 GHz<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  available frequency steps: 3.00 GHz, 2.30 GHz, 1.80 GHz, 800 MHz<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  available cpufreq governors: ondemand, userspace, performance<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  current policy: frequency should be within 2.30 GHz and 3.00 GHz.<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;                  The governor &quot;ondemand&quot; may decide which speed to use<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;                  within this range.<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  current CPU frequency is 2.30 GHz.<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;analyzing CPU 3:<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  driver: powernow-k8<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  CPUs which need to switch frequency at the same time: 3<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  hardware limits: 800 MHz - 3.00 GHz<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  available frequency steps: 3.00 GHz, 2.30 GHz, 1.80 GHz, 800 MHz<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  available cpufreq governors: ondemand, userspace, performance<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  current policy: frequency should be within 3.00 GHz and 3.00 GHz.<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;                  The governor &quot;ondemand&quot; may decide which speed to use<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;                  within this range.<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;  current CPU frequency is 3.00 GHz.<li style="background-color:#000000; padding-left: 5px; color: gray">&nbsp;</ol></fieldset></p><p> Интересно, а можно выключить пару-тройку из них для экономии?</p>]]></description>
</item>
</channel>
</rss>