Pengembang Linux Membahas Peningkatan Tingkat Memori

Sudah di dalam kernel Linux ada dukungan awal untuk server memori berjenjang untuk menangani platform seperti yang memiliki Memori Persisten Intel Optane DC untuk dapat mempromosikan/menurunkan halaman ke kelas memori yang lebih lambat ketika RAM sistem yang cepat berada di bawah tekanan. Tetapi dengan semakin banyaknya server memori berjenjang yang muncul terutama dengan kelas memori HBM, Google dan vendor lain mendiskusikan penanganan antarmuka memori berjenjang Linux yang lebih baik.
Beberapa rilis kernel sebelumnya telah menawarkan promosi/demosi dasar halaman memori aktif/tidak aktif ke tingkat memori masing-masing. Wei Xu dari Google menyimpulkan beberapa kekurangan yang ada pada antarmuka dan kemungkinan perbaikan yang dapat dilakukan dengan kode ini hanya menjadi lebih kritis untuk bergerak maju terutama dengan Compute Express Link (CXL) dan teknologi lain yang masuk ke pasar.
Wei Xu menyimpulkan situasi saat ini sebagai:
* Kode inisialisasi tiering saat ini selalu menginisialisasi setiap node NUMA hanya-memori ke tier yang lebih rendah. Tetapi node NUMA memori-saja mungkin memiliki perangkat memori kinerja tinggi (misalnya perangkat DRAM terpasang melalui CXL.mem atau node memori-saja yang didukung DRAM pada mesin virtual) dan harus dimasukkan ke dalam tingkat atas.
* Hirarki tiering saat ini selalu menempatkan node CPU ke tier teratas. Tetapi pada sistem dengan perangkat HBM (misalnya memori GPU), node HBM NUMA hanya memori ini harus berada di tingkat atas, dan node DRAM dengan CPU lebih baik ditempatkan di tingkat bawah berikutnya.
* Juga karena hierarki tiering saat ini selalu menempatkan node CPU ke tingkat atas, ketika CPU ditambahkan panas (atau dihapus panas) dan memicu node memori dari CPU-kurang ke node CPU (atau sebaliknya), memori hierarki tiering akan berubah, meskipun tidak ada node memori yang ditambahkan atau dihapus. Hal ini dapat membuat hierarki tiering menjadi kurang stabil.
* Sebuah node tingkat yang lebih tinggi hanya dapat diturunkan ke node yang dipilih pada tingkat yang lebih rendah berikutnya, tidak ada node lain dari tingkat yang lebih rendah berikutnya. Perintah penurunan pangkat yang ketat dan berkode keras ini tidak berfungsi di semua kasus penggunaan (misalnya beberapa kasus penggunaan mungkin ingin mengizinkan penurunan pangkat lintas-socket ke simpul lain di tingkat penurunan pangkat yang sama dengan fallback ketika simpul penurunan pangkat yang diinginkan kehabisan ruang), dan telah menghasilkan permintaan fitur untuk sebuah antarmuka untuk mengesampingkan urutan penurunan pangkat per-node di seluruh sistem dari ruang pengguna.
* Tidak ada antarmuka untuk ruang pengguna untuk belajar tentang hierarki tingkat memori untuk mengoptimalkan alokasi memorinya. Pengembang kernel hulu lainnya telah sepakat bahwa ada ruang untuk perbaikan, termasuk para insinyur Intel yang mengakui ini yang mengerjakan banyak dari yang asli kode penanganan memori berjenjang untuk kernel.
Mereka yang tertarik dengan beberapa perbaikan yang disarankan dan diskusi seputar penanganan memori berjenjang Linux dapat melihat utas milis kernel ini untuk semua aktivitas.

Itulah berita seputar Pengembang Linux Membahas Peningkatan Tingkat Memori, semoga bermanfaat. Disadur dari Phoronix.com.