Information Technology Reference
In-Depth Information
nen. Sie sind in Bild 3.8b (Expansion unter Verwendung eines Bitvektors) bzw. Bild 3.8d (Expan-
sion unter Verwendung eines Indexvektors - das sog. gathering ) dargestellt.
0
4
7
0
1
0
1
0
0
1
1
0
1
0
1
0
0
1
1
0
1
0
1
0
0
4
7
0
1
0
1
0
0
4
7
0
1
0
1
0
0
4
7
0
1
0
1
0
4
7
1
1
4
7
1
1
4
7
1
1
1
2
4
6
4
7
1
1
1
2
4
6
Index
Index
a
Maske
b
Maske
c
d
Bild 3.8. Verschiedene Verfahren zur Kompression bzw. Expansion von Vektoren. a Kompression
mit Bitmaske. b Expansion mit Bitmaske. c Kompression mit Indexvektor (scatter). d Expansion
mit Indexvektor (gather). Darstellung in Anlehnung an [202]
Reorganisation von Speicherzugriffen
In herkömmlichen Prozessoren haben Vektoreinheiten bisher deshalb eine geringe
Bedeutung, weil die Speicherkopplung zu komplex ist, um wirtschaftlich zu sein.
Mit zunehmender Integrationsdichte könnte sich das in Zukunft jedoch ändern.
Zumindest zeichnet sich dies für die ursprünglich für den Alpha EV8 von Compaq
geplante Erweiterung Tarantula ab [40]. Die mit einem Replikationsfaktor von 16
arbeitende Vektoreinheit ist nicht direkt an den Hauptspeicher angekoppelt, sondern
über einen mit 16 MByte großzügig dimensionierten 8-fach assoziativen L2-Cache.
Er ist in 16 Bänken aufgebaut, die jeweils pro Takt einen Zugriff in Fließbandtech-
nik ermöglichen, um die parallel arbeitenden 16 Verarbeitungseinheiten der Vektor-
einheit bei Speicherzugriffen auslasten zu können. Daher ist das Laden oder Spei-
chern eines 128 Elemente enthaltenden Vektorregisters nach Ablauf der Latenzzeit
in nur acht Takten möglich, und zwar zum Teil auch dann, wenn die Elemente mit
einer Schrittweite ungleich Eins aufeinander folgen. Bemerkenswert hieran ist, dass
für einen Zugriff auf einen 128 Elemente enthaltenden Vektor innerhalb von acht
Takten in jedem Takt alle 16 Bänke angesprochen werden müssen.
Dies ist möglich, weil auf die Elemente je nach Schrittweite ggf. abweichend von
der durch den Vektor vorgegebenen Reihenfolge zugegriffen wird. Die für eine
Schrittweite von Fünf erforderliche Adressreorganisation ist in Bild 3.9 dargestellt.
Der Übersichtlichkeit halber wurden die Verhältnisse - im Vergleich zu denen, wie
sie im Alpha EV8 herrschen - etwas vereinfacht. Statt 16 Bänke besitzt der dort
angenommene Cache acht Bänke und speichert pro Zeile vier statt acht Vektorele-
mente. Des Weiteren wird ein mit einem Replikationsfaktor von Acht arbeitender
Vektorprozessor zu Grunde gelegt, der einen 32 elementigen Vektor verarbeitet.
Bild 3.9a beschreibt den Zugriff auf den Cache. Die grau unterlegten Kästen ent-
sprechen den zu lesenden oder zu schreibenden Vektorelementen. Jeweils darüber
ist die zugehörige Elementadresse im Hauptspeicher angegeben (beginnend mit
Adresse 0). Die anzusprechenden Cache-Zeilen sind stark umrahmt gekennzeichnet.
Die dazwischen eingebetteten nicht stark umrahmten Kästen symbolisieren Cache-
 
Search WWH ::




Custom Search