Hampir setiap hari untuk mencari patch kernel Linux yang menarik (dan kepada projek sumber terbuka lain juga!) oleh jurutera sumber terbuka Intel yang besar. Penyeberangan terbaharu radar saya adalah untuk membenarkan pemacu”intel_idle”Linux berjalan di dalam tetamu mesin maya (VM).
Jurutera Intel Linux terkenal Arjan van de Ven telah menyiarkan satu set patch untuk membenarkan sokongan pemacu intel_idle untuk mesin maya. Tampalan ini dipasangkan dengan tampung sokongan C0.2 yang akan datang seharusnya memberikan peningkatan prestasi yang bagus kepada VM, terutamanya di sekitar mereka yang mengalami penggunaan I/O berat.
Arjan dijelaskan dengan tampalan:
intel_idle menyediakan keadaan CPU Idle (untuk penjimatan kuasa dalam melahu) kepada rangka kerja cpuidle, berdasarkan jadual per-cpu digabungkan dengan penghitungan perkakasan terhad. Gabungan cpuidle dan intel_idle ini memberikan gelagat dinamik di mana penjimatan kuasa dan impak prestasi seimbang secara dinamik dan di mana set tombol generik disediakan dalam sysfs untuk pengguna menala heuristik (dan mendapatkan statistik dll)
Walau bagaimanapun, intel_idle pada masa ini tidak sokongan berjalan di dalam tetamu VM, dan kernel linux kembali kepada sama ada melahu berasaskan ACPI (jika disokong oleh hypervisor/bios maya) atau hanya kaedah melahu berasaskan x86 fallback”hlt”lalai… yang diperkenalkan dalam siri kernel 1.2… dan tidak mempunyai semua tingkah laku dinamik, kawalan pengguna dan statistik yang cpuidle bawa.
Walaupun ini jelas berfungsi, ia tidak bagus dan kami boleh melakukan yang lebih baik untuk pengguna dengan menghubungkan intel_idle ke dalam rangka kerja cpuidle juga untuk kes”dalam tetamu”. Dan bukan sahaja tidak bagus untuk pengguna, ia juga tidak optimum dan tidak mempunyai dua keupayaan utama yang disokong oleh bekas logam terdedah:
1) Keupayaan untuk mengepam TLB untuk tempoh terbiar yang sangat lama, untuk mengelakkan kebangkitan IPI yang mahal (dan kependaman tinggi) kemudian, vCPU terbiar apabila proses yang biasa dijalankan pada vCPU terbiar melakukan munmap atau operasi serupa. Mengelakkan IPI kependaman tinggi membantu mengelakkan kegelisahan prestasi.
2) Keupayaan untuk menggunakan keadaan terbiar Intel C0.2 baharu dan bukannya mengundi untuk tempoh terbiar yang sangat singkat untuk menjimatkan kuasa (dan jejak karbon)Siri tampalan ini menambah sokongan asas untuk dijalankan dalam tetamu VM kepada pemacu intel_idle, dan kemudian menangani kekurangan pertama ini. Jurang C0.2 akan diperbaiki dengan tampalan tambahan kecil selepas sokongan C0.2 digabungkan secara berasingan.
Kerja yang bagus dan akan menarik untuk diuji sebaik tampung sokongan C0.2 telah juga bersedia untuk memanfaatkan pelayan Intel Xeon Scalable terkini.