LabVIEWForum.de
Speedchallenge - bekommt das jemand schneller hin als ich? - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Speedchallenge - bekommt das jemand schneller hin als ich? (/Thread-Speedchallenge-bekommt-das-jemand-schneller-hin-als-ich)



Speedchallenge - bekommt das jemand schneller hin als ich? - Kasi - 04.12.2013 14:43

Hallo zusammen,

heute morgen war's noch ein Problem, mittlerweile habe ich eine Lösung gefunden, die für mich "schnell genug" funktioniert.
Trotzdem hat es mich etwas gefuchst, die Frage nach der "optimalen Lösung".

Daher dachte ich mir, ich veranstalte ein Avendtliches Spektakulum und fordere einen jeden heraus, eine schnellere Lösung als die meine darzulegen!

Konkret geht es darum, ein periodisches verrauschtes Signal zu mitteln. Möglichst schnell.
Meine Lösung sieht wie folgt aus:
[attachment=47618]

Der pinke Teil soll so modifiziert werden, dass die Mittelung des Signals schneller verläuft. Wobei "schneller" natürlich relativ zu meiner Lösung zu sehen ist.

Viel Erfolg und Spaß beim Mitmachen!


RE: Speedchallenge - bekommt das jemand schneller hin als ich? - GerdW - 04.12.2013 15:51

Hallo Kasi,

ich kann mir nicht vorstellen, wie man schneller als gezeigt die entsprechenden Elemente aus dem Y-Signal herauspicken könnte. Du liest ja nicht fortlaufende Blöcke, sondern immer jeden x. Eintrag im Array (quasi ein DecimateArray). Und das Parallelisieren der Rechenschleife bringt auch nichts (positives), jedenfalls unter LV2009...

@Lucki: Bitte mal als Bild zeigen!


RE: Speedchallenge - bekommt das jemand schneller hin als ich? - Lucki - 04.12.2013 15:51

Genügt Dir eine Steigerung um den Faktor 8?
[attachment=47620]
[attachment=47621]
@ Gerd: Wenn das Bild kein Snipset sein soll, gern:
[attachment=47622]


RE: Speedchallenge - bekommt das jemand schneller hin als ich? - GerdW - 04.12.2013 16:05

Hallo Lucki,

bei mir nur ca. 3× schneller, aber trotzdem schöne Lösung!


RE: Speedchallenge - bekommt das jemand schneller hin als ich? - Lucki - 04.12.2013 16:43

(04.12.2013 16:05 )GerdW schrieb:  bei mir nur ca. 3× schneller, aber trotzdem schöne Lösung!
Dass es schneller ist - und ich war selbst überrascht -, liegt wahrscheinlich daran: Bei mir wird aus dem gegebenen riesengroßen Array nur abschnittweise gelesen. Bei Kasi wird aber vor dem Lesen mit den Elementen des ersten Arrays erst einmal ein zweites großes Array neu angelegt, und das dauert.


RE: Speedchallenge - bekommt das jemand schneller hin als ich? - Kasi - 04.12.2013 16:59

(04.12.2013 15:51 )Lucki schrieb:  Genügt Dir eine Steigerung um den Faktor 8?
Sehr schöne Lösung. Wie gesagt, ich bin mit meiner Geschwindigkeit vollkommen zufrieden, nur wollte ich wissen, wie nahe ich am Optimum bin - dass ich da meist mehrere Größenordnungen von entfernt bin, hat mir schon eine Community Weihnachts-challenge von vor zwei Jahren irgendwo gezeigt. Insofern ist ein Faktor 8 (oder 3) noch nicht ganz so bedenklich Smile


RE: Speedchallenge - bekommt das jemand schneller hin als ich? - Y-P - 04.12.2013 18:44

Bei mir ist es Faktor 2,66 (24ms gegenüber 9ms). Blink
Wieso ist der Faktor bei jedem so unterschiedlich? Unsure

Gruß Markus


RE: Speedchallenge - bekommt das jemand schneller hin als ich? - jg - 04.12.2013 19:13

Unterschiede auf Grund unterschiedlicher Computer (Prozessor/RAM/Mainboard-Chipsatz etc. pp.) und mglw. unterschiedlicher LabVIEW-Version, unter der das Ganze getestet wird. Schließlich ist in den letzten Versionen kräftig am Compiler optimiert worden.

Gruß, Jens


RE: Speedchallenge - bekommt das jemand schneller hin als ich? - Lucki - 04.12.2013 20:06

Wenn schon schnell, dann richtig. Weitere Verkürzung der Ausführungszeit von 16ms herunter auf 11ms durch Verwendung aller 4 Prozessorkerne für die for-Schleife: (CPU Typ QuadCore AMD Phenom II X4 Black Edition B55, 3215 MHz)
[attachment=47624]
Weil der PC zu langsam war, habe ich neulich mal das Programm "SpyHunter" laufen lassen und damit ca. 550 (!) "Bedrohungen" beseitigt. Seitdem läuft er wieder schneller.


RE: Speedchallenge - bekommt das jemand schneller hin als ich? - Kasi - 04.12.2013 21:35

So, ich habe jetzt nochmal rumprobiert und bin denke ich auf die optimale Lösung gekommen:
[attachment=47626]

Spaß beiseite, alle meine weiteren Versuche, mit in Place Element Strukturen oder Shiftereien, haben nur in extreme Verlängerungen der Bearbeitungszeit gewonnen. Damit ist Lucki einziger Teilnehmer und klarer Sieger der Challenge Wink