Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Gere metadados para acessos de memória voláteis para melhorar o desempenho ao executar o código x64 ou x86 no ARM64.
Sintaxe
/volatileMetadata[-]
Comentários
A partir do Visual Studio 2022 18.6, /volatileMetadata está desativado por padrão e deve estar explicitamente habilitado. Para desabilitá-lo explicitamente, use /volatileMetadata-.
/volatileMetadata melhora o desempenho de emulação do código x64 e x86 no ARM64 gerando metadados que identificam endereços de memória voláteis. Um emulador pode usar esses metadados para melhorar o desempenho não usando a semântica de aquisição/liberação nos acessos que ele sabe que não são voláteis. Sem esses metadados, o emulador pressupõe que todos os endereços são voláteis e usa a semântica de aquisição e liberação.
Um efeito colateral é que /volatileMetadata você pode ver npad macros usadas no código gerado. Essa macro se expande para um número especificado de instruções que criam um endereço a ser associado a uma barreira de NOP memória. Esse endereço é então registrado nos metadados para indicar que a semântica de aquisição/liberação deve ser usada para acessá-lo.
Observação
No Visual Studio 2019 versão 16.10 até Visual Studio 2022, /volatileMetadata estava ativado por padrão. A partir do Visual Studio 2022 18.6, /volatileMetadata está desativado por padrão.
Requisitos
Visual Studio 2019 versão 16.10 ou posterior.
Confira também
Opções do compilador MSVC
Sintaxe da linha de comando do compilador MSVC