Aracılığıyla paylaş


/volatileMetadata (Geçici bellek erişimlerinde meta veri oluşturma)

ARM64 üzerinde x64 kodu çalıştırırken performansı geliştirmek için geçici bellek erişimleri için meta veriler oluşturun.

Söz dizimi

/volatileMetadata[-]

Bağımsız değişkenler

-
öğesini kapatır /volatileMetadata. Bu durum, kodunuz ARM64'te öykünme modunda çalıştığında performansın daha kötü olmasına neden olabilir çünkü öykünücü kötümser bir şekilde her yük/deponun bir engele ihtiyacı olduğunu varsayar.

Açıklamalar

Visual Studio 2019 16.10'dan başlayarak, /volatileMetadata x64 kodu oluşturulurken varsayılan olarak açıktır. Geçici bellek adreslerini tanımlayan meta veriler oluşturarak ARM64 üzerinde x64 kodunun öykünme performansını geliştirir. Öykünücü, geçici olmadığını bildiği erişimlerde alma/yayın semantiği kullanmayarak performansı geliştirmek için bu meta verileri kullanabilir. Öykünücü, bu meta veriler olmadan tüm adreslerin geçici olduğunu ve alma ve yayın semantiğini kullandığını varsayar.

Bunun bir yan etkisi /volatileMetadata , oluşturulan kodda kullanılan makroları görebilmenizdir npad . Bu makro, bellek engeliyle ilişkilendirilecek bir adres oluşturan belirtilen sayıda NOP yönergeye genişletir. Bu adres daha sonra meta verilere kaydedilir ve bu adrese erişmek için alma/yayın semantiğinin kullanılması gerektiğini belirtir.

/volatileMetadata x86 hedeflendiğinde yoksayılır.

/volatileMetadata kullanılarak /volatileMetadata-devre dışı bırakılabilir.

Gereksinimler

Visual Studio 2019 sürüm 16.10 veya üzeri.

Ayrıca bkz.

MSVC Derleyicisi Seçenekleri
MSVC Derleyicisi Komut Satırı Söz Dizimi