Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
DirectML, Windows'un bir sistem bileşeni olarak dağıtılır ve Windows işletim sisteminin bir parçası olarak Windows 10, sürüm 1903 (10.0; Derleme 18362) ve daha yenilerinde bulunur.
DirectML sürüm 1.4.0'dan başlayarak DirectML, directML'nin sabit bir sürümünü kullanmak isteyen veya Windows 10'un eski sürümlerinde çalışan uygulamalar için kullanışlı olan tek başına yeniden dağıtılabilir paket olarak da kullanılabilir (bkz. Microsoft.AI.DirectML).
DirectML , anlamsal sürüm oluşturma kurallarını izler. Yani, sürüm numaraları biçimindedir major.minor.patch. DirectML'nin ilk sürümü 1.0.0 sürümüne sahiptir.
Sürüm tablosu
| DirectML sürümü | Desteklenen özellik düzeyi (bkz . DirectML özellik düzeyi geçmişi) | DML_TARGET_VERSION | İlk olarak (OS) içinde kullanılabilir | "İlk kez kullanılabilir olduğunda (Yeniden Dağıtılabilir)" |
|---|---|---|---|---|
| 1.15.4 | DML_FEATURE_LEVEL_6_4 | 0x6400 |
Mevcut Değil | DirectML-1.15.4 |
| 1.15.3 | DML_FEATURE_LEVEL_6_4 | 0x6400 |
Mevcut Değil | DirectML-1.15.3 (İngilizce) |
| 1.15.2 | DML_FEATURE_LEVEL_6_4 | 0x6400 |
Mevcut Değil | DirectML-1.15.2 |
| 1.15.1 | DML_FEATURE_LEVEL_6_4 | 0x6400 |
Mevcut Değil | DirectML-1.15.1 (İngilizce) |
| 1.15.0 | DML_FEATURE_LEVEL_6_4 ve DML_FEATURE_LEVEL_6_3 |
0x6400 veya 0x6300 |
Mevcut Değil | DirectML-1.15.0 |
| 1.13.1 | DML_FEATURE_LEVEL_6_2 | 0x6200 |
Mevcut Değil | DirectML-1.13.1 (İngilizce) |
| 1.13.0 | DML_FEATURE_LEVEL_6_2 | 0x6200 |
Mevcut Değil | DirectML-1.13.0 |
| 1.12.0 | DML_FEATURE_LEVEL_6_1 | 0x6100 |
Mevcut Değil | DirectML-1.12.0 |
| 1.11.0 | DML_FEATURE_LEVEL_6_0 | 0x6000 |
Mevcut Değil | DirectML-1.11.0 |
| 1.10.0 | DML_FEATURE_LEVEL_5_2 | 0x5200 |
Mevcut Değil | DirectML-1.10.0 |
| 1.9.0 | DML_FEATURE_LEVEL_5_1 | 0x5100 |
Mevcut Değil | DirectML-1.9.0 |
| 1.8.0 | DML_FEATURE_LEVEL_5_0 | 0x5000 |
Windows 11 (Derleme 10.0.22621; 22H2) | DirectML-1.8.0 |
| 1.7.0 | DML_FEATURE_LEVEL_4_1 | 0x4100 |
Mevcut Değil | DirectML-1.7.0 |
| 1.6.0 | DML_FEATURE_LEVEL_4_0 | 0x4000 |
Windows 11 (Derleme 10.0.22000; 21H2) | DirectML-1.6.0 |
| 1.5.0 | DML_FEATURE_LEVEL_3_1 | 0x3100 |
Mevcut Değil | DirectML-1.5.0 |
| 1.4.01 | DML_FEATURE_LEVEL_3_0 | 0x3000 |
Mevcut Değil | DirectML-1.4.0 |
| 1.1.0 | DML_FEATURE_LEVEL_2_0 | 0x2000 |
Windows 10, sürüm 2004 (10.0; Derleme 19041) (Windows 10 Mayıs 2020 Güncelleştirmesi). Diğer adıyla "20H1". | Mevcut Değil |
| 1.0.0 | DML_FEATURE_LEVEL_1_0 | 0x1000 |
Windows 10, sürüm 1903 (10.0; Derleme 18362) (Windows 10 Mayıs 2019 Güncelleştirmesi). Diğer adıyla "19H1". | Mevcut Değil |
1 DirectML'nin 1.2.0 ve 1.3.0 ara sürümleri yaygın olarak kullanıma sunulmadı.
DirectML hedef sürümünü seçme
Kolaylık sağlamak için, üst bilgi dosyasındaki DirectML.h bazı özellikler, makronun DML_TARGET_VERSION değerine bağlı olarak koşullu olarak bildirilir. Makroyu DML_TARGET_VERSION belirli değerlere ayarlayarak, uygulamasının DirectML.h bölümlerini hariç tutabilirsiniz.
Bu, daha yeni bir DirectML.h kopyası kullanıyorsanız, ancak DirectML ikili dosyasının daha düşük bir sürümünü hedefliyorsanız, yararlı olabilir. Çünkü bu, seçilen hedef düzeyin ötesindeki özellikleri kullanma girişimlerinin derlenmemesini sağlar. Bu mekanizma makroya NTDDI_VERSION benzer (bkz. Koşullu bildirimler için makrolar).
Makro için geçerli değerler aşağıdadır DML_TARGET_VERSION .
| DML_HEDEF_SÜRÜM | Etki |
|---|---|
0x6400 |
DirectML'nin 1.15.0'dan yeni bir sürümünü gerektiren tüm özellikler DirectML.hdışında tutulur. |
0x6300 |
|
0x6200 |
DirectML'nin 1.13.0'dan yeni bir sürümünü gerektiren tüm özellikler DirectML.hdan hariç tutulur. |
0x6100 |
DirectML'nin 1.12.0'dan daha yeni bir sürümünü gerektiren özellikler DirectML.hhariç tutulur. |
0x6000 |
DirectML'nin 1.11.0'dan yeni bir sürümünü gerektiren tüm özellikler DirectML.hhariç tutulur. |
0x5200 |
1.10.0'dan daha yeni bir DirectML sürümünü gerektiren tüm özelliklerDirectML.hdışında tutulur. |
0x5100 |
1.9.0'dan daha yeni bir DirectML sürümünü gerektiren özellikler DirectML.h burada yer almaz. |
0x5000 |
DirectML'nin 1.8.0'dan yeni bir sürümünü gerektiren tüm özellikler DirectML.h hariç tutulur. |
0x4100 |
1.7.0'dan daha yeni bir DirectML sürümü gerektiren tüm özellikler DirectML.h'den hariç tutulur. |
0x4000 |
1.6.0'dan daha yeni bir DirectML sürümünü gerektiren tüm özellikler, DirectML.h hariç tutulur. |
0x3100 |
1.5.0'dan daha yeni bir DirectML sürümü gerektiren tüm özellikler DirectML.hhariç tutulur. |
0x3000 |
DirectML'nin 1.4.0'dan daha yeni bir sürümünü gerektiren tüm özellikler DirectML.hhariç tutulur. |
0x2000 |
DirectML'nin 1.1.0'dan yeni bir sürümünü gerektiren tüm özellikler DirectML.h hariç tutulur. |
0x1000 |
1.0.0'dan yeni bir sürümünü gerektiren DirectML'nin tüm özellikleri DirectML.hdışında bırakılır. |
| Ayarlanmadı | Hedef sürüm sizin için otomatik olarak seçilir. Ayrıntılar için aşağıya bakın. |
Ayarlanmadıysa DML_TARGET_VERSION, o zaman aşağıdakiler tarafından otomatik olarak seçilir.
-
DML_TARGET_VERSION_USE_LATESTMakro tanımlanmışsa en son hedef sürüm seçilir. - Aksi takdirde, hedef sürüm makronun
NTDDI_VERSIONdeğerine göre seçilir.-
NTDDI_WIN10_ZN, hedef sürümüne neden olur0x6000. -
NTDDI_WIN10_NI, hedef sürümüne neden olur0x5000. -
NTDDI_WIN10_CO, hedef sürümüne neden olur0x4000. -
NTDDI_WIN10_FE, hedef sürümüne neden olur0x3000. -
NTDDI_WIN10_VB, hedef sürümüne neden olur0x2000. -
NTDDI_WIN10_19H1, hedef sürümüne neden olur0x1000. - Tanımlanmamışsa
NTDDI_VERSION, en son hedef sürüm (belirtilmiş gibiDML_TARGET_VERSION_USE_LATEST) seçilir.
-
Örnek
Windows Yazılım Geliştirme Seti'nin (SDK) 10.0.19041.0 (Windows 10, sürüm 2004) sürümünü kullanan bir uygulamayı düşünün. Yukarıdaki tablodan, bunun karşılık geldiği DirectML sürümü 1.1.0 ve karşılık gelen DML_TARGET_VERSION ise 0x2000'dir.
Ne de DML_TARGET_VERSIONNTDDI_VERSION makrolarını ayarlamazsanız, seçilen hedef sürüm varsayılan olarak 0x2000olur ve içindeki DirectML.h her şey kullanılabilir.
Eğer uygulamanızın Windows 10, sürüm 1903 (10.0; Derleme 18362) üzerinde çalışabilmesini istiyorsanız, #define DML_TARGET_VERSION 0x1000 yapabilirsiniz, bu da DirectML sürüm 1.0.0 tarafından desteklenmeyen tüm içeriği DirectML.h dışında bırakır. Bu, daha büyük bir sürüm gerektiren işlevleri kullanma girişimlerinin derlenememesini sağlar.
DirectML sürümü ile özellik düzeyi karşılaştırması
DirectML sürümü (örneğin, 1.0.0 veya 1.4.0), ilişkili DirectML.h üst bilgi dosyası ve .lib dosyası dahil olmak üzere belirli bir DirectML sürümünü açıklar.
Özellik düzeyi (örneğin, DML_FEATURE_LEVEL_1_0 veya DML_FEATURE_LEVEL_2_0), API'nin temel alınan uygulamasının yeteneğini açıklar ve bu uygulama, kullanılan DirectML.h sürümünden farklılık gösterebilir.
Örneğin, daha yeni bir SDK'ya karşı derlenen ancak Windows'un eski bir sürümünde çalışan bir uygulama, en son SDK'da derlenmiş olsa bile (çalışma zamanında) daha düşük bir desteklenen özellik düzeyi görebilir.