Optimierung / Portierung von DC-Code auf Cell CPU / PS3

Grid-Computing, technische Entwicklung von Distributed Computing...
Nachricht
Autor
Benutzeravatar
Michael H.W. Weber
Vereinsvorstand
Vereinsvorstand
Beiträge: 23149
Registriert: 07.01.2002 01:00
Wohnort: Marpurk

Optimierung / Portierung von DC-Code auf Cell CPU / PS3

#1 Ungelesener Beitrag von Michael H.W. Weber » 25.08.2007 11:01

Da wir nun offizielle Partner vom World Community Grid sind und IBM dahinter steht, dachte ich mir, wir könnten mal diskutieren, ob die Möglichkeit bestünde, gewisse Clients auf den Cell Prozessor von IBM zu portieren. BOINC wird meines Wissens von Sony übrigens gerade auf das native OS der PS3 portiert. Ansonsten steht ja das Yellow Dog Linux zur Installation von BOINC auf der PS3 zur Verfügung. Ich stelle mir ein von Sony oder IBM gesponsortes 10er Pack von PS3 vor, die unserem Cluster beigesellt werden und auf denen wir probieren, zusammen mit Experten wie z.B. Gianni de Fabritiis Leuten den WCG-Client zu portieren - vorausgesetzt WCG hat daran ein Interesse. Die PS3 hat nur 256 MB RAM, müßte aber ausreichen, oder? Bis da was ausgearbeitet ist, kann man ja FAH laufen lassen. :evil2:
Wie dem auch sei, ich wollte hier nur mal einen Gehirnsturm vom Stapel lassen, den ich für interessant halte. Die PC CPUs sind doch Krücken und ich wollte schon seit längerem mal mit der PS3 herumtüfteln. :funny: Ich würde bei Tedi Hahn vom WCG anfragen, ob WCG ein Interesse an einer Portierung hat bzw. ob es technisch überhaupt einen Leistungsschub für die bestehenden Clients bezüglich Ergebnisproduktion / Zeit bringen würde. Was meint ihr dazu?

Michael.
Fördern, kooperieren und konstruieren statt fordern, konkurrieren und konsumieren.

Bild Bild

Dennis Kautz
Vereinsmitglied
Vereinsmitglied
Beiträge: 4742
Registriert: 22.02.2003 02:12

#2 Ungelesener Beitrag von Dennis Kautz » 25.08.2007 13:31

256 MB RAM dürfte knapp werden, denn AFAIK brauchen schon die weniger resourcenhungrigen Projekte bei WCG 250 MB :-?

Benutzeravatar
Michael H.W. Weber
Vereinsvorstand
Vereinsvorstand
Beiträge: 23149
Registriert: 07.01.2002 01:00
Wohnort: Marpurk

#3 Ungelesener Beitrag von Michael H.W. Weber » 25.08.2007 15:04

frost hat geschrieben:256 MB RAM dürfte knapp werden, denn AFAIK brauchen schon die weniger resourcenhungrigen Projekte bei WCG 250 MB :-?
Ich denke nicht - das war bei dem Krebs-Projekt, aber nicht bei den anderen. Muß es aber nochmal genau prüfen (habe momentan kein WCG laufen, da FAH angesagt ist).

Michael.
Fördern, kooperieren und konstruieren statt fordern, konkurrieren und konsumieren.

Bild Bild

Benutzeravatar
SpeedKing
TuX-omane
TuX-omane
Beiträge: 2943
Registriert: 12.09.2003 17:14

#4 Ungelesener Beitrag von SpeedKing » 25.08.2007 22:53

Der Cell Prozessor hat doch zwei gravierende Nachteile:
1. Er kann nur mit einfacher Genauigkeit (32 Bit) rechnen.
2. Um seine Leistung wirklich auszureizen darf man nicht einfach acht Instanzen einer Applikation starten, sondern die Applikation muß intern achtfach parallel arbeiten und genau auf den Cell Prozessor ausgelegt sein - was bei den meisten Projekten schlicht unmöglich sein dürfte. Sonst warten die SPEs ("Synergistic Processing Elements" - "Core" wäre als Bezeichnung für eine Recheneinheit übertrieben) immer nur auf Daten, die nicht schnell genug geliefert werden können.

