Skip to content

emka.web.id

Menu
  • Home
  • Indeks Artikel
  • Tutorial
  • Tentang Kami
Menu

TLB Flushes Santai Sedang Dikerjakan Untuk Linux Sebagai Pengoptimalan Kinerja Lainnya

Posted on July 19, 2022 by Syauqi Wiryahasana
Nadav Amit yang sebelumnya mempelopori upaya mengurangi TLB flushes yang tidak perlu, TLB flushes bersamaan, dan pengoptimalan level rendah lainnya selama bertahun-tahun. Pekerjaan terbaru sekarang pada flush TLB "santai" sebagai peningkatan kinerja tingkat rendah lainnya. Nadav Amit dari VMware telah mengambil pekerjaan pada flush TLB "santai" ketika izin ditambahkan sebagai pekerjaan lanjutan untuk pekerjaan sebelumnya seputar menghindari flush TLB yang tidak perlu. Dia menjelaskan: Patch-set ini memungkinkan userfaultfd untuk memetakan halaman sebagai writeable langsung pada ioctl write-(un)protect, sambil mengatasi perilaku yang tidak diinginkan yang terjadi ketika seseorang menggunakan userfaultfd write-unprotect atau mprotect untuk menambahkan izin. Itu juga melakukan beberapa pembersihan dan optimasi mikro di sepanjang jalan. Perubahan utama yang dilakukan di set-tambalan - khusus x86, saat ini - adalah pengenalan flush TLB "santai" ketika izin ditambahkan. Setelah TLB flush "santai", generasi TLB mm dimajukan dan TLB lokal di-flush, tetapi tidak ada penembakan TLB yang terjadi. Jika kesalahan halaman palsu terjadi dan generasi lokal TLB ditemukan tidak sinkron dengan generasi mm, pembersihan TLB penuh dilakukan pada inti kesalahan untuk mencegah kesalahan halaman palsu lebih lanjut. Sampai batas tertentu "flush santai" mirip dengan perubahan yang diusulkan beberapa waktu lalu untuk pemetaan kernel. Namun, itu tidak memiliki interaksi rumit dengan penangan NMI. Pembilasan TLB yang santai dirangkum lebih lanjut dalam pesan tambalannya: Perkenalkan konsep flush TLB yang ketat dan santai. Pembilasan TLB santai adalah pembilasan TLB yang dapat dilewati tetapi dapat menyebabkan penurunan kinerja. Ini tergantung pada kode lengkung (di tambalan berikutnya) untuk menangani flushes yang rileks dengan benar. Salah satu perilaku tersebut adalah menyiram TLB lokal dengan penuh semangat dan TLB jarak jauh dengan malas. Eksperimen kinerja terlihat cukup positif dengan penghematan hingga 44% yang diukur dalam siklus mprotect(PROT_READ|PROT_WRITE) atau sekitar 6% lebih sedikit siklus CPU hanya dengan mprotect(PROT_READ) .

Rincian lebih lanjut dalam seri tambalan LKML ini.

Itulah berita seputar TLB Flushes Santai Sedang Dikerjakan Untuk Linux Sebagai Pengoptimalan Kinerja Lainnya, semoga bermanfaat. Disadur dari Phoronix.com.
Seedbacklink

Recent Posts

TENTANG EMKA.WEB>ID

EMKA.WEB.ID adalah blog seputar teknologi informasi, edukasi dan ke-NU-an yang hadir sejak tahun 2011. Kontak: kontak@emka.web.id.

©2024 emka.web.id Proudly powered by wpStatically