Ubuntu Çekirdek Parkını destekliyor mu?


13

Çekirdek park etme, daha iyi Pil performansı elde etmek için Windows 7'de sunulan yeni bir özelliktir .

İşletim sisteminin kaynak kullanımına bağlı olarak, bilgisayarın güç tüketimini ve termal emisyonlarını azaltmak için çok çekirdekli bir işlemcinin bir veya daha fazla çekirdeğini park edebilir. İşlemler daha fazla işlem gücü gerektirdiğinde, park edilmiş çekirdekler görevlere yardımcı olmak için tekrar etkinleştirilir

Yani sorum şu ki Ubuntu 12.04 "Core Parking" üzerinde yapabileceğim bir yol var mı?


3
Harika Soru!
NlightNFotis

Yanıtlar:


9

Şimdilik bunun için net bir cevabım yok, ancak linux Çekirdeğinin bazı enerji tasarrufu mekanizmalarını kullandığı açıktır .

Bununla birlikte, hızlı bir araştırma yaparak, en son Linux çekirdeklerinin Gelişmiş Yapılandırma ve Güç Arabiriminin kısaltması olan ACPI adlı bir özellik kullandığını çabucak fark ettim .

ACPI ne yapıyor:

Gelişmiş Yapılandırma ve Güç Arabirimi (ACPI) belirtimi, işletim sistemi tarafından aygıt yapılandırması ve güç yönetimi için açık bir standart sağlar.

Wikipedia üzerinden .

Temel olarak ACPI, daha iyi güç yönetimi sağlamak için farklı CPU durumlarının kontrolüne izin verir.

Farklı ACPI CPU durumları:

CPU C-Durumları (güç yönetimi)

Temel olarak, CPU "C durumları" ile ilgili endişelenmeniz gereken hiçbir şey yoktur. Bunlar, mevcut sistem yükü dikkate alınarak çekirdek + ACPI sistemi tarafından otomatik olarak kontrol edilir. (CAVEAT: aşağıdaki AMD Athlon ve Duron işlemciler hakkındaki notu inceleyin). Daha yeni (2.6+) çekirdeklerdeki ACPI kodu, boşta kalma süresi olduğunda CPU'nuzu otomatik olarak uyku moduna geçirir (not: bu CPU frekansını değiştirmez. "P durumları" tarafından kontrol edilir - aşağıya bakın).

Gerçekleşmesi gereken tek şey, CPU anlık olarak durdurulduğunda sisteminizin tamamen "bilinçli" olmasıdır - çok fazla fark görmezsiniz. Bununla birlikte, güç tasarrufu önemli ölçüde olabilir. Sadece CPU'nuz boştayken binlerce "mikro-şekerleme" almasını düşünün.

CPU-T Durumları (kısıtlama)

Bunlar "C durumları" na çok benzer (aynı HLT talimatı kullanılır), ancak fark şu ki, kısma "sizin tarafınızdan zorlanıyor" (her 4. döngü, "C durumlarının aksine bir uyku döngüsü olmaya zorlanıyor gibi) "yukarıdaki sistem yükü tarafından otomatik olarak belirlenir). Frekansın DEĞİŞTİRİLMEDİĞİNE dikkat edin ... aşağıdaki "P durumları" na bakın.

CPU-P Durumları (performans)

Bugünlerde birçok işlemcide (özellikle dizüstü bilgisayarlarda) saat frekansı "anında" yavaşlayabilir. Bu, büyük güç tasarrufu sağlar. Intel buna "SpeedStep", AMD ise "Cool'n'Quiet" veya "PowerNow" diyor. Daha genel olarak bu durumlara "P durumları" denir. Neredeyse kesinlikle BIOS'a girip bu özelliği ilk önce CPU'nuz için etkinleştirmeniz gerekecek!

** Bazı tüketim kriterleri: **

Yukarıdaki CPU durumlarından güç tasarrufu nedir? Aşağıdaki veriler AMD web sitesinden alınmıştır. 1 MB L2 önbelleğe sahip bir AMD 64 3400 + / 2200MHz düşünün. Bu arada, ben buradayken, AMD adlandırma kuralından şikayet etmeme izin verin. 3400+ sayısı jack squat anlamına gelmez. Bu sadece AMD'nin bu işlemcinin 3400MHz'de çalışan bir Intel Pentium-4'e "benzediğini" söylemesinin yolu. Sanırım bu pazar payını kaybetmemenin yolu. İşte P ve T durumu güç tüketimi değerleri (C durumu, T durumuyla aynı HLT komutudur):

  • Performans Durumu 0 (Tamamen Aktif) (2200MHz): 89 Watt
  • Performans Durumu 1 (2000MHz): 70 Watt
  • Performans Durumu 2 (800MHz): 35 Watt
  • Kısık (HLT komutu): 2,2 Watt

Daha fazla okuma için bazı referanslar

DÜZENLEMELER

[EDIT # 1]: Etrafta dolaşırken, bazı forumlarda başka yayınlar da buldum (OpenSuse forumu aradığınızla alakalı görünüyor) ve bunun Windows için olduğu kadar Linux için de bir sorun olmadığını ve özellikle oyunlarda. Ben de ilgili görünüyor RedHat posta listelerinde iki posta ( ilk bir ve ikinci bir [takip] ) bazı bilgiler kazdık . Şu anda içindeki bilgileri araştırıyorum.

[EDIT # 2]: Sorunu biraz araştırdım ve farkında olmadığım bir ACPI yoksa, Linux'ta çekirdek bir park mekanizması olmadığından giderek daha fazla eminim . Bazı ilginç bulgular cpu doğrudan manipülasyon için izin yazılım bazı parçaları ve benzeri, üzerine çalışan işlemlerdir cpuset , numactl ve son ama en az, cpufreq . Araştırmamla devam edeceğim.


Bazı Android cihazların bir veya daha fazla çekirdeği devre dışı bırakabileceğini düşünüyorum. Bunun doğrudan donanım veya çekirdek tarafından yönetilip yönetilmediğinden emin değilim.
Leo

2

Burada , çekirdek parkın güç tasarrufu için c-durumlarını ilerletmek için çekirdeklerin ayarlanmasıyla ilgili olduğunu belirten bir makale var . c-durumları durma komutu ile ayarlanır. NlightNFotis'in belirttiği gibi, linux'un ACPI desteği kullanılarak yapılır.

Intel tarafından yazılmış powertop( sudo apt-get install powertop) açık kaynak programı ile çekirdeklerin linux tarafından yerleştirildiği durumlar hakkında daha fazla bilgi edinebilirsiniz . Eğer donanım çeşitli c-devletler destekler sizin çekirdekler Ubuntu Linux bu düşük güç durumlarından koymak ne zaman yüzdesi söylemek gerekir. Aşağıya bakınız. C sayısı ne kadar yüksek olursa, o kadar çok güç tasarrufu sağlanır.

Ayrıca çok daha fazla bilgi sağlar.

Ayrıca, Windows gibi, yapılacak iş olduğunda Linux çekirdeklerin çalışma sıklığını talep miktarına, güç tasarrufu arzusuna vb.

Dizüstü bilgisayarım askıya alınabilse de c-durumlarını desteklemiyor. Atom işlemcili küçük bir Acer, aşağıda gördüğünüz gibi onları destekliyor.

resim açıklamasını buraya girin

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.