|
Geschrieben am: 04.11.2010 um 02:00 Uhr
|
|
Hallo,
ich habe folgende Problemstellung
Zitat: 2. Aufgabe: Wie Ihnen noch hoffentlich aus Mathematik-Lehrveranstaltungen bekannt ist, ergibt die
Multiplikation einer (m,n)-Matrix mit einer (n,k)-Matrix eine (m,k)-Matrix.
a) Schreiben Sie eine Klasse Matrix mit einer static-Methode namens multiplySequential, welche
zwei Parameter des Typs double[][] besitzt und diesen Typ als Rückgabe liefert! Wie der Name sagt,
soll diese Methode die beiden Matrizen, welche als Parameter übergeben werden, sequenziell
multiplizieren.
b) Die m * k Elemente der Resultatmatrix können alle unabhängig voneinander und somit parallel
berechnet werden. Erweitern Sie die Klasse Matrix um eine static-Methode namens multiplyParallel,
die dieselbe Signatur (Anzahl und Typ der Parameter sowie Typ des Rückgabewerts) wie die
Methode multiplySequential hat! Wie der Name sagt, soll diese Methode die beiden Matrizen, welche
als Parameter übergeben werden, mit m * k parallel laufenden Threads multiplizieren, wobei jeder
Thread einen Wert der Matrix berechnet.
A ist ja kein Problem. Jetzt verstehe ich aber nicht, wie b zu bewältigen sein soll?! An run kann ich keine Parameter übergeben und demnach weiß ich nicht, wie ich die einzelnen Felder mit jeweils einem neuen Thread berechnen und diese an die Static Methode zurückschicken soll. Jemand einen Vorschlag?
Gruß
Freundschaft vor Vaterland - And I thought my jokes were bad
|