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

R2020a langsamer als R2019a / Umwandlung .hpf in .txt

 

anfaenger2020
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 20.04.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.04.2020, 16:12     Titel: R2020a langsamer als R2019a / Umwandlung .hpf in .txt
  Antworten mit Zitat      
Hallo zusammen,

mein Programm läuft unter dem neuen Release 2020a deutlich langsamer (ca. +50% mehr Zeit) als noch unter 2019a. Hat jemand eine Idee woran das liegen könnte?
Im Programm wandle ich eine .hpf-Datei aus QuickDAQ in eine .txt-Datei um. Da dies Messdateien mit mehreren Kanälen und längeren Zeitspannen sind, können diese recht groß werden und deshalb ist mir das ein Dorn im Auge.

Umgesetzt ist das ganze durch ein Programm, das eine Funktion aufruft, die wiederum die Einträge der .hpf-Datei liest. Im Programm werden die Einträge in eine Matrix geschrieben und mit fprintf in eine .txt-Datei geschrieben. Beides habe ich angehängt.

Bitte seid gnädig, Matlab ist leider nicht mein Steckenpferd, ich bin aber für Verbesserungsvorschläge sehr dankbar!

Vielen Dank schonmal für Antworten!

Beste Grüße

ReadHPFdata.m
 Beschreibung:

Download
 Dateiname:  ReadHPFdata.m
 Dateigröße:  11.78 KB
 Heruntergeladen:  351 mal
hpf2txt_Upload.m
 Beschreibung:

Download
 Dateiname:  hpf2txt_Upload.m
 Dateigröße:  12.01 KB
 Heruntergeladen:  343 mal
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 22.04.2020, 18:34     Titel:
  Antworten mit Zitat      
Hallo,

ohne das jetzt genauer angesehen zu haben: das ist eine klassische Frage für den Technischen Support von MathWorks.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
anfaenger2020
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 20.04.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.04.2020, 12:56     Titel:
  Antworten mit Zitat      
Hallo,

falls jemand ein ähnliches Problem hat: Zur Fehlersuche den MATLAB Profiler benutzen:
Code:

>>profile on;
>>%hier Name des eigenen Programms einfügen;
>> profile viewer;
 

Wenn fread verdächtig lange braucht, ist es das gleiche Problem wie bei mir.
Habe das Problem zusammen mit dem Matlab Support gelöst bekommen:
In 2020a hat es eine Änderung in der Erkennung der Zeichencodierung gegeben, die sich auf 'fread' auswirkt. Seit 2020a lösen zeichenorientierte file-Funktionen (fscanf, fgets, fread, fgetl, ...) beim Lesen einer Datei, die ohne eine bestimmte angegebene Codierung geöffnet wurde, eine automatische Zeichensatzerkennung aus.
Wenn man also im Voraus schon weiß, welche Codierung die Ursprungsdatei verwendet, kann man den spezifischen Datentyp einlesen (z.B. Zeichen).
Beispiele dafür:
Code:

 fid = fopen(filename, 'r', 'n', 'US-ASCII'); %für ASCII
 fid = fopen(filename, 'r', 'n', 'UTF-8');    %für UTF-8
 

Für 8-Bit-Codierungen (US-ASCII, Windows-1252, ISO-8859-1 u.ä.) kann man auch Folgendes verwenden:
Code:

 str = fread(fid, 8192, 'uint8=>char');
 

Bei mir hat dies geklappt. All das wurde allerdings in den release notes angekündigt ("As of R2020a, character-oriented file I/O functions such as fscanf, fgets, and fgetl trigger automatic character set detection when reading a file that was opened using fopen without a specified encoding."). Vielleicht sollte ich da öfters mal einen Blick reinwerfen...

@Moderation: Bitte den Titel ändern um den Thread spezifischer zu halten, "R2020a fread langsamer" o.ä.

Beste Grüße
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.