/arch
(x64)
x64 üzerinde kod oluşturma mimarisini belirtir. Diğer hedef mimariler hakkında /arch
daha fazla bilgi için bkz /arch
. (x86),/arch
(ARM64)ve /arch
(ARM).
Sözdizimi
/arch:
[SSE2
AVX10.1
|AVX512
|||AVX2
|SSE4.2
AVX
]
Bağımsız değişkenler
/arch:SSE2
Intel Streaming SIMD Extensions 2'yi etkinleştirir. Seçenek belirtilmezse /arch
varsayılan yönerge kümesi SSE2'dir.
/arch:SSE4.2
Intel Streaming SIMD Extensions 4.2'yi etkinleştirir.
/arch:AVX
Intel Gelişmiş Vektör Uzantıları'nı etkinleştirir.
/arch:AVX2
Intel Advanced Vector Extensions 2'i etkinleştirir.
/arch:AVX512
Intel Advanced Vector Extensions 512'i etkinleştirir.
/arch:AVX10.1
Intel Advanced Vector Extensions 10 sürüm 1'i etkinleştirir.
Açıklamalar
bu /arch
seçenek, Intel ve AMD işlemcilerinde kullanılabilen vektör hesaplaması için belirli yönerge kümesi uzantılarının kullanılmasını sağlar. Genel olarak, daha yakın zamanda tanıtılan işlemciler eski işlemciler tarafından desteklenenlerin ötesinde uzantıları desteklese de, bir yönerge kümesi uzantısı kullanarak kod yürütmeden önce belirli bir işlemcinin belgelerine başvurmanız veya kullanma yönerge kümesi uzantısı desteği için test __cpuid
kullanmanız gerekir. Daha sık kullanılan CPU özelliklerini denetlemek için iç öğesini de kullanabilirsiniz __check_isa_support
.
/arch
yalnızca yerel işlevler için kod oluşturmayı etkiler. Derlemek için kullandığınızda /clr
, /arch
yönetilen işlevler için kod oluşturma üzerinde hiçbir etkisi olmaz.
İşlemci uzantıları aşağıdaki özelliklere sahiptir:
Varsayılan mod, skaler kayan nokta ve vektör hesaplamaları için SSE2 yönergelerini kullanır. Bu yönergeler tek duyarlıklı, çift duyarlıklı ve 1, 2, 4 veya 8 baytlık tamsayı değerlerinin yanı sıra tek duyarlıklı ve çift duyarlıklı skaler kayan nokta değerlerinden oluşan 128 bit vektörlerle hesaplamaya olanak tanır.
SSE4.2
kayan nokta skaler, vektör ve tamsayı vektör hesaplamaları için SSE yönergelerinin tamamını kullanır.AVX
vektör ve kayan nokta skaler yönergeleri için alternatif bir yönerge kodlaması kullanıma sunulmuştur. 128 bit veya 256 bit vektörlere izin verir ve tüm vektör sonuçlarını tam vektör boyutuna sıfır genişletir. (Eski uyumluluk için, SSE stili vektör yönergeleri bit 127'nin ötesindeki tüm bitleri korur.) Kayan nokta işlemlerinin çoğu 256 bit'e genişletilir.AVX2
çoğu tamsayı işlemini 256 bit vektörlere genişletir ve Birleşik Çarpma-Ekle (FMA) yönergelerinin kullanılmasını sağlar.AVX-512
512 bit vektörler, maskeleme, katıştırılmış yuvarlama/yayın ve yeni yönergelere izin veren başka bir yönerge kodlama formu eklendi. içinAVX-512
varsayılan vektör uzunluğu 512 bittir ve bayrağı kullanılarak 256 bit olarak/vlen
değiştirilebilir.AVX10.1
üzerine daha fazla yönergeAVX-512
ekler. içinAVX10.1
varsayılan vektör uzunluğu 256 bittir ve bayrağı kullanılarak 512 bit olarak/vlen
değiştirilebilir.
Her /arch
seçenek, bu seçenekle ilişkilendirilmiş diğer vektör dışı yönergelerin kullanımını da etkinleştirebilir. Belirli BMI yönergelerinin belirtildiğinde /arch:AVX2
kullanılması örnek olarak verilmiştir.
__AVX__
Ön işlemci simgesi , , /arch:AVX2
/arch:AVX512
veya /arch:AVX10.1
derleyici seçeneği belirtildiğinde /arch:AVX
tanımlanır.
__AVX2__
Ön işlemci simgesi , /arch:AVX512
veya /arch:AVX10.1
derleyici seçeneği belirtildiğinde /arch:AVX2
tanımlanır.
__AVX512F__
, __AVX512CD__
, , __AVX512BW__
, __AVX512DQ__
ve __AVX512VL__
önişlemci simgeleri, veya /arch:AVX10.1
derleyici seçeneği belirtildiğinde /arch:AVX512
tanımlanır.
__AVX10_VER__
Derleyici seçeneği belirtildiğinde /arch:AVX10.1
ön işlemci simgesi tanımlanır. Derleyicinin hedeflediğini AVX10 sürümünü gösterir. Daha fazla bilgi için bkz . Önceden tanımlanmış makrolar.
Bu /arch:AVX2
seçenek Visual Studio 2013 Güncelleştirme 2, sürüm 12.0.34567.1'de sunulmuştur.
için /arch:AVX512
sınırlı destek Visual Studio 2017'ye eklendi ve Visual Studio 2019'da genişletildi.
desteği /arch:AVX10.1
Visual Studio 2022'ye eklendi.
Visual Studio'da /arch
derleyici seçeneğini ayarlamak için
Proje için Özellik Sayfaları iletişim kutusunu açın. Daha fazla bilgi için bkz . Visual Studio'da C++ derleyicisi ve derleme özelliklerini ayarlama.
Yapılandırma Özellikleri>C/C++>Kod Oluşturma özellik sayfasını seçin.
Gelişmiş Yönerge Kümesini Etkinleştir özelliğini değiştirin.
Bu derleyici seçeneğini program üzerinden ayarlamak için
Ayrıca bkz.
/arch
(En Düşük CPU Mimarisi)
MSVC derleyici seçenekleri
MSVC derleyicisi komut satırı söz dizimi