CONFIG_PARAVIRT_SPINLOCK adalah lapisan paravirtualisasi untuk spinlock. Ini merupakan opsi kernel Linux yang dirancang untuk lingkungan virtual dengan dukungan paravirtualisasi. Pada sistem operasi Alibaba Cloud Linux, opsi kernel CONFIG_PARAVIRT_SPINLOCK dinonaktifkan secara default. Jika Anda tidak yakin cara menyelesaikan penurunan kinerja kernel, jangan aktifkan opsi CONFIG_PARAVIRT_SPINLOCK. Topik ini menjelaskan penyebab dan solusi untuk penurunan kinerja yang mungkin terjadi jika opsi kernel CONFIG_PARAVIRT_SPINLOCK diaktifkan.
Deskripsi Masalah
Setelah mengaktifkan opsi kernel CONFIG_PARAVIRT_SPINLOCK pada instance Elastic Compute Service (ECS) dengan beberapa vCPU, kinerja aplikasi yang bersaing intensif untuk mendapatkan lock akan sangat terpengaruh. Sebagai contoh, kemampuan memproses koneksi singkat dalam aplikasi NGINX berkurang secara signifikan. Penurunan kinerja ini dapat diamati dalam aplikasi.
Penyebab
Mengaktifkan opsi CONFIG_PARAVIRT_SPINLOCK memperkenalkan overhead tambahan dan meningkatkan kompleksitas mekanisme spinlock kernel, sehingga menyebabkan penurunan kinerja kernel.
Spinlock adalah mekanisme sinkronisasi yang mencegah sumber daya bersama diakses oleh beberapa thread atau proses secara bersamaan, membantu memastikan konsistensi data.
Solusi
Jalankan perintah berikut untuk memeriksa pengaturan
CONFIG_PARAVIRT_SPINLOCKdalam file konfigurasi kernel yang tersimpan di direktori/boot:grep CONFIG_PARAVIRT_SPINLOCK /boot/config-$(uname -r)Periksa keluaran perintah untuk menentukan apakah opsi
CONFIG_PARAVIRT_SPINLOCKdiaktifkan untuk kernel.CONFIG_PARAVIRT_SPINLOCKS=y: OpsiCONFIG_PARAVIRT_SPINLOCKdiaktifkan.CONFIG_PARAVIRT_SPINLOCKS is not set: OpsiCONFIG_PARAVIRT_SPINLOCKdinonaktifkan.
(Kondisional diperlukan) Jika opsi
CONFIG_PARAVIRT_SPINLOCKdiaktifkan, kompilasi ulang dan instal ulang kernel, lalu nonaktifkan opsiCONFIG_PARAVIRT_SPINLOCK.CatatanBerhati-hatilah saat mengubah konfigurasi kernel karena melibatkan lapisan bawah dan komponen kunci. Operasi ini memiliki risiko jika Anda tidak terbiasa dengan kompilasi atau instalasi kernel. Jika Anda tidak yakin cara mengedit file konfigurasi kernel atau mengompilasi dan menginstal kernel, submit a ticket untuk menghubungi dukungan teknis Alibaba Cloud.