CPU mit 2 Kernen

Gast #423300
Lesenswert?

Hi @all

Ich möchte aus dem VHDL-Projekt das Konfigurationsfile für den FPGA 
erzeugen. Dies dauert immer sehr lange ca 4 Minuten. Dies möchte ich 
beschleunigen. Daher wird ein neues PC-System gekauft. Momentan denke 
ich an einen Core2 Duo von Intel. Hat vielleicht schon jemand eine CPU 
mit 2 Kernen? Werden diese gleichzeitig von ISE ausgelastet, wenn das 
Konfigurationsfile erzeugt wird?.

Grüsse

Michael
Gast #423385
Lesenswert?

warum sollte ein core duo schneller sein ?
normaler weise bekommt jede cpu einen teil der arbeit den sie berechnen 
soll, dazu müssen die daten synchronisiert werden.
aber beim "compilieren" wird eigentlich nur eine cpu ausgelastet.
#423406
Lesenswert?

> aber beim "compilieren" wird eigentlich nur eine cpu ausgelastet.

Also ich weiß ja nicht, wie du größere Sachen baust, aber für make gibt 
es eine schöne Kommandozeilen-Option -j <Anzahl paralleler Procs>, als 
Daumenregel sollte man hier die Anzahl der verfügbaren Cores * 3 
angeben, und dann fetzt das ganz schön!

Wenn es darum geht Netzlisten für FPGAs etc. zu bauen, sieht die Sache 
natürlich etwas anders aus, schließlich ist die ja irgendwann mal 
"global", da nützen viele Prozesse freilich wenig. Aber vielleicht haben 
die Tool-Hersteller ja ihre Hausaufgaben gemacht und das 
Synthese-Werkzeug in parallelisierbare Teile aufgesplittet, dann dürfte 
man von mehreren Cores auch hier profitieren.

Ciao, Fabian
Gast #423408
Lesenswert?

Beim Place & Route, was den Löwenanteil ausmacht, kann man angeben, dass 
mehrere Kerne (falls vorhanden) genutzt werden sollen. Wenn du mit 4 
Minuten die Zeit von der Synthese bis zum fertigen Bitfile meinst, ist 
das aber eh ein Witz. Bei jedem etwas größeren Design dauert es um 
einiges länger. Wir Implementieren hier auf einem Linux-System mit 2 
Opterons und 4GB RAM drauf und benötigen mindestens genauso viel.


T.M.
Gast #423472
Lesenswert?

Ich finde 4 Minuten trotzdem langsam. Gerade wenn man den Fehler 
eingrenzen möchte schalte ich systematisch Teile ab. Jedesmal muss ich 
dann 4 Minuten warten, um dann das Ergebnis anzuschauen. Diese Zeit 
kommt mir sehr lange vor. Und ich gehe mit einem schlechten Gefühl nach 
Hause wenn ich so langsam voran komme. Wenn das nur 20 Sekunden dauern 
würde, dann würde ich schneller voran kommen.

Ich denke mal das man nicht mehr als 1GByte RAM benötigt. Ich finde die 
CPU wird immer belastet. Ich denke mal das jedes mal irgendwelche 
Bibliotheken neu compaliert werden.

Mit meinem Programm habe ich ca 15% eines Spartan3 mit 400k Systemgates 
ausgelastet. Deshalb denke ich das mein Projekt auch nicht mehr so klein 
ist. Der Core2 Duo besitzt eine neue Architektur. Der kann jetzt viel 
mehr Befehle mit einem Takt ausführen.

Wo kann man die Einstellung vornehmen? (das beim Place and Route mehrere 
CPU Kerne verwendet werden sollen?)

Ach ja im November kommen schon 4 Kerne raus.
Gast #423502
Lesenswert?

andreas:
"Wenn dein P4 HyperThreading kann und es aktiviert ist, dann könnte 
diese
Einstellung auch da schon helfen."

Nach meiner Erfahrung: negativ. Laut Taskmanager ist eine Hälfte der CPU 
beschäftigt während Synthese etc.. Volle Auslastung erreiche ich z.B 
durch eine parallel laufende Simulation...



4 min für ca 50 000 Gates ist nicht besonders schnell (ich geh mal von 
einem 1,5 Jahren alten PC aus). Da kannst du mit den richtigen 
Einstellungen und Designbeschreibungen einigen rausholen. Schalte mal 
die Optimierung vom Place und route auf "std". Das dürfte einiges an 
Rechenzeit bringen. Falls dein timing dann nicht mehr stimmt platziere 
dann die kritischen stellen (DCM,BUFG,MULT18) per Hand und halte es im 
*.ucf per LOCATE constraint fest. Ebenso bringt die Optimierung bei der 
Synthese nicht immer den gewünschten Erfolg, sondern frisst nur Zeit.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren