Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Elsa Ritter Geändert vor über 5 Jahren
1
k-NN Klassifikation auf dem STI Cell BE Prozessor Michael Mair, Adrian Marte, Martin Schöpf, Daniel Winkler
2
Übersicht Cell Prozessor - Überblick Parallelisierungsstrategieen Cell- kNN Version 1.0 Cell- kNN Version 2.0 Ergebnisse Fazit
3
Cell Prozessor - Überblick
4
EIB- Bus
5
EIB- Bus
6
Testumgebung Hardware: PS3 yellow dog linux release 6.0 (pyxis)( ydl6.1) (spu / ppu- ) gcc 4.1.1 libspe2 standarlibrary cell sdk 3.1
7
Parallelisierungsstrategien
Parallelisierung über die Distanz zweier Punkte Version 1.0 Mit SIMD auch in Version 2.0 Parallelisierung über Testpunkte Version 2.0 Parallelisierung über Trainingspunkte
8
Parallelisierung über Distanz zweier Punkte Version 1.0
Bezogen auf knn.f90, function distance !PARALLEL(dimension) d = (inst1%val – inst2%val)** !PARALLEL(dimension), reduction distance = sum(d)
9
Parallelisierung über Distanz zweier Punkte Version 1.0
10
Ergebnisse Version 1.0 Zeiten und Speedup
Berechnung mit allen (6) SPEs Sehr schlechter Speedup
11
Ergebnisse Version 1.0 Fortsetzung
Abhängigkeit von der Anzahl benützer SPEs
12
Ergebnisse Version 1.0 Eigenschaften
Wenige Dimensionen Datenmenge: 3136 Byte → 522 Byte pro SPE 522 Byte pro MFC Transfer, anstatt möglichen 16 kByte Viele SPE-Threads 60000 * 6 SPE-Threads pro Test Punkt Insgesamt * * 6 SPE-Threads Bei jedem Vergleich müssen Daten vom RAM in den LS der SPEs geladen werden Threads werden zeitgleich gestartet, die alle auf den RAM zugreifen → Bootleneck
13
Parallelisierung über Testpunkte Version 2.0
Bezogen auf knn.f90, program main !PARALLEL(n_query) forall (i=1:n_query) knn(i) k_nearest(k,query_inst(i),ref_inst,n_ref)
14
Parallelisierung über Testpunkte Version 2.0
15
Ergebnisse Version 2.0 Zeiten und Speedup
Berechnung mit allen (6) SPEs Sehr guter Speedup
16
Ergebnisse Version 2.0 Fortsetzung
Abhängigkeit von der Anzahl benützer SPEs
17
Ergebnisse Version 2.0 Eigenschaften
Weniger Zugriffe der SPEs auf den RAM Verwendung des schnellen EIB (Element Interconnect Bus) mit 307 Gbyte/sek Einmalige Erstellung der verwendeten Threads 6 Threads vs * * 6 Threads Geringe Auslastung der PPU
18
Ergebnisse Zusammenfassung
19
Fazit - Erfahrungen Herkömmliche Programmierung nicht anwendbar (PPU ist sehr langsam) Programmierung muss sehr maschinennahe passieren Speicher von SPEs begrenzt: zusätzliche Überlegungen bzgl. LS der SPEs sind notwendig da es keinen swap gibt Theoretische Geschwindigkeit schwer erreichbar
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.