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 

Dieses Thema hat akzeptierte Lösungen:

parallele Tasks - Performance



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!

10.10.2011, 07:03
Beitrag #11

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
RE: parallele Tasks - Performance
Vielen Dank für den Ansatz!


Angehängte Datei(en) Thumbnail(s)
       

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
10.10.2011, 07:22
Beitrag #12

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
RE: parallele Tasks - Performance
Edit (Anhang oben, einfach klasse diese 10-minütige Editzeit):

Bei DAQ die Blockgröße zu verdoppelt, damit kann ich gut leben. Aber die CAN Read-Funktion liest nur Message-weise (Anhang 1)
Und, wenn nix zu tun ist, lese ich immer weiter damit die Receive Queue nicht zu voll wird (Anhang 2) (Mir würde auch eine "empty Queue" Funktion besser gefallen, die einfach den gesamten Inhalt verwirft - das bietet der Treiber aber nicht, soweit ich das sehe...)

Ist das richtig so? (Hab vorher noch nie was mit CAN gemacht.)

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.10.2011, 19:25 (Dieser Beitrag wurde zuletzt bearbeitet: 10.10.2011 19:29 von schrotti.)
Beitrag #13

schrotti Offline
LVF-Freak
****


Beiträge: 842
Registriert seit: Feb 2008

2009 - 2011
2006
kA

70180
Deutschland
RE: parallele Tasks - Performance
Du kannst der CAN-Karte auch sagen, dass er Zeit x warten soll, bis n Msg (ReadMult Size for Notification) im Puffer liegen. Nach Ablauf der Zeit x gibt ncWaitForState, sofern n Nachrichten nicht eingetroffen sind, einen Fehler aus, der leicht ausgewertet werden kann. Der Puffer lässt sich nur durch ein Reset der Karte leeren (ncAction).

Optimizing Speed For CAN I/O

Gruß Julius
Empfehlungen: expressionflow, LavaG , mooregoodideas, OpenG, JKI Blog
Tipp
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.10.2011, 07:01
Beitrag #14

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
RE: parallele Tasks - Performance
Redest du dabei von CAN Karten/Treiber von NI? Ich hab nur eine viel billigere zur Verfügung. Muss mir da nochmal die ganzen Treiber VIs im Detail anschauen...

Vielen Dank für den Link.

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.10.2011, 10:06
Beitrag #15

gottfried Offline
LVF-Guru
*****


Beiträge: 1.735
Registriert seit: Mar 2007

2019
2004
EN

20**
Oesterreich
RE: parallele Tasks - Performance
Hallo,

> Also Merke: Keine Melder innerhalb von Schleifen anfordern!!!

das ist Interessant - wenn Du Bildreferenzen mit dem selben Namen in einer Schleife erzeugst hat das keinerlei Einflüssen (auch nicht nach 10^9 Durchläufen).

Wieso plötzlich bei Meldern? Vielleicht wenn man einen Namen vergibt und bei dem bleibt - wie mein Beispiel mit den Bildern - kann man das (unschöne) Programmteil laufen lassen?

Würde mich interessieren

Gottfried
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.10.2011, 18:52
Beitrag #16

schrotti Offline
LVF-Freak
****


Beiträge: 842
Registriert seit: Feb 2008

2009 - 2011
2006
kA

70180
Deutschland
RE: parallele Tasks - Performance
Du erzeugst eine Referenz auf einen Melder oder eine Queue. Wenn der Melder/Queue noch nicht exestieren, werden sie gewöhnlich beim ersten Aufruf ebenfalls erzeugt. Die Referenzen können auch einzeln geschlossen oder der Melder/Queue werden gleich eliminiert, wobei alle darauf verweisenden Referenzen entfernt werden. Bei deinen Bildern, ich denke du redest hier vom Vision-Toolkit, wird anscheinend immer die gleiche Referenz hervorgekramt.

Leicht ersichtlich wird dies, wenn man zwei Melder/Queue- Referenzen auf die gleiche Queue erzeugt und miteinander auf Gleichheit prüft. Der Vergleich fällt negativ aus. Mittels einer Sonder oder Umwandlung in Variant wird der der Unterschied ebenfalls sichtbar.

Gruß Julius
Empfehlungen: expressionflow, LavaG , mooregoodideas, OpenG, JKI Blog
Tipp
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
19.10.2011, 19:44
Beitrag #17

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
RE: parallele Tasks - Performance
Ganz vergessen! Schrottis Tipp mit den Interrups war die Lösung. Hab die Read-Häufigkeit von DAQ und CAN reduziert - läuft jetzt spitze!

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Parallele Frequenz-Datenerfassung mit NI-9401 ArneS 5 3.056 18.02.2021 09:41
Letzter Beitrag: GerdW
  parallele Ausführung von for-loops stsc 5 4.296 24.07.2019 15:12
Letzter Beitrag: stsc
  Probleme mit Performance (Berechnungen und Grafik) catbull 5 3.874 21.07.2018 10:13
Letzter Beitrag: IchSelbst
  Performance beim Betrieb über WLAN Heber 9 4.818 22.08.2017 14:28
Letzter Beitrag: Heber
  Parallele Ausführung mehrerer Sub-Vis Anna1988 21 12.227 20.07.2015 11:51
Letzter Beitrag: Anna1988
  Melder Performance D_Sev 13 9.696 08.09.2014 10:56
Letzter Beitrag: GerdW

Gehe zu: