|
|
1. PC Auswahl und 2. Out oft Memory. |
|
Ralf1982 |
Forum-Newbie
|
|
Beiträge: 3
|
|
|
|
Anmeldedatum: 21.08.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.08.2014, 08:06
Titel: 1. PC Auswahl und 2. Out oft Memory.
|
|
Guten Tag allen,
ich programmiere seit 2011 mit MATLAB und habe ein Ultraschallsimulationstool selbst geschrieben.
1. Leider habe ich öfters "out of Memory" und wollte Wissen, ob jemand sich damit auskennt welche Computerkonfiguration am besten zu Matlab passt(Kompatibilität) oder wo man sich Kompetent beraten lassen kann.
Klar ist mir maximaler RAM und wenn man 3D Plots benötigt bestmögliche Grafikkarten, aber welche sind das?
Nützten 16 Prozessorkerne oder mehr etwas?
Welche wäre der schnellste PC?
2. Bei meinem Simulationstool habe ich öfters Out of Memory. Wenn jemand Erfahrungen damit hat, würde ich gerne Wissen wie er die Problematik großer Matrizen sinnvoll lösen kann.
Ich danke für Eure Hilfe und Mühen,
liebe Grüße,
Ralf Grundmann
|
|
|
|
|
Epfi |
Forum-Meister
|
|
Beiträge: 1.134
|
|
|
|
Anmeldedatum: 08.01.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.08.2014, 08:33
Titel: Re: 1. PC Auswahl und 2. Out oft Memory.
|
|
|
|
|
Ralf1982 hat Folgendes geschrieben: |
1. Leider habe ich öfters "out of Memory" und wollte Wissen, ob jemand sich damit auskennt welche Computerkonfiguration am besten zu Matlab passt(Kompatibilität) oder wo man sich Kompetent beraten lassen kann. |
Matlab läuft auf allem, wo auch ein Windows drauf läuft - ich halte es für unkritisch, welche Hardware da nun genau drunter steckt...
Zitat: |
Klar ist mir maximaler RAM und wenn man 3D Plots benötigt bestmögliche Grafikkarten, aber welche sind das? |
Die größte Speichermenge, die haushaltsübliche Rechner so verwalten können liegt irgendwo zwischen 24GB und 32GB. Ich bin mir aber nicht sicher, ob Matlab mit so viel Speicher überhaupt was anfangen kann.
Zitat: |
Nützten 16 Prozessorkerne oder mehr etwas? |
Manchmal. Wenn Dein Problem parallelisierbar ist, kannst Du mit der parallel computing toolbox mehrere Prozessoren nutzen. Oft ist das aber leider nicht der Fall.
Zitat: |
Welche wäre der schnellste PC? |
Wie groß ist Dein Budget? ;)
Zitat: |
Bei meinem Simulationstool habe ich öfters Out of Memory. Wenn jemand Erfahrungen damit hat, würde ich gerne Wissen wie er die Problematik großer Matrizen sinnvoll lösen kann. |
Müssen denn immer alle Daten zeitgleich im Arbeitsspeicher vorgehalten werden? Sonst kannst Du Daten zwischenzeitlich auf die Festplatte wegspeichern und später wieder laden, wenn Du sie dann wirklich brauchst.
Wenn Du auf gespeicherten Zeitreihen herumrechnest, kannst Du auch immer nur einen Zeitschritt laden und damit arbeiten, statt die ganze Zeitreihe auf einmal in den Speicher zu kopieren.
|
|
|
Ralf1982 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 3
|
|
|
|
Anmeldedatum: 21.08.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.08.2014, 09:02
Titel:
|
|
Hallo Epfi,
danke für deine schnelle Antwort.
Ich hatte 2012 programmiert, dass jeder Zeitschritt auf der Festplatte gespeichert wird. Das funktionierte einwandfrei, leider habe ich nicht mehr den Code dafür und die Datei nicht gespeichert. Hast Du einen Hinweis? Wo ich mich wieder reinlesen kann. Ich weiß nicht mehr, wie ich es damals gelöst habe.
Ich weiß, dass für große Matrizen eine Parallelisierung nicht unbedingt von Vorteil ist(Traffic).
Ich möchte dies aber dennoch probieren. Ich habe 10T je PC zur Verfügung(2 oder 3 Stück möchte ich kaufen), aber es soll sinnvoll angewendet werden und bei Hardware kenne ich mich gar nicht aus. Ich habe da echt Angst, dass falsche zu kaufen. Oder lohnt es sich mehr in einen Pc zu investieren, kann ich mir nicht vorstellen??
Danke für Deine Hilfe,
Ralf
|
|
|
Epfi |
Forum-Meister
|
|
Beiträge: 1.134
|
|
|
|
Anmeldedatum: 08.01.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.08.2014, 09:26
Titel:
|
|
|
|
|
Ralf1982 hat Folgendes geschrieben: |
Ich hatte 2012 programmiert, dass jeder Zeitschritt auf der Festplatte gespeichert wird. Das funktionierte einwandfrei, leider habe ich nicht mehr den Code dafür und die Datei nicht gespeichert. |
Ein guter Startpunkt wären hier die Funktionen fopen, fread und fwrite. Damit könntest Du zumindest die Ergebnisse schon mal aus dem Speicher raus halten und (falls vorhanden) auch Zeitreihen, die irgendwelche Sollwertvorgaben und ähnliches enthalten.
Zitat: |
Ich möchte dies aber dennoch probieren. Ich habe 10T je PC zur Verfügung(2 oder 3 Stück möchte ich kaufen), aber es soll sinnvoll angewendet werden und bei Hardware kenne ich mich gar nicht aus. |
Bei der Menge an Geld würde ich mich vielleicht am ehesten vertrauensvoll an Dell, HP und Konsorten wenden. Die können Dich dann auch ganz gut beraten:
* http://h17007.www1.hp.com/us/en/ent.....gh-performance-computing/
* http://www.dell.com/learn/us/en/555/high-performance-computing
* ...
Aber um da sinnvoll auswählen zu können müsstest Du meiner Einschätzung nach schon ungefähr wissen, wie gut Dein Problem bzw. Dein Programm parallelisierbar ist.
Zitat: |
Ich habe da echt Angst, dass falsche zu kaufen. Oder lohnt es sich mehr in einen Pc zu investieren, kann ich mir nicht vorstellen?? |
Das ist bei den Preisdimensionen völlig normal ;) Aber bevor Du so viel investierst, würde ich mich echt erst mal damit befassen, wie Du die Software an sich schneller bekommst. Finde die Lösung "wir kaufen für ganz viel Geld einen Rechner und sparen uns das Nachdenken" immer ausgesprochen unelegant...
Solltest Du im Umfeld einer Universität arbeiten, würde ich auf jeden Fall mal beim Rechenzentrum anfragen, was die so meinen und vielleicht auch schon rumstehen haben.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 21.08.2014, 09:32
Titel:
|
|
|
|
|
Hallo,
wenn es um die Vermeidung von Out-of-Memory geht, dann spielt lediglich RAM eine Rolle. Zudem benötigt man ein 64-bit - Betriebssystem, damit auch wirklich mehr als 3 GB addressiert werden können.
Die Anzahl der Kerne spielt nur für die Geschwindigkeit der Anwendung eine Rolle, wenn sie einmal läuft.
Das sinnvollste dürfte sein, die Anwendung mal im Debugging-Modus zu starten (z.B. mit dbstop if error) und zu schauen, welche Variablen wie groß werden. Erst dann kann man anhand des Codes konkrete Vorschläge machen, wie das Problem vermieden werden kann. Oft sehe ich z.B. Code wie
etc. - mit dem Ergebnis, dass natürlich für jede dieser Variablen großer Speicherplatz benötigt wird. Effizienter wäre da jedoch
(davon abgesehen, dass man das hier alles in eine Zeile schreiben könnte, aber es geht mir hier ums Prinzip)
Falls der Code an sich nicht gepostet werden kann, würde ich mir zunächst Consulting (z.B. direkt von MathWorks) holen statt 20-30000 Euro in neue Hardware zu investieren.
Zitat: |
Ich weiß, dass für große Matrizen eine Parallelisierung nicht unbedingt von Vorteil ist(Traffic). |
Jein. Wenn du dein Programm so zum Laufen bekommst, wäre das ja schon mal hilfreich. Deine Alternative, auf die Festplatte zu schreiben, dürfte häufig auch nicht schneller sein.
Grüße,
Harald
|
|
|
Ralf1982 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 3
|
|
|
|
Anmeldedatum: 21.08.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.08.2014, 10:30
Titel:
|
|
Hallo Epfi und Harald,
danke für Eure schnelle und ausführliche Hilfe bzw. Ratschläge. Echt lieb, war diese Woche echt verzweifelt.
Das probiere ich gleich mal alles aus.
Ich hätte noch eine kleine Frage an Harald. Kennst Du jemanden persönlich mit denen ich in Kontakt treten kann?
Danke
Ralf
|
|
|
Epfi |
Forum-Meister
|
|
Beiträge: 1.134
|
|
|
|
Anmeldedatum: 08.01.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.08.2014, 11:15
Titel:
|
|
Was mir gerade noch beim radeln eingefallen ist: es gibt auch Unternehmen, die Rechenleistung vermieten. Je nach dem, was Du so mit Deiner Software vorhast, könnte das vielleicht eine Alternative sein. Sonst hast Du hinterher ein Stück Computer rumstehen, was jeden Tag 10 an Wert verliert, obwohl er gerade nicht einmal was zu rechnen hat.
Bei Amazon klappt es auf jeden Fall: http://www.mathworks.de/discovery/matlab-ec2.html
Da können Dir die Mitarbeiter vom Support aber sicherlich auch gut weiterhelfen.
Viele Grüße
Markus
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 21.08.2014, 11:40
Titel:
|
|
Hallo,
ich würde dir empfehlen, den Kontakt zu dem zuständigen Vertriebsmitarbeiter von MathWorks zu suchen. Falls dir nicht bekannt ist, wer das ist, über die Zentrale anrufen: +49-89-45235-6700
http://www.mathworks.de/company/aboutus/contact_us/
Dort kann man mit dir abwägen, wie du am besten vorgehen solltest.
Grüße,
Harald
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|