Dennis Kautz
Vereinsmitglied
Vereinsmitglied
Beiträge: 4742
Registriert: 22.02.2003 02:12

#5 Ungelesener Beitrag von Dennis Kautz » 25.08.2007 23:23

Michael H.W. Weber hat geschrieben:
frost hat geschrieben:256 MB RAM dürfte knapp werden, denn AFAIK brauchen schon die weniger resourcenhungrigen Projekte bei WCG 250 MB :-?
Ich denke nicht - das war bei dem Krebs-Projekt, aber nicht bei den anderen. Muß es aber nochmal genau prüfen (habe momentan kein WCG laufen, da FAH angesagt ist).

Michael.
http://www.worldcommunitygrid.org/help/ ... minimumreq

Benutzeravatar
Sven
Vereinsmitglied
Vereinsmitglied
Beiträge: 1310
Registriert: 19.01.2002 01:00

Re: Optimierung / Portierung von DC-Code auf Cell CPU / PS3

#6 Ungelesener Beitrag von Sven » 26.08.2007 01:14

Michael H.W. Weber hat geschrieben:...
Wie dem auch sei, ich wollte hier nur mal einen Gehirnsturm vom Stapel lassen, den ich für interessant halte. Die PC CPUs sind doch Krücken und ich wollte schon seit längerem mal mit der PS3 herumtüfteln. :funny: Ich würde bei Tedi Hahn vom WCG anfragen, ob WCG ein Interesse an einer Portierung hat bzw. ob es technisch überhaupt einen Leistungsschub für die bestehenden Clients bezüglich Ergebnisproduktion / Zeit bringen würde. Was meint ihr dazu?

Michael.

Gesponsert wären die PS3 schon interessant, aber wenn ich mir das Gewese um den Stromverbrauch an anderer Stelle so anschaue, hier würden dann ja unnötigerweise die DVD-Laufwerke als Ohmsche Last dranhängen. Oder wolltest Du daran auch rumbasteln?

Benutzeravatar
Michael H.W. Weber
Vereinsvorstand
Vereinsvorstand
Beiträge: 23149
Registriert: 07.01.2002 01:00
Wohnort: Marpurk

#7 Ungelesener Beitrag von Michael H.W. Weber » 26.08.2007 08:10

SpeedKing hat geschrieben:Der Cell Prozessor hat doch zwei gravierende Nachteile:
1. Er kann nur mit einfacher Genauigkeit (32 Bit) rechnen.
Das ist nicht ganz korrekt. Er kann auch mir doppelter Genauigkeit rechnen, allerdings ist die Rechengeschwindigkeit dann um den Faktor zehn langsamer, wodurch der Geschwindigkeitsvorteil der PS3 gegenüber einem Operon 2 GHz bestenfalls von 19 auf den Faktor 1,9 sinkt (vorausgesetzt man nimmt da einen linearen Zusammenhang an, worüber ich mir im Moment allerdings völlig unsicher bin). Aber im Grunde hast Du natürlich Recht, dass der Vorteil der PS3 nur dann gegeben ist, wenn Rechnungen mit einfacher Genauigkeit reichen. Und das ist meines Wissens für die meisten DC-Projekte gegeben. Selbst FAH nutzt ja die PS3 für etliche WUs (aber nicht für alle eben wegen dieses Genauigkeitsproblems).
SpeedKing hat geschrieben:2. Um seine Leistung wirklich auszureizen darf man nicht einfach acht Instanzen einer Applikation starten, sondern die Applikation muß intern achtfach parallel arbeiten und genau auf den Cell Prozessor ausgelegt sein - was bei den meisten Projekten schlicht unmöglich sein dürfte.
Ob das bei den meisten Projekten schlicht unmöglich sein dürfte, wage ich nicht zu beurteilen. Da müßte man die jeweiligen Betreiber wirklich mal kontaktieren. Tatsache ist, dass der Geschwindigkeitsvorteil der PS3 nur bei parallelem Einsatz der 8 SPEs gegeben ist. Von IBM gibt es ein Entwicklungskit, dass die Programmierung aber gut unterstützen soll. Natürlich kenne ich mich als (bestenfalls) Hobby-Programmierer damit nicht ausreichend aus. Was ich aber weiss ist, dass der Cell als Multi-core Chip mit neun heterogenen Kernen mittels Standard ANSI C auf der Basis der Bibliotheken von IBM'S SDK programmiert werden kann, um Kommunikation, Synchronisation und SIMD Berechnungen zu handhaben. Das ist anders als z.B. bei der Programmierung von GPUs mit Hilfe des CUDA SDK von NVidia, wo man erst eine komplett neue Sprache lernen muss, um die Dinger zu programmieren. Insofern dürfte das Portieren für jemanden, der sich mit Programmierungen Erfahrung hat, doch eigentlich nicht wirklich das Problem sein.
Ja, schön. Allerdings sieht mir das wie eine dieser "ich geh' mal auf Nummer sicher und poste als Minimalanforderungen, was selbst maximal nie benötigt wird"-Angaben aus. Da müßte man schon mal genau reinschauen, welches Projekt nun in der Praxis wieviel RAM benötigt. Ich meine, daß XP sebst 90-120 MB braucht, ist ja bekannt, nur läuft auf der PS3 eh kein Windoof. Und wenn ich von den angebenen 250 MB mal 120 abziehe, bin ich gut im Rahmen. Abgesehen davon könnte ich auch argumentieren: Ok, 250 MB RAM sind minimal gefordert, die PS3 hat 256. :wink:
Sven hat geschrieben:Gesponsert wären die PS3 schon interessant, aber wenn ich mir das Gewese um den Stromverbrauch an anderer Stelle so anschaue, hier würden dann ja unnötigerweise die DVD-Laufwerke als Ohmsche Last dranhängen.
Die PS3 benötigt meines Wissens unter Vollast ca. 180 W und liefert dabei - das ist einwandfrei belegt, sofern man die 8 SPEs tatsächlich nutzen kann (und nur dann macht die PS3 ja Sinn) - die Leistung von 19 Opterons mit je 2 GHz. Das nenne ich mal ein erwähnenswertes Leistung/Stromverbrauchs-Verhältnis. Und deswegen fahre ich auf die Kiste ab. Da muß ich mir um die unnütz eingebauten Blue-Ray-Laufwerke auch keine Sorgen mehr machen.

Michael.

P.S.: Meine Angaben bezüglich der Cell Spezifikationen beruhen übrigens auf Informationen aus dem PS3GRID-Artikel, den Prof. Gianni de Fabritiis freundlicherweise bei uns eingereicht hat. Ihn kann ich jederzeit auch wegen weiteren Fragen kontaktieren.
Fördern, kooperieren und konstruieren statt fordern, konkurrieren und konsumieren.

Bild Bild

Benutzeravatar
SpeedKing
TuX-omane
TuX-omane
Beiträge: 2943
Registriert: 12.09.2003 17:14

#8 Ungelesener Beitrag von SpeedKing » 26.08.2007 15:01

