SORU
1 EKİM 2010, Cuma


Banka çatışma nedir? (/Filmler için programlama yapmak Cuda)

CUDA ve Filmler için programlama kılavuzu okudum ve banka çatışma ne olduğunu çözemedim bir türlü. Onlar sadece sıralama konu kendisi üzerinde tertipleyerek olmadan sorunu çözmek için nasıl içine dalış. Banka çatışma ve banka çatışma bilgisayar bilimleri için googling denedim ama fazla bir şey bulamadım. Kimse beni anlamak ya da iyi bir bağlantı için beni işaret edebilir? Eğer yardım CUDA/Filmler ya da sadece banka çatışmalar bilgisayar bilimi genel olarak, teşekkür ederim:) bağlamında ise bir tercihim yok

CEVAP
1 EKİM 2010, Cuma


Nvıdıa (ve bu konuda amd) GPU için yerel bellek memorybanks ayrılmıştır. Her banka için tek adres bir veri kümesi bir zaman, bu yüzden eğer bir halfwarp çalışır yük/veri depolamak için/aynı banka erişim olmalı sıralanmış (bu bir banka çatışma). İçin gt200 GPU var 16 banka (32banks için fermi), 16 veya 32 bankalar için AMD GPU (57xx veya daha yüksek: 32, herşey aşağıda: 16)), aralanmış bir granuity 32 bit (yani bir bayt 0-3 vardır banka 1, 4-7 banka 2, ..., 64-69 banka 1). Daha iyi bir görünüm için temel olarak bu gibi görünüyor:

Bank    |      1      |      2      |      3      |...
Address |  0  1  2  3 |  4  5  6  7 |  8  9 10 11 |...
Address | 64 65 66 67 | 68 69 70 71 | 72 73 74 75 |...
...

Eğer öyleyse bir halfwarp her bir iş art arda 32 bit değerleri erişirse banka çelişki yok. Bu kuralın bir istisnası (her iş parçacığı kendi banka erişim gerekir) yayınlar: Eğer tüm konuları erişim aynı Adres, değeri sadece bir kez okumak ve yayınlanan tüm iş parçacıkları (GT200 olmalı tüm iş parçacıkları halfwarp erişim aynı Adres, ıırc fermi ve AMD GPU bunu yapmak için herhangi bir iş parçacığı sayısı erişme aynı değer).

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • dougownsall

    dougownsall

    7 EKİM 2007
  • MyTiredBones

    MyTiredBones

    2 Temmuz 2013
  • stokelycalm

    stokelycalm

    28 Aralık 2010