Ich brauche (für eine Forschungsarbeit) ein Simulationssystem, das mir
in Echtzeit mathematische Schätzungen und Berechungen durchführt,
welches aber auch in der Lage ist, die errechneten Werte und Kennzahlen
mit Messungen zu vergleichen. Das Ziel ist der Abgleich eines Modells
zur Steigerung der Vorraussagbarkeit des Verhaltens von geladenen
Teilchen in elektrischen und magnetischen Feldern.
Die Formeln und Modelle sind vorhanden, bzw in Entstehung und nun geht
es an die Realisation. Wie realsiert man sowas am Besten: Ich dachte
bisher an einen PC, der mitrechnet und die Ergebnisse updated. Ich habe
auch in der Programmiersprache C sowie in Matlab Beispielrechnungen dazu
gemacht.
Die Modelle sind nicht all zu aufwändig und rechenintensiv, trotzdem
ergibt eine Überschlagskalkulation, daß mit einem schnellen Pc die
Berechung im Bereich von 100-200 Ergebnissen je Sekunde liegen kann, was
viel zu grob wäre, um damit etwas anzufangen.
Leider sind meine finanziellen Mittel und auch die Zeit begrenzt, sodaß
ich mir kein Rechenzentrum mieten kann, welches die 1000fache
Rechenleistung aufbringen könnte. Ich habe aber auch sonst keine
bezahlbare DSP-Plattform gefunden, die genug FLOPs (oder wie es heisst)
hätte, um da auch nur annährend hinzukommen.
Nun kann man ja C in FPGA-HDL übersetzen oder auch MATLAB das tun lassen
und das ganze in ein FPGA bringen. Ein FPGA hätte den Vorteil, daß viele
Additionen und Vergleiche (Wege durch das Entscheidungssystem) parallel
und in einem Clock-Takt laufen könnte, was das ganze sehr viel schneller
machen sollte. Man bräcchte dann wohl ein großes FPGA (oder mehrere)
und eine Verbindung zum PC, der die Daten abspeichert.
Kann man soetwas kaufen? Wie kommt man an eine Plattform hern, die
soetwas kann und nur noch programmiert werden muss?
Tipps erbeten - vielen Dank.
Bei Vektorrechnungen in Floating Point haben Grafikkarten und die
Playstation 3 (Cell-CPU) ein sehr gutes Preis-/Leistungsverhältnis. Bei
anderen Dingen sind FPGAs besser. Um welche Art von Berechnungen geht es
denn?
Tom wrote:
>>Schwerionenbeschleuniger aus Darmstadt>> Sorry, aber muss das denn sein? Kannst du dir nicht was kürzeres> ausdenken als so einen Blödsinn?
Du hast ja Sorgen...
@ Schwerionenbeschleuniger aus Darmstadt (Gast)
>Die Formeln und Modelle sind vorhanden, bzw in Entstehung und nun geht>es an die Realisation. Wie realsiert man sowas am Besten: Ich dachte>bisher an einen PC, der mitrechnet und die Ergebnisse updated.
Das ist ein gängiger Ansatz.
> Ich habe>auch in der Programmiersprache C sowie in Matlab Beispielrechnungen dazu>gemacht.>Die Modelle sind nicht all zu aufwändig und rechenintensiv, trotzdem>ergibt eine Überschlagskalkulation, daß mit einem schnellen Pc die>Berechung im Bereich von 100-200 Ergebnissen je Sekunde liegen kann,
Das ist ein Widersprung in sich! Ein heutiger Standard-PC hat Dampf ohne
Ende. Was für "nicht all zu aufwändige" Modell sind das denn?
> was>viel zu grob wäre, um damit etwas anzufangen.
Wie Fein braucht man es denn? 1000 Berechnungen pro Sekunde? 10.000?
>Leider sind meine finanziellen Mittel und auch die Zeit begrenzt, sodaß>ich mir kein Rechenzentrum mieten kann, welches die 1000fache>Rechenleistung aufbringen könnte. Ich habe aber auch sonst keine
Ich glaub dir fehlt erstmal ein wenige Wissen, um Rechenleistung real
einschätzen zu können. Nach DSP und Clustern schreien kann jeder Depp.
>bezahlbare DSP-Plattform gefunden, die genug FLOPs (oder wie es heisst)
Was hab ich gerade gesagt . . . ;-)
>und das ganze in ein FPGA bringen. Ein FPGA hätte den Vorteil, daß viele>Additionen und Vergleiche (Wege durch das Entscheidungssystem) parallel>und in einem Clock-Takt laufen könnte, was das ganze sehr viel schneller>machen sollte. Man bräcchte dann wohl ein großes FPGA (oder mehrere)>und eine Verbindung zum PC, der die Daten abspeichert.
Und vor allem jemanden, der auf dem Gebiet SEHR fit ist. Es ist ein
Irrtum anzunehmen, das man C-Code in eine Software packt, nen Knopf
drückt und unten purzelt ein superschneller, paralleler Algorithmus
raus.
>Kann man soetwas kaufen? Wie kommt man an eine Plattform hern, die>soetwas kann und nur noch programmiert werden muss?
;-)))
Was du brauchst im Moment ist nicht Hardware, sondern Wissen. Und das
kann man (Gott sei Dank) noch nicht kaufen.
MFG
Falk
Ich fürchte, daß die Verwendung eines einzelnen FPGAs nicht den
Fortschritt gegenüber kaskadierten DSP-Systemen bringt, der hier
benötigt wird. Da wird es sicher auch mehrere FPGAs brauchen.
Eine Möglichkeit wäre, eine Kombination zu nutzen, um das FPGA die
Entscheidungen machen zu lassen und all das, was zu pipelinen ist,
währed der DSÜ solche Sachen macht, wie Trigonometrie. Wenn keine
Spezialhardware gebaut werden kann, sollte man gfs. eine PCI-basierte
FPGA-Karte nehmen, die mit einem weiteren Board erweitert werden kann.
Ich habe in einem Beispiel mal auf eine Beschleunigerkarte
zurückgegriffen: Dor läuft dasselbe wie im ModelSIM, nur 1000mal
schneller. Vielleicht nutzt das was ?
Was Matlab an FPGA Code generieren kann, weis ich nicht. Ich kenne nur
das System mit Labview und von dem bin ich nicht überzeugt.
Ich hoffe Du hast diese Berechnungen nicht mit Matlab und Co gemessen,
oder? Ansonsten kannste gleich nochmal den Faktor 100 als Steigerung zu
Grunde legen. Sorry aber bei der Ausfuehrlichkeit, in der Du das
darstellst, kann ich leider garnichts dazu sagen, Du sprichst von
"Modellen" und "nicht zu aufwaendig". Was erwartest Du bitte? Ich sage
Dir dann "vielleicht besser"? Irgendwie biste nich glaubwuerdig, sorry.
Nachtrag: Was ich damit sagen will: 100-200 Ergebnisse hoert sich
erstmal nach wenig an, kann man aber nicht zu sagen ohne den Aufwand zu
kennen. Vielleicht hast Du Chancen, die Sache weiter zu optimieren. Gib
Dich mal nicht so bedeckt und werde etwas genauer.
Michael
Hallo "Schwerionenbeschleuniger aus Darmstadt",
An der GSI gibt es meines Wissens ein HF-Team, dort setzen die Leute
häufig FPGAs ein, auch für die Kavitätensteuerung (-regelung?) - wäre
noch ne Möglichkeit, sich dort zu erkundigen...
>An der GSI gibt es meines Wissens ein HF-Team
Was Du nichts sagst (:-D)
Ich habe mich ja schon umgehört und die Lösung, FPGAs zu nutzen ist ja
nun beschlossene Sachen. Es bleibt aber nach wie vor das Problem, daß
ich Ich keine eigene Hardware bauen (lassen) kann, sondern eine
käufliche Pltatform benötige. Die muss auch kompakt sein.
>Wenn sich das Problem Paralliesiern läst könntes du in ein Cluster>rechnen lassen d.h. ein PC berechnet 0-100 und gleichzeitig einer>anderer 100-200
So geht das nicht, ich brauche die Punkte schon sequenziell in Echtzeit.
>Ich hoffe Du hast diese Berechnungen nicht mit Matlab und Co gemessen,
Nein, sie wurden in Matlab erzeugt und geprüft.
> Du sprichst von "Modellen" und "nicht zu aufwaendig".
In C Code übersetzt, rechnet ein Windowsprogramm so um den Faktor 100 zu
langsam. Ich habe schon VHDL gemacht und würde auch den Code in HDL
umsetzen können. Es fehlt mir nur die Universalhardware dafür.
Ich habe schon an ein EVAL Board gedacht, brauche aber noch eine
schnelle Verdingun zum PC. USB müsste reichen, aber sowas habe ich ncht
nicht gemacht. Ausserdem brauche ich einen Treiber im PC.
Was ich daher suche wäre eine FPGA PLattform mit einigen Analog und
Digitaleingängen , die sich von einem Rechner aus beschreiben lässt und
Daten empfängt. Müsste ready to use sein, damit ich mich auf die
Applikation konzentrieren kann.
>sollte man gfs. eine PCI-basierte FPGA-Karte nehmen, die mit einem>weiteren Board erweitert werden kann.
Was könnte man da nehmen? Muss ich dann PCI-Bus programmieren?