INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Sehr hohe CPU Auslastung bei hoher Datenerfassungsrate



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

25.06.2014, 11:28 (Dieser Beitrag wurde zuletzt bearbeitet: 25.06.2014 11:30 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Sehr hohe CPU Auslastung bei hoher Datenerfassungsrate
Hallo Steffen,

Zitat:Dabei will ich nur sichergehen, dass genügend Bytes im Buffer sind. Außerdem soll der Buffer nicht vollaufen. Wenn ich das richtig sehe, dann ist der Buffer schon nach 0,01452 Sekunden voll (3MBaud Rate, 11 Bit pro Symbol und 3640 Symbole)
Indem du dem VISARead sagst, wieviele Daten es lesen soll, hast du auch schon die Frage nach genügend Daten im Buffer erledigt…

Zitat:Offenbar kann man der Funktion keine bruchteile von Millisekunden übergeben. Hm irgendwie schlapp...
1. Das Verhalten der Funktion ist in der Kontexthilfe beschrieben. Die hast du doch gelesen, oder?
2. Windows bietet nur einen Millisekunden-Timer, auf den LabVIEW hier zugreift. Ist also eher ein Problem des OS…
3. Du kannst auf einem nicht-realtime-Windows-PC sowieso nicht genau im µs-Bereich warten…
4. Auch das Warten auf 0ms kann sinnvoll sein - die Schleife erzeugt dann keine 100%ige CPU-Last mehr…

Zitat:Kennst du eine Alternative?
Die brauchst du hier nicht - und sie wäre wg. Punkt 3 sowieso hinfällig…
Entweder hast du mehrere Bytes im Buffer stehen, dann kannst du sie auch in einem Rutsch lesen - oder der Buffer ist leer, dann wartet das VISARead gemäß deinem TimeOut. Wozu also eine Wartefunktion? Hmm

Zitat:An dieser Stelle suche ich den Beginn des Datenpakets. Dabei sendet der µC einmal das Byte 0x80 (128). Anschließend kommen weiter 3960 Bytes, die die Daten enthalten. Das könnte man sicherlich optimieren, allerdings weis ich nicht so recht wie...
Indem man die empfangenen Daten in einem String/U8-Array sammelt und dann nachgelagert die Datenpakete anhand dieser Kennung auftrennt…

Zitat:Hm, ich hätte gerne das Schreiben der Daten parallel zum Anzeigen. Da muss ich mal drüber nachdenken.
Sinnvoll ist auch das Studium der LabVIEW-Hilfe, der mitgelieferten Beispiele und der Links in meiner Signatur…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
RE: Sehr hohe CPU Auslastung bei hoher Datenerfassungsrate - GerdW - 25.06.2014 11:28

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  VISA open/close CPU Auslastung Scuba 4 4.727 25.07.2014 10:39
Letzter Beitrag: cb
  Sehr langsame GBIP Schnittstelle-I/O Fehler!? LanceHardwood 2 4.554 24.11.2011 12:21
Letzter Beitrag: LanceHardwood
  Frontpanel und CPU-Auslastung dany22 0 3.009 16.12.2006 11:19
Letzter Beitrag: dany22

Gehe zu: