Heute habe ich die ersten Speedtests auf meinem neuen Rechner laufen lassen, und siehe da, es funktioniert. Mit Hilfe der Graphikkarte ist das Programm zwischen 30 und 100 mal schneller als die ursprüngliche Version auf dem normalen Prozessor.
Aber erst mal langsam, was tu ich da eigentlich? Es geht um Partialwellenanlyse, etwas, was wir hier besonders gut machen können, und womit wir mit etwas Glück ein paar neue Teilchen finden können; keine fundamentalen zwar, sondern zusammengesetzte, aber immerhin. Nun, wie läuft sowas? Wir erzeugen ein paar Milliarden Teilchen namens J/psi und studieren ihre Zerfälle, zum Beispiel in ein Photon und nochwas (nennen wir das mal X). Das X zerfällt dann wieder, z.B. in zwei bekannte Teilchen wie Kaonen oder Pionen, die wir im Detektor nachweisen. Was wir dann sehen, sind die Kaonen aus allen möglichen Zwischenzuständen X wild durcheinandergemixt. Partialwellenanalyse ist so ziemlich der umfassendste Ansatz, das auseinanderzupfriemeln. Es wird dabei nicht nur die Masse des Zwischnzusatndes X betrachtet, sondern auch die Winkel zwischen den Zerfallsteilchen, die uns helfen, zu bestimmen, was für einen Drehimpuls die Zwischenzustände haben.
So weit so gut. In der Praxis läuft das so, dass man aus einem Modell der Zwischenzustände die Wahrscheinlichkeit bestimmt, dass ein einzelnes Ereignis zum Modell passt, diese Wahrscheinlichkeiten aufsummiert und dann das Modell so lange variiert, bis es am besten zu den Daten passt (die Wahrscheinlichkeit maximal ist). Bei ein paar 100'000 bis ein paar Millionen Ereignissen ist das tierisch Rechenaufändig. Beim Vorgängerexperiment haben die jeweils etwa ein Jahr lang Modelle gerechnet; wir erwarten 100 Mal mehr Daten, möchten aber nächstes Jahr publizieren... Die Rechnungen müssen also viel schneller werden. Die naheliegende Idee ist, die Wahrscheinlichkeiten nicht alle nacheinander zu berechnen, sondern parallel. Netterweise ist die Berechnung nicht so unterschiedlich von den Berechnungen, die in Computerspielen gemacht werden um Monster oder Rennautos in 3D auf den Bildschirm zu malen. Und dafür gibt es tolle Hardware. Hochgradig parallel (viele Pixel). Und so eine Graphikkarte, auf der 320 Berechnungen gleichzeitig laufen, hat IHEP mir gekauft (war mit ~200 $ gar nicht mal so teuer), ich hab ein bisschen Software geschrieben, ein bisschen geflucht, weil das im Moment nur unter Windows läuft, und jetzt ist alles tasächlich viel, viel schneller! Als nächstes muss ich aus diesem Gehacke anständige Software bauen, die andere Leute auch verstehen (eine Doktorandin vom Computerzenter hilft mir dabei) und dann müssen nur noch die Daten kommen...
Keine Kommentare:
Kommentar veröffentlichen