Elemen <GCHeapAffinitizeMask>
Menentukan afinitas antara tumpukan GC dan prosesor individu.
<konfigurasi>
<runtime>
<GCHeapAffinitizeMask>
Sintaks
<GCHeapAffinitizeMask
enabled="nnnn"/>
Atribut dan elemen
Bagian berikut menjelaskan atribut, elemen turunan, dan elemen induk.
Atribut
Atribut | Deskripsi |
---|---|
enabled |
Atribut yang diperlukan. Menentukan afinitas antara tumpukan GC dan prosesor individual. |
atribut yang diaktifkan
Nilai | Deskripsi |
---|---|
nnnn |
Nilai desimal yang membentuk bitmask yang mendefinisikan afinitas antara tumpukan GC server dan prosesor individu. |
Elemen anak
Tidak ada.
Elemen induk
Elemen | Deskripsi |
---|---|
configuration |
Elemen akar di setiap file konfigurasi yang digunakan oleh runtime bahasa umum dan aplikasi .NET Framework. |
runtime |
Berisi informasi tentang pengikatan assembly dan pengumpulan sampah. |
Keterangan
Secara default, utas GC server diasosiasikan dengan CPU masing-masing sehingga ada satu heap GC, satu utas GC server, dan satu utas GC server latar belakang untuk masing-masing prosesor. Semenjak .NET Framework 4.6.2, Anda dapat menggunakan elemen GCHeapAffinitizeMask untuk mengontrol afinitas di antara tumpukan GC server dan prosesor saat jumlah tumpukan dibatasi oleh elemen GCHeapCount.
GCHeapAffinitizeMask biasanya digunakan bersama dengan dua tanda lainnya:
GCNoAffinitize, yang mengontrol apakah utas/tumpukan GC server dikaitkan dengan CPU. Atribut
enabled
dari elemen GCNoAffinitize harus berupafalse
(nilai defaultnya) agar pengaturan GCHeapAffinitizeMask dapat digunakan.GCHeapCount, yang membatasi jumlah tumpukan yang digunakan oleh proses untuk GC server. Secara default, ada satu tumpukan untuk setiap prosesor.
nnnn adalah masker bit yang dinyatakan sebagai nilai desimal. Bit 0 dari byte 0 mewakili prosesor 0, bit 1 dari byte 0 mewakili prosesor 1, dan seterusnya. Contohnya:
<GCHeapAffinitizeMask enabled="1023"/>
Nilai 1023 adalah 0x3FF atau 0011 1111 1111b. Prosesnya menggunakan 10 prosesor, mulai dari prosesor 0 hingga prosesor 9.
Contoh
Contoh berikut menunjukkan bahwa aplikasi menggunakan server GC dengan 10 tumpukan/utas. Karena Anda tidak ingin tumpukan tersebut tumpang tindih dengan tumpukan dari aplikasi lain yang berjalan di sistem, gunakan GCHeapAffinitizeMask untuk menentukan bahwa proses harus menggunakan CPU 0 hingga 9.
<configuration>
<runtime>
<gcServer enabled="true"/>
<GCHeapCount enabled="10"/>
<GCHeapAffinitizeMask enabled="1023"/>
</runtime>
</configuration>
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk