Forum: Analoge Elektronik und Schaltungstechnik LTspice - Mehr Rechenleistung und Daten-Nachbearbeitung?


von Sascha W. (arno_nyhm)


Lesenswert?

Hallo,

ich kämpfe gerade mit einer Schaltung deren Simulation in LTspice sehr 
viel Zeit in Anspruch nimmt - Ich sehe im Task-Manager, dass nur einer 
meiner Kerne damit beschäftigt ist, gibt es eine Möglichkeit wie ich 
LTspice dazu bewegen kann mehr Kerne zu benutzen?
Mein Betriebssystem ist übrigens Windows 7, 64-bit. Ich sehe 8 virtuelle 
Kerne im Task-Manager, ich habe zwei Prozessoren mit jeweils zwei 
Kernen, wenn ich mich recht erinnere.

Die Simulation gibt eine ganze Menge an Daten aus... Allein das 
Auswählen und Anzeigen eines Signals in LTspice dauert einige Minuten.
Hat jemand Erfahrungen mit den Import von den Ausgabedaten der 
LTspice-Simulation in DIAdem? Oder empfielt sich gar eine andere 
Software?!

Grüße
Sascha

von Marian (phiarc) Benutzerseite


Lesenswert?

Sascha W. schrieb:
> gibt es eine Möglichkeit wie ich
> LTspice dazu bewegen kann mehr Kerne zu benutzen?

Ich kann mich nicht erinnern, dass LTspice jemals bei mir mehrere Kerne 
genutzt hätte, auch bei Simulationen, die mal ne halbe Stunde oder so 
gerechnet haben, obwohl es das eigentlich können sollte (Tools -> 
Control Panel -> SPICE -> Max threads). Ist vielleicht einfach verbuggt 
oder vielleicht funktioniert das nicht mit jeder bzw. nur mit bestimmten 
Schaltungen oder sowas.

Edit:
Alter Thread dazu: Beitrag "CPU Auslastung während Simulation LTSpice"

Scheint so, als würde LTspice anhand der Schaltungsgröße vorab 
entscheiden, ob Multithreading genutzt wird. Bei der erwähnten 
Beispielschaltung (3722-1.asc) nutzt es bei mir dann auch alle Kerne.

: Bearbeitet durch User
von Klaus R. (klara)


Lesenswert?

Marian  . schrieb:
> Ich kann mich nicht erinnern, dass LTspice jemals bei mir mehrere Kerne
> genutzt hätte, auch bei Simulationen, die mal ne halbe Stunde oder so
> gerechnet haben, obwohl es das eigentlich können sollte (Tools ->
> Control Panel -> SPICE -> Max threads). Ist vielleicht einfach verbuggt
> oder vielleicht funktioniert das nicht mit jeder bzw. nur mit bestimmten
> Schaltungen oder sowas.

Zumindest noch vor drei Jahren hat LTspice meine 8 Kerne voll genutzt.
mfg klaus

von Helmut S. (helmuts)


Lesenswert?

LTspice schätzt am Anfang ob es sich lohnt mehrere Kerne zu benutzen. 
Die genauen Kriterien kenne ich nicht. Eines der Kriterien ist aber die 
Größe der Schaltung.

von c-hater (Gast)


Lesenswert?

Sascha W. schrieb:

> ich kämpfe gerade mit einer Schaltung deren Simulation in LTspice sehr
> viel Zeit in Anspruch nimmt - Ich sehe im Task-Manager, dass nur einer
> meiner Kerne damit beschäftigt ist, gibt es eine Möglichkeit wie ich
> LTspice dazu bewegen kann mehr Kerne zu benutzen?

Kein spezielle. LTSpice benutzt genau dann mehrere Kerne, wenn das 
gestellte Problem das sinnvoll erscheinen läßt. Längst nicht jedes 
Problem ist parallelisierbar, parallelisierbare Probleme sind sogar eher 
die Ausnahme im weiten Raum der denkbaren Probleme. Allerdings: 
praktisch relevante Probleme sind oft durchaus zumindest teilweise 
parallelisierbar.

> Mein Betriebssystem ist übrigens Windows 7, 64-bit. Ich sehe 8 virtuelle
> Kerne im Task-Manager, ich habe zwei Prozessoren mit jeweils zwei
> Kernen, wenn ich mich recht erinnere.

Du weiß nichtmal, was du für eine CPU benutzt und was die leisten kann? 
Tss... Dann hast du kein ernsthaftes Performance-Problem...

> Die Simulation gibt eine ganze Menge an Daten aus... Allein das
> Auswählen und Anzeigen eines Signals in LTspice dauert einige Minuten.