Michael H.W. Weber hat geschrieben:
SpeedKing hat geschrieben:Der Cell Prozessor hat doch zwei gravierende Nachteile:
1. Er kann nur mit einfacher Genauigkeit (32 Bit) rechnen.
Das ist nicht ganz korrekt. Er kann auch mir doppelter Genauigkeit rechnen, allerdings ist die Rechengeschwindigkeit dann um den Faktor zehn langsamer
Bitteschön, das ist kindisch, in Software kann ich auch mit einem 1-Bit-Rechner mit 57.000.000 Stellen Genauigkeit rechnen, wenn ich will. Das dauert halt dann ca. 10 * 57.000.000 mal so lang ;-)
Michael H.W. Weber hat geschrieben:[...]wenn Rechnungen mit einfacher Genauigkeit reichen. Und das ist meines Wissens für die meisten DC-Projekte gegeben.
Hmm... stimmt, wenn das für die meisten Projekte reicht... Aber es ist halt ein entscheidendes Kriterium, ob sich die Portierung überhaupt lohnen kann.
Michael H.W. Weber hat geschrieben:Von IBM gibt es ein Entwicklungskit, dass die Programmierung aber gut unterstützen soll. [...] Insofern dürfte das Portieren für jemanden, der sich mit Programmierungen Erfahrung hat, doch eigentlich nicht wirklich das Problem sein.
Ja, das ist sehr gut, wenn es da ein gutes API gibt. Allerdings hilft das nicht, wenn das Problem in sich so viele Abhängigkeiten hat, daß man einfach nicht richtig parallelisieren kann. Wenn z.B. bei einer Faltungssimulation jeder Schritt komplett abgeschlossen sein muß, bevor man den nächsten starten kann, und in einem Berechnungsschritt immer von einem Atom ausgegegangen werden muß und alle weiteren sich nach dem jeweils vorherigen ausrichten. Dann kann man nämlich intern gar nicht parallelisieren, sondern man könnte nur verschiedene Simulationsläufe gleichzeitig starten - genau dafür ist der Cell aber meines Wissens schlecht geeignet, weil er dann viele komplett verschiedene Daten rumschaufeln muß.
Es kann aber auch sein, daß ich das falsch verstanden habe und der Cell damit ganz ordentlich zurechtkommt, dann kann man ja ruhig auch einfach mehrere Instanzen der Applikation starten.

Benutzeravatar
Michael H.W. Weber
Vereinsvorstand
Vereinsvorstand
Beiträge: 23149
Registriert: 07.01.2002 01:00
Wohnort: Marpurk

#9 Ungelesener Beitrag von Michael H.W. Weber » 26.08.2007 21:30

Ich denke, es wird das Beste sein, direkt bei WCG mal anzufragen. Ich werde das kommende Woche mal tun, um Klarheit zu haben.

Michael.
Fördern, kooperieren und konstruieren statt fordern, konkurrieren und konsumieren.

Bild Bild

Dennis Kautz
Vereinsmitglied
Vereinsmitglied
Beiträge: 4742
Registriert: 22.02.2003 02:12

#10 Ungelesener Beitrag von Dennis Kautz » 26.08.2007 23:02

Wer ist eigentlich Gianni de Fabritiis und haben wir überhaupt Leute, die sich damit auskennen?

Benutzeravatar
Michael H.W. Weber
Vereinsvorstand
Vereinsvorstand
Beiträge: 23149
Registriert: 07.01.2002 01:00
Wohnort: Marpurk

#11 Ungelesener Beitrag von Michael H.W. Weber » 27.08.2007 13:47

frost hat geschrieben:Wer ist eigentlich Gianni de Fabritiis und haben wir überhaupt Leute, die sich damit auskennen?
PS3GRID = Gianni de Fabritiis
Auskennen: Yoyo war interessiert daran, yoyo@home ggf. auf die PS3 zu bringen und zu diesem Zweck habe ich den Kontakt zu Gianni der Fabritiis hergestellt. Es gärt also mal wieder unter der Oberfläche... :wink:

Michael.
Fördern, kooperieren und konstruieren statt fordern, konkurrieren und konsumieren.

Bild Bild

Benutzeravatar
Michael H.W. Weber
Vereinsvorstand
Vereinsvorstand
Beiträge: 23149
Registriert: 07.01.2002 01:00
Wohnort: Marpurk

#12 Ungelesener Beitrag von Michael H.W. Weber » 27.08.2007 16:49

So, ich habe an WCG eine Anfrage abgeschickt, was man dort von der Portierungs-Idee hält.

Michael.
Fördern, kooperieren und konstruieren statt fordern, konkurrieren und konsumieren.

Bild Bild

Zurück zu „Hintergrundinfos zu Verteiltem Rechnen“