WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

1. PC Auswahl und 2. Out oft Memory.

 

Ralf1982
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 21.08.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.08.2014, 08:06     Titel: 1. PC Auswahl und 2. Out oft Memory.
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen


Epfi
Forum-Meister

Forum-Meister



Beiträge: 1.134
Anmeldedatum: 08.01.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.08.2014, 08:33     Titel: Re: 1. PC Auswahl und 2. Out oft Memory.
  Antworten mit Zitat      
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.
Private Nachricht senden Benutzer-Profile anzeigen
 
Ralf1982
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 21.08.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.08.2014, 09:02     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
Epfi
Forum-Meister

Forum-Meister



Beiträge: 1.134
Anmeldedatum: 08.01.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.08.2014, 09:26     Titel:
  Antworten mit Zitat      
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.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 21.08.2014, 09:32     Titel:
  Antworten mit Zitat      
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
Code:
A = (große Variable);
B = A + 1;
C = B * 2;
D = sin(C + 5);

etc. - mit dem Ergebnis, dass natürlich für jede dieser Variablen großer Speicherplatz benötigt wird. Effizienter wäre da jedoch
Code:
A = (große Variable);
A = A + 1;
A = A * 2;
A = sin(A + 5);

(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
Private Nachricht senden Benutzer-Profile anzeigen
 
Ralf1982
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 21.08.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.08.2014, 10:30     Titel:
  Antworten mit Zitat      
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 Smile

Ralf
Private Nachricht senden Benutzer-Profile anzeigen
 
Epfi
Forum-Meister

Forum-Meister



Beiträge: 1.134
Anmeldedatum: 08.01.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.08.2014, 11:15     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 21.08.2014, 11:40     Titel:
  Antworten mit Zitat      
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
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.