Das hat mit der CPU-Zahl oder der Zahl der Kerne rein garnix zu 
schaffen. Das liegt einfach daran, dass du offensichtlich ein recht 
komplexes Netz berechnet hast und/oder eine lange Zeit und/oder sehr 
kleine Schritte in der Zeit.
Das Produkt dieser drei Größen ist für die Datenmenge der Simulation 
entscheidend. Und dieser ganze Solms liegt auf der HD. Hier stößt du 
also eher auf die Limitierungen des IO-Systems deiner Hardware (und/oder 
des RAMs), nicht auf die Grenzen der CPU.

> Oder empfielt sich gar eine andere
> Software?!

Ich empfehle: mehr Kompetenz für dich selber. Und zwar in jeder 
Beziehung. Zum einen bei der Wahl der Hardware (die das Bewusstsein über 
die Möglichkeiten und Grenzen der vorhandenen Hardware wesentlich 
einschliesst) und zum anderen insbesondere bei der Wahl der 
Simulationsparameter. Nein, man muss z.B. keine NE555-Schaltung mit 
einer 1ps-Transient-Analyse über 24h Stunden Realzeit auf einem Atom 
N350-System mit 1GB RAM und ultralahmer SSD beharken ...

Das Ergebnis dieser Simulation wird nämlich kein bissel mehr aussagen, 
als wenn man dieselbe Schaltung mit z.B. 10ns Auflösung berechnet hätte. 
Aber das Ergebnis wird etwa 10.000x schneller berechnet sein und etwa 
den 10.000sten Teil der Datenmenge produzieren (in der dann zu 
navigieren ist). Und zwar ganz egal, wie lahm die verfügbare Hardware 
absolut ist...

von Sascha W. (arno_nyhm)


Lesenswert?

Vielen Dank für Eure hilfreichen Antworten Marian, Klaus und Helmut!
Es ist also ganz klar die Regel dass LTspice kein Pronlem damit hat 
mehrere Prozessoren zu beschäftigen...

----
- Ich habe es nun tatsächlich auch geschafft LTspice dazu zu bewegen 
alle Prozessoren zu benutzen! Aber ich weiß nicht wirklich wie ich das 
angestellt habe...
Der "Tools -> Control Panel -> SPICE -> Max threads" Parameter steht bei 
mir standardmäßig auf 8.
Doch habe ich einen Fehler gemacht: Ich wusste nicht, dass LTspice ein 
paar undurchsichtige Kriterien ansetzt and demnach entscheidet wieviele 
Prozessoren es benutzt.
Ich habe eher versucht meine Schaltung zu minimieren um die 
Simulationsdauer zu verkürzen... Wobei auch die Minimal-Version recht 
komplex ist und einige Zeit (~15 Minuten - auf nur einem Prozessor) 
benötigt.

Nun habe ich eine neue Datei angelegt und die komplexe Version der 
Schaltung neu aufgebaut.
Der Grund warum diese Simulation so viel Zeit benötigt ist die 
Komplexität der Schaltung - Sie enthält viele realitätsnahe Bauteile: 
Alle relevanten Kondensatoren, Induktivitäten und Wiederstände als ihr 
komplexes Ersatzschaltbild.
Diese umfangreichere Schaltung braucht nun auch wieder einige Zeit zur 
Simulation (~45 Minuten) benutzt allerings alle Prozessoren!

Somit ist keine Möglichkeit zur Beschleunigung der Simulation mehr 
gegeben und ich bin zufrieden, auch wenn die Simulation einige Zeit 
dauert - Es geht halt nicht schneller.

----
- Die Frage bezüglich des Simulationsdaten-Exports konnte ich mir selbst 
beantworten, LT sagt folgendes:
http://www.linear.com/solutions/1815

Das Format der so erstellten Datei ist hervorragend zum Import in jede 
zumindest einigermaßen sinnvoll ausgelegte Software geeignet.
In DIAdem erledigt das der "Text DataPlugin-Assistent" wunderbar!

Die Datei enthält 6 relevante Signale, simuliert über 2s mit einer 
(nicht konstanten) durchschnittlichen Schrittweite von ca. 30ns. - Also 
um die 66,666,666 Zeilen. Ich habe die Datei nicht mehr aber glaube mich 
zu erinnern, dass sie um die 7GB groß war.

DIAdem hat mit derart großen Datensätzen kein Problem und bietet und 
komfortable Analyse-Optionen - Deshalb wollte ich es ja zur Auswertung 
einsetzen. Das klappt nun also wunderbar.


Ich danke Euch für die Hilfe!

Grüße
Sascha

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.