Modern mühendislik cihazları - endüstriyel IoT sensörlerine taşınabilir tıbbi monitörlerden - sorumlu tutmadan daha fazlasını isteyen işletim sistemleri; her miliwatt'ı dikkatlice sınıflandırmalı ve mühendislik uygulamaları için en verimli OS tasarımı olarak, OS, enerji tasarrufu ve güvenilirliklerini en aza indiren bir OS tasarlamaktadır.
Enerji Verimliliğinde İşletim Sisteminin Rolü
Bir işletim sistemi orkestralar donanım kaynakları ve kararları doğrudan güç kullanımını etkiler. Uygulama seviyesindeki optimizasyonlardan farklı olarak, OS'nin sistem çapında görünürlüke sahip olması: CPU frekansı, idle eyaletler, hafıza tahsisi ve periferik aktivite. İyi tasarlanmış bir enerji-aware OS, özellikle de değişken iş yükleri ile cihazlarda 30-50% oranında azalır.
OS, uygulama geliştiricilerinden soyut bir güç yönetimi de soyutlamalı. Her programın donanım uyku durumlarını yönetmesi yerine, çekirdek politika mekanizmaları sağlar (governors, güç kapak, cihaz çalıştırma süresi PM) gerçek zamanlı koşullara uyum sağlar. Bu politikadan ayırma sistemi, sistem bütünleştiricilerinin yeniden yaz yazılımı olmadan enerji davranışını ayarlamasına olanak sağlar.
Enerji-Efficient OS Design için temel teknikler
Dinamik gerilim ve Frekans Scaling (DVFS)
DVFS, OS seviyesi güç yönetiminin temel taşı olarak kalır.Reload talebine yanıt olarak, OS trades zirve performansına karşılık gelir. Modern DVFST:0) Şarj).
Ancak, DVFS etkinliği iş yüküne bağlıdır ve görevlerine özel olarak, ticaretten daha fazla ayrıntı için, bakınız:0)Linux Frekansı Scaling Belgeleri) ile ilgili olarak, donanım performansı sayacı ve görev için son çalışma DVFS'leri kullanarak daha fazla ayrıntıyı artırmak için.
Gelişmiş Uyku Devletler ve Idle Management
Bir işlemcinin hazır görevleri olmadığı zaman, OS düşük güç boş bir duruma geçiş yapmalıdır. Modern CPUlar, farklı uyanma oranları ve güç tasarrufu ile birden fazla uyku devleti (C-states) sunuyor. OS idle valisi, sensör girişi veya ağ paketleri için en fazla zaman beklemek için en derin uygun durumu seçer.
CPU'nun ötesinde, OS sistemi-kop-çip (SoC) bileşenleri yönetmek zorundadır: bellek kontrolörleri, interconnects ve periferiler her biri kendi kendine ait veya güçle yönetilen devletlere girebilirler.Güce güç yönetimi) olarak, gerçek zamanlı garantiler kullanılmadığında, bu iki kez de bu iyi niyetli bir kontroller için gereklidir.
Enerji Optimizasyonu için Görev Planlaması
Geleneksel planlama algoritmaları adilliğe veya bağlantıya öncelik verir. Enerji-aware programlarılayıcılar bir zamanlama hedefi olarak güç ekler: Teknikler şunları içerir:
- [FONT:0]Race-to-idle:) Tamam, mümkün olduğunca çabuk çalışır, sonra derin uykuya girer. Bu, uyku gücünün çok düşük olduğu patlama iş yükleri için de çalışır.
- [FONT:0)Enerji verimliliğine göre frekans seçimi:), zamanlamacı gerçek zamanlı görevler için son kısıtlamaları karşılayan en düşük frekansı alır.
- [FONT:0)Cluster göçü:[Döneticileri Üzerine (örneğin, ARM büyük.LITTLE), OS, ışık işleri ve büyük temelleri ağır yükler için yüksek verimli taşlara taşır.
Enerji-aware zamanlaması, temeller ve hafıza erişim modelleri arasında ısıtılması için de dikkate alınmalıdır. Örneğin, önbellek hiyerarşisindeki verilere daha yakın bir şekilde hareket etmek hafıza gücünü azaltır.TheDANFLT:0)Linux Enerji-Aware Scheduling Belgeleri).
Memory ve I/O Power Management
Memory (DRAM) özellikle aktif erişim sırasında önemli gücü tüketmektedir. OS hafıza enerjisini azaltabilir:
- [FONT:0]Bank-aware tahsisi:[Dönetici banka çatışmalarından kaçınmak ve bankaların düşük güç modlarında kalmasına izin vermek için bellek bankalarının genelinde erişimleri yaymak.
- [FONT:0]Page kompaktion ve kümeleme: Aktif sayfalar daha az hafıza bölgelerine yerleştirilir, böylece kullanılmamış bölgeler kendi kendini ifade edenlere yerleştirilir.
- [FONT:0)NUMA-aware scheduling: Çok-socket sistemleri üzerinde, aynı düğümdeki parçaları ve verileri uzaktan hafıza trafiğini en aza indirmek için aynı şekilde tutmak.
I/O için, OS kömür ağı gibi teknikler kullanıyor, toplu disk yazıyor ve ACPI aracılığıyla kullanılmamış kontrolörleri bırakıyor: Birkaç milisaniye tarafından kesintiye uğramak, bir sensör okuma tarihini ihlal edebilir.
Gerçek Zaman ve Gömülü Sistemlerde Meydan Okunanlar
Enerji verimli bir OS tasarımı özellikle zor gerçek zamanlı tarihlerle tanışmalı mühendislik cihazları için talep ediyor - örneğin, bir robot kolunda bir motor kontrol sistemi veya uçuş kaydında bir veri satın alma sistemi. İşte enerji tasarrufları, son zamanlardan itibaren geri çekilmez.
Bir yaklaşım, uzun süre boyunca bir görev tamamlandıktan sonra, kalan slack frekansı azaltmak veya uyumak için kullanılır. Bu nedenle, daha kısa bir süre önce meydana gelen uyku durumlarının daha kısa sürede gerçekleşmesi gerekir.Eğer bir görev 100 μs içinde yanıt vermesi durumunda, OS 500 μs çıkış gecikmeden önce bir C-state giremez.
Interrupt handle ayrıca enerji etkiler. Bazı mikrokontroller, OS'nin bir sonraki zamanlama akışına kadar kesintiye uğramasına izin verir, daha uzun boş dönemlere izin verir. Ancak bu, jitter. mühendislerinin her özel uygulama için güç tasarrufu ve zamanlama hassasiyeti arasında ticarete ağırlık vermesi gerekir.
Gelişen Teknolojiler ve Gelecek Yollar
Mekanik Öngörücü Güç Yönetimi için Öğrenme
Geleneksel OS güç yönetimi sabit heuristics (örneğin, OS'nin proaktif olarak ayarlanmış frekanslara veya boş devletlere izin vermesi için politikaları zamanında değiştiren iş yük kalıplarına adapte etme potansiyeline sahiptir. Örneğin, bir sinir ağı gelecekteki CPU talebini tahmin edebilir ve sensör tetikleyicilerine göre tahmin edebilir, OS'nin proaktif olarak ayarlanmış frekanslara veya boş devletlere izin verir. Erken deneyler, en iyi statik valilere göre% 10-20 ek enerji tasarruflarını sunar.
Bununla birlikte, ML modellerini enerji kısıtlayıcı cihazlar üzerinde çalışan modeller kendi gücünü tüketmelidir. OS, düşük güç hızlandırıcısına veya hafif modellere (örneğin, karar ağaçları) uygun hale gelirken, AG güç yöneticilerinin standart bir özellik olarak öğrenmelerini bekleyebiliriz.
Low-Power Donanım Synergies
OS, donanımla sıkı entegrasyon olmadan maksimum enerji verimliliği elde edemez. Gelişmekte olan SoCs, iyi işlenmiş güç alanları, per-core gerilim düzenleyicileri ve derin uyku sırasında durumu koruyan sınırsız hafızaya ulaşamaz. OS, donanım hataları ve varyasyonları yaparken bu yetenekleri açığa çıkarmalı.
Yakındaki bilgisayar gibi teknolojiler (NTC) işlemcilerin çok düşük gerilimlerde koşmalarına izin verir, ancak OS'nin her iş yükü için en verimli temele sahip olması gerekir. ”Döneticileri gerektiren bir görev (örneğin, heterojen mimariler) OSB'nin, her iş yükleri için en iyi şekilde kullanabileceğiniz bir örnektir.
Başka bir umut verici yön, enerji tasarrufu sağlayan cihazlardır, güneş, titreşim veya RF kaynaklardan güç toplamaktır. Bu cihazlar sürekli güç kullanımında bir paradigma değişikliği gerektirir; OS güç çevrimleri boyunca hesaplamayı yönetmek, devletten güçlenmeden önce tasarruf etmek zorundadır. Bu, AG seviyesindeki kontrol mekanizmaları gerektirir.
Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç
Enerji verimli mühendislik cihazları için işletim sistemleri tasarlamak, DVFS, boş yönetim, zamanlama, hafıza ve I / O optimizasyonu ve gerçek zamanlı kısıtlamalara adapte olmak için çok boyutlu bir meydan okumadır. Başarılı tasarımlar bu teknikleri her cihazdan en yüksek seviyedeki enerji tasarrufu ve daha yüksek performansa, daha küçük form faktörlerine ve daha geniş bir şekilde entegre eder.