Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Generera metadata för flyktiga minnesåtkomster för att förbättra prestanda vid körning av x64- eller x86-kod på ARM64.
Syntax
/volatileMetadata[-]
Remarks
Från och med Visual Studio 2022 18.6 är /volatileMetadata inaktiverad som standard och måste vara explicit aktiverad. Om du vill inaktivera det uttryckligen använder du /volatileMetadata-.
/volatileMetadata förbättrar emuleringsprestandan för x64- och x86-kod på ARM64 genom att generera metadata som identifierar flyktiga minnesadresser. En emulator kan använda dessa metadata för att förbättra prestanda genom att inte använda hämta/släppa semantik på de åtkomster som den vet inte är flyktiga. Utan dessa metadata förutsätter emulatorn att alla adresser är flyktiga och använder hämta och släppa semantik.
En bieffekt av /volatileMetadata är att du kan se npad makron som används i den genererade koden. Det här makrot utökas till ett angivet antal NOP instruktioner som skapar en adress som ska associeras med en minnesbarriär. Den adressen registreras sedan i metadata för att indikera att hämta/släppa semantik ska användas för att komma åt den.
Anmärkning
I Visual Studio 2019 version 16.10 till och med Visual Studio 2022 var /volatileMetadata på som standard. Från och med Visual Studio 2022 18.6 är /volatileMetadata inaktiverad som standard.
Requirements
Visual Studio 2019 version 16.10 eller senare.
Se även
MSVC-kompilatoralternativ
MSVC-kompilator Command-Line syntax