Aracılığıyla paylaş


E. Uygulama tanımlı davranışları OpenMP c/C++

Bu ekin "uygulama tanımlı" Bu API'daki olarak açıklanan davranışlarını özetlemektedir.Her ana belirtiminde açıklamasını dön Çapraz başvurulu davranıştır.

Notlar

Uygulaması tanımlamak ve bu durumlarda davranışını belgelemek için gereklidir, ancak bu liste tamamlanmamış olabilir.

  • İş parçacığı sayısı: paralel bir bölgeyi dinamik iş parçacığı sayısı ayarını devre dışı bırakılır ve çalışma zamanı sistemi sağlayabilir numarası paralel bölge için istenen iş parçacığı sayısını aşıyor karşılaşılırsa, programın davranışını uygulaması-(bkz: sayfa 9) tanımlanır.

    Visual C++'da, bir iç içe olmayan paralel bölge için 64 iş parçacığı (maksimum) sağlanacaktır.

  • İşlemci: gerçekten herhangi bir anda iş parçacığı barındıran fiziksel işlemci sayısı uygulaması-(bkz: sayfa 10) tanımlanır.

    Visual C++, bu sayı sabit değildir ve işletim sistemi tarafından denetlenir.

  • Takımlar iş parçacığı oluşturma: iç içe paralel bölge yürütme iş parçacığı bir ekip içinde uygulama tanımlı.(bkz. sayfa 10).

    Visual C++'da, bu işletim sistemi tarafından belirlenir.

  • Schedule(Runtime): ilgili planlama çalışma zamanına kadar ertelenmiş karar.Zamanlama türünü ve Öbek boyutunu ayarlayarak çalışma zamanında seçilebilir OMP_SCHEDULE ortam değişkeni.Bu ortam değişkeni ayarlanmamış, sonuçta elde edilen zamanlama uygulama-(bkz. sayfa 13) tanımlanır.

    Visual C++'da, zamanlama türü olan static öbek boyutu yok.

  • Varsayılan zamanlama: zamanla yan tümcesi olmaması durumunda varsayılan zamanlama uygulama-(bkz. sayfa 13) tanımlanır.

    Visual C++'da, varsayılan zamanlama türü olan static öbek boyutu yok.

  • ATOMİK: uygulaması tüm olup yerini alır uygulama tanımlı olduğu atomic yönergeleri ile kritik (bkz: sayfa 20) aynı benzersiz ada sahip yönergeleri.

    Görsel verileri değiştiren, C++, Atomik üzerinde doğal bir hizalama değil veya 1 veya 2 bayt ise bu özellik karşılayan uzun tüm Atomik işlemler bir kritik bölümü kullanacak.Aksi halde, kritik bölümlerin kullanılmaz.

  • omp_get_num_threads: iş parçacığı kullanıcı tarafından açıkça ayarlanmamış, varsayılan uygulama tanımlı (bkz: sayfa 9, ve Bölüm 3.1.2 sayfasında 37).

    Visual C++'da, varsayılan iş parçacığı sayısını işlemci sayısına eşittir.

  • omp_set_dynamic: dinamik iş ayarlaması için varsayılan uygulama tanımlı (bkz: Bölüm 3.1.7 sayfasında 39).

    Visual C++'da, varsayılan değer olan FALSE.

  • omp_set_nested: iç içe paralellik etkinleştirildiğinde, iş parçacığı iç içe paralel bölgeler yürütmek için kullanılan uygulama tanımlı (bkz: Bölüm 3.1.9 sayfasında 40).

    Visual C++'da, iş parçacığı sayısı işletim sistemi tarafından belirlenir.

  • OMP_SCHEDULEortam değişkeni: uygulama tanımlı ortam değişkeninin varsayılan değeri (bkz: Bölüm 4.1 sayfasında 48).

    Visual C++'da, zamanlama türü olan static öbek boyutu yok.

  • OMP_NUM_THREADSortam değişkeni: için herhangi bir değer belirtilirse, OMP_NUM_THREADS ortam değişkeni veya belirtilen değer sıfırdan büyük bir tamsayı değilse veya uygulama tanımlı kullanmak için iş parçacığı sayısı değeri en çok iş parçacığı sistem destekleyebilmesi sayısından büyükse, (bkz: Bölüm 4.2 sayfasında 48).

    Visual C++ belirtilen değer, sıfır veya daha az, iş parçacığı sayısını işlemci sayısına eşittir.İş parçacığı sayısı değeri 64'den büyükse, 64'tür.

  • OMP_DYNAMICortam değişkeni: uygulama tarafından tanımlanan varsayılan değerdir (bkz: Bölüm 4.3 sayfasında 49).

    Visual C++'da, varsayılan değer olan FALSE.