H 13 7b)

jgdo
DON'T PANIC
Beiträge: 42
Registriert: 19. Jun 2011 09:24

H 13 7b)

Beitrag von jgdo »

Kann mir vllt jemand erklären, wieso auf der rechten Seite im zweiten Iterationsschritt Bank-Konflikte auftreten, im ersten Schritt aber nicht? Die Speicherstellen in der zweiten Iteration sind doch eine echte Teilmenge von der ersten Iteration, wie können dadurch denn zusätzliche Bankkonflikte entstehen?

- jgdo -

mw1039
Computerversteher
Computerversteher
Beiträge: 346
Registriert: 12. Apr 2011 12:18

Re: H 13 7b)

Beitrag von mw1039 »

Im Multiprozessor werden immer 16 (bzw. auf neueren Karten 32) Threads parallel abgearbeitet. Im ersten Schritt greifen die Threads 0 bis 15 auf Bank 0 bis 15 zu, deswegen gibt es keine Konflikte. Erst danach werden Thread 16 bis 31 ausgefuehrt und die greifen auch wieder alle auf unterschiedliche Baenke zu.
Im zweiten Schritt greifen Thread 0 bis 7 auf Bank 0, 2, 4, 6, 8, 10, 12 und 14 zu, Thread 8 bis 15, die aber gleichzeitig mit ihnen ausgefuehrt werden, greifen auf die gleichen Baenke zu. Das ist der Konflikt.

Antworten

Zurück zu „Archiv“