|
sitom |
Forum-Newbie
|
|
Beiträge: 7
|
|
|
|
Anmeldedatum: 12.03.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.03.2012, 15:39
Titel: Memory
|
|
Hallo,
ich bearbeite viele Messdaten und es kommt häufiger vor, dass ich mehrere Daten einlesen will und MatLab MEMORY-Fehler bringt.
Wie weiße ich MatLab zusätzlichen Arbeitsspeicher bzw Festplattenspeicher zu?
|
|
|
|
|
Winkow |
Moderator
|
|
Beiträge: 3.842
|
|
|
|
Anmeldedatum: 04.11.11
|
|
|
|
Wohnort: Dresden
|
|
|
|
Version: R2014a 2015a
|
|
|
|
|
|
Verfasst am: 12.03.2012, 15:41
Titel:
|
|
glaube das hat ehr mit der rechnerarchitektur zu tun. aber da können dir jan harald oder andreas bestimmt mehr zu sagen. sonst vieleicht daten splitten und einzeln verarbeiten. wenn du memory im command eingiebst sagt die matlab wie groß maximal dein größtes arrey sein darf
|
|
|
sitom |
Themenstarter
Forum-Newbie
|
|
Beiträge: 7
|
|
|
|
Anmeldedatum: 12.03.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.03.2012, 15:48
Titel:
|
|
>> memory
Maximum possible array: 991 MB (1.039e+009 bytes) *
Memory available for all arrays: 1292 MB (1.355e+009 bytes) **
Memory used by MATLAB: 436 MB (4.576e+008 bytes)
Physical Memory (RAM): 3067 MB (3.216e+009 bytes)
* Limited by contiguous virtual address space available.
** Limited by virtual address space available.
wie kann ich nun matlab zusätzlich speicher zur verfügung stellen?
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 12.03.2012, 15:55
Titel:
|
|
Hallo,
MATLAB verwendet soviel Arbeitsspeicher, wie zur Verfügung steht.
MEMORY gibt den zur Verfügung stehenden Arbeitsspeicher an. Das Schließen anderer speicherintensiver Anwendungen kann natürlich helfen, zusätzlichen Speicher freizubekommen.
Ein 64bit-Betriebssystem zusammen mit 64bit-MATLAB erlaubt zwar, mehr als 3 GB und über Swapping sogar noch mehr Arbeitsspeicher zu verwenden, als eigentlich zur Verfügung steht, aber letzteres wird generell so langsam, dass es keine gute Idee ist, den Swap mit zu benutzen.
Wie Winkow schon sagte: Daten nacheinander statt gleichzeitig verarbeiten, oder auch paketweise.
Es steht dir natürlich frei, Daten auch auf die Festplatte zu schreiben bzw. von dort zu lesen, aber dir muss dabei klar sein, dass das im Verhältnis zu Arbeitsspeicherzugriffen sehr langsam ist. Also: lieber sehen, dass man mit dem vorhandenen Arbeitsspeicher klarkommt.
Grüße,
Harald
|
|
|
Winkow |
Moderator
|
|
Beiträge: 3.842
|
|
|
|
Anmeldedatum: 04.11.11
|
|
|
|
Wohnort: Dresden
|
|
|
|
Version: R2014a 2015a
|
|
|
|
|
|
Verfasst am: 12.03.2012, 15:57
Titel:
|
|
vieleicht kann man die arrays auch als single laden vom datenformat. kenn mich damit nicht so aus. das braucht nicht so viel speicher.
|
|
|
sitom |
Themenstarter
Forum-Newbie
|
|
Beiträge: 7
|
|
|
|
Anmeldedatum: 12.03.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.03.2012, 16:18
Titel:
|
|
ich kann nicht wirklich weniger daten einlesen, ich brauche die genauigkeit.
ich taste das signla im ms-takt ab und pro datei (30min) habe ich 1,8millionen messwerte und ich kann max 3 dateien gleichzeitig einlesen, dann kommt der memoryfehler und ich würde aber einmalig gern alle 48dateien für einen tag insgesagt einlesen und plotten lassen!
wie ist der befehl für die festplattenspeicher zuweisung?
ps: ich habe ja zeit
|
|
|
Winkow |
Moderator
|
|
Beiträge: 3.842
|
|
|
|
Anmeldedatum: 04.11.11
|
|
|
|
Wohnort: Dresden
|
|
|
|
Version: R2014a 2015a
|
|
|
|
|
|
Verfasst am: 12.03.2012, 16:30
Titel:
|
|
deine memory post von oben lässt nicht darauf schließen das der memory fehler auftreten sollte. ein array mit 1.8millionen einträgen ist ja nur 14 mb groß es sollte eigentlich möglich sein mehr als 3 dateien zu laden.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 12.03.2012, 16:32
Titel:
|
|
Hallo,
das wäre kein Zuweisen von Festplattenspeicher in dem Sinn, sondern ganz normales Lesen und Schreiben von Dateien. Da die Daten aber ohnehin aus Dateien kommen, wäre das widersinnig.
Selbst wenn du die Daten in den Speicher bekommst: beim Plotten werden sie in der Figure und damit im Hauptspeicher hinterlegt, das hilft also auch nicht weiter.
Je nachdem wie stark die Messwerte in einem Sekundenzeitraum variieren, würde ich mir ein Downsampling überlegen und z.B. nur jeden 100. oder 1000. Wert plotten; natürlich kann man das auch netter machen.
Grüße,
Harald
|
|
|
sitom |
Themenstarter
Forum-Newbie
|
|
Beiträge: 7
|
|
|
|
Anmeldedatum: 12.03.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.03.2012, 16:38
Titel:
|
|
Die Dateien,die ich vorliegen habe sind 17x1,8Millionen Messwerte, wo ich immer schon einzelne Spalten nur einlese. ich bekomme dann bei 3-4 dennoch den Fehler.
ich kann leider die samplerate nicht runter setzen,es geht mir um die Gradientenbestimmung der signale geht.
ich dacht nur,dass man matlab zusätzlichen speicher geben kann, vielleicht sollte ich doch darüber nachdenken mir ein 64bit win7 zu installieren.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 12.03.2012, 16:46
Titel:
|
|
Hallo,
für jede Datei erst Gradienten bestimmen und dann downsamplen?
Dir muss klar sein, dass du 12-16 Mal soviel Speicher benötigst, wie du momentan zur Verfügung hast. Das wird auch mit Win7 64bit schwierig.
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.
|
|