Langsung ke konten

Arsip

Pengurutan Memori

1 artikel
Linux 18 Sep 2026 6 min read

membarrier Memindahkan Biaya Pengurutan Memori ke Jalur Koordinasi yang Jarang

Full hardware memory barrier pada jalur yang sangat sering dieksekusi dapat membebankan biaya pada setiap operasi, meskipun koordinasi lintas thread hanya terjadi sesekali. Linux membarrier() menyediakan penempatan biaya yang berbeda: jalur koordinasi yang jarang dapat meminta event pengurutan pada sekumpulan thread tertentu, sementara jalur yang sering dapat cukup memakai pengurutan pada level compiler dalam desain yang sesuai. Mekanisme ini bukan pengganti umum untuk atomic, lock, atau memory model suatu bahasa pemrograman. membarrier() adalah primitive sinkronisasi khusus Linux untuk desain yang correctness-nya sudah memiliki pasangan yang presisi antara jalur yang sering dan jalur koordinasi yang jarang.