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 

Extreme Laufzeitkosten durch Dynamic Dispatching?



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!

08.02.2013, 13:01
Beitrag #9

Kiesch Offline
LVF-Stammgast
***


Beiträge: 415
Registriert seit: Mar 2009

2019, 2018, 2016
2009
DE

04519
Deutschland
RE: Extreme Laufzeitkosten durch Dynamic Dispatching?
Bearbeiten kann ich glaube nichtmehr daher neuer Post:

Habe mal getestet mit der elementaren Addition als SubVI --> da komm ich auf ~5-6ms für 100k operationen. Das Starten des SubVIs bewegt sich also im 50-60ns Bereich (sic!). Der Compiler optimiert das offensichtlich auch nicht weg, da die reine Elementare Addition nochmal um nen Faktor 10 (grob geschätzt; Zeitmessung springt für 100k Operationen zwischen 1 und 0 ms) schneller ist.

Was auch auffällt:

1. Laut Taskmanager schaft es das TestVI beide Kerne meines Rechners zu 100% auszulasten. Daher: Parralelität scheint zu funktionieren, der Geschwindigkeitszuwachs den man zu sehen scheint kommt dabei einfach aus dem zweiten Kern. Scheint also auch das tatsächlich nur die Rechenleistung die Ausfürungszeit limitiert.

2. Der Overhead fällt offenbar als CPU Zeit an und zwar bei irgendwas was spezifisch fürs dynamic dispatching sein dürfte. Hatte bisher eigentlich dynamic dispatching von der Behandlung her eher als bessere Case Struktur eingeordnet (Die Klasse ist quasi der Case Selektor, ansonsten wird eben einfach nur je nach Klasse der innere Teil des Case ausgeführt). Das scheint offenbar von der Internen Behandlung weit entfernt (da ja Cases gemeinhin als relativ performant gelten - ist ja letztlich auf niederster Ebene nur ne selektive Sprunganweisung).


Hat noch jemand Ideen wie man den Rechenaufwand reduzieren könnte?

Achja, hier noch nen anderer Post zum Thema von der NI Seite:

http://forums.ni.com/t5/LabVIEW-Idea-Exc...-p/2031778

Wobei ich auch nicht genau weis ob das wirklich noch nen Laufzeitgewinn bringen würde in meinem Fall.

Zitat:Märchen und Geschichten werden erzählt am Lagerfeuer, technischen Fakten werden mitgeteilt (oder so). (Genauso wie Software nicht auf einem Server "herumliegt", die ist dort installiert.)
*Zitat: IchSelbst*
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
RE: Extreme Laufzeitkosten durch Dynamic Dispatching? - Kiesch - 08.02.2013 13:01

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Dynamic Dispatch VI vor Zugriff schützen Kiesch 5 13.220 26.06.2012 08:31
Letzter Beitrag: BNT
  State Machine vs. Dynamic Dispatching Kiesch 4 12.183 12.03.2012 13:34
Letzter Beitrag: Kiesch

Gehe zu: