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 

Array Indizieren - Teilarray ersetzen durch Kommawerte



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!

26.05.2010, 07:12 (Dieser Beitrag wurde zuletzt bearbeitet: 26.05.2010 07:13 von stromflo.)
Beitrag #11

stromflo Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 125
Registriert seit: Apr 2010

8.2
2010
DE


Deutschland
Array Indizieren - Teilarray ersetzen durch Kommawerte
Hallo Seba,

mich würde noch interessieren wo ich das ramp vi finde, welches du in dem Vergleichpost bei Variante 1 gepostet hast.

Will ja auch für die Zukunft lernen, wer weiß wie viele Anwendungen ich noch in LabVIEW schreibSmile

Und noch mal vielen Dank! Man muss schon sagen ein super Forum ist das hier!Thanx

Gruß Flo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
26.05.2010, 07:21
Beitrag #12

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
Array Indizieren - Teilarray ersetzen durch Kommawerte
' schrieb:mich würde noch interessieren wo ich das ramp vi finde, welches du in dem Vergleichpost bei Variante 1 gepostet hast.
Es gibt immer noch die Hilfe flo ... "Rampen-Muster"

   

„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
26.05.2010, 07:22
Beitrag #13

chrissyPu Offline
LVF-Stammgast
***


Beiträge: 467
Registriert seit: Jun 2006

2014 PDS
2006
DE_EN

64283
Deutschland
Array Indizieren - Teilarray ersetzen durch Kommawerte
Das ist ein VI aus der "Signalverlauf erstellen"-Palette...
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.05.2010, 07:51
Beitrag #14

RoLe Offline
LVF-Guru
*****


Beiträge: 1.236
Registriert seit: Jul 2007

-
1997
en

0
Schweiz
Array Indizieren - Teilarray ersetzen durch Kommawerte
' schrieb:Für meine Zwecke ist die Variante 2 aber wohl außreichend, da das Array ja nur am Teststart indiziert wird und dann die Werte ersetzt werden.
Du schreibst nirgens, dass du eine Rampe im erstellten Array benötigst.
Du möchtest doch nur "schnell" ein Array erstellen, dazu genügt die Funktion "Array initialisieren".
Oder nicht ?


Angehängte Datei(en) Thumbnail(s)
   

.·´¯)--> Leben ist das, was dir passiert, wenn du eifrig dabei bist andere Pläne zu machen <--(¯`·.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.05.2010, 09:19 (Dieser Beitrag wurde zuletzt bearbeitet: 26.05.2010 09:26 von Lucki.)
Beitrag #15

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Array Indizieren - Teilarray ersetzen durch Kommawerte
Also ich gestehe, daß ich einen Tick habe: ich scheue Konvertierungen wie der Teufel das Weihwasser. Deshalb benutze ich in for-Schleifen in der Regel nicht den index i, wenn ich einen dbl-Array erzeugen und/oder berechnen muß, sondern mache es eher so:
   
Beim Ramp-Generator (- den ich in genau diesem Beispiel natürlich auch bevorzugen würde -) ist noch zu bemerken, daß er in der Basisversion von LV nicht enthalten ist.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.05.2010, 09:51
Beitrag #16

stromflo Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 125
Registriert seit: Apr 2010

8.2
2010
DE


Deutschland
Array Indizieren - Teilarray ersetzen durch Kommawerte
Danke!

Gibt ja wirklich enorm viele Möglichkeiten.


Zitat:Du möchtest doch nur "schnell" ein Array erstellen, dazu genügt die Funktion "Array initialisieren".

Am Anfang hatte ich das Problem, dass ich das Array mit build Array in der Testschleife erstellt hab. Da stellte ich fest, dass die Performance darunter richtig leidet.......
Darauf hin hab ich mir dann gedacht ich initialisiere es lieber vor dem Test und ersetze die Werte, dann nur noch während dem Testlauf. Von ca. 95% CPU Auslastung blieben durch Array ersetzen nur noch ca. 10% übrig. Die Array Build Funktion verschlingt quasi ein haufen Performance.

Also passt natürlich auch diese Variante ohne Probleme.

Gruß Flo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
26.05.2010, 14:32 (Dieser Beitrag wurde zuletzt bearbeitet: 26.05.2010 14:32 von Kiesch.)
Beitrag #17

Kiesch Offline
LVF-Stammgast
***


Beiträge: 401
Registriert seit: Mar 2009

2019, 2018, 2016
2009
DE

04519
Deutschland
Array Indizieren - Teilarray ersetzen durch Kommawerte
@Typenkonvertierung in und außerhalb der Schleife

zeigt ja offenbar ein sehr nachvollziehbares Verhalten. Für große Arrays ist der Cast nach der Schleife schneller (ein komplexerer Cast der erst bei vielen Elementen Zeit einspart), während für wenige Elemente der Cast in der Schleife schneller ist (wenige Elemente ergo begrenzt viele Aufrufe dieses mit weniger "overhead" belasteten Casts). Wobei natürlich wenige Elemente hier 10k und viele 100k entspricht. Es wäre also anzunehmen, dass irgendwo dazwischen beide Varianten gleich schnell sind.

P.S: Ist die Variante ohne typecast eigentlich schneller? Oder wird der Vorteil durch die Inkrement Operation wieder aufgefressen? Die könnte man ja sogar weglassen wenn es nur ums reine Array initialisieren geht und hätte vermutlich die Variante mit dem geringsten Zeitaufwand.

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
26.05.2010, 15:19
Beitrag #18

jak888 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 133
Registriert seit: Apr 2010

2010
2010
en

97447
Deutschland
Array Indizieren - Teilarray ersetzen durch Kommawerte
Also ich hab grad auch nochmal ein kleines Programm zusammengesteckt...
wie es aussieht hängt das ein bisschen von der externen Belastung des Rechners ab, denn, wenn ich die VI mehrfach starte und die 2 Möglichkeiten gegeneinander laufen lasse gewinnt mal die eine, mal die andere möglichkeit...

"Good judgement comes from experience, experience comes from bad judgement."
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.05.2010, 15:21
Beitrag #19

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Array Indizieren - Teilarray ersetzen durch Kommawerte
' schrieb:P.S: Ist die Variante ohne typecast eigentlich schneller? Oder wird der Vorteil durch die Inkrement Operation wieder aufgefressen? Die könnte man ja sogar weglassen wenn es nur ums reine Array initialisieren geht und hätte vermutlich die Variante mit dem geringsten Zeitaufwand.
"Typecast" ist eine sehr schnelle Oparation, weil dort mit den Daten überhaupt nichts gemacht wird, außer daß ihnen eine andere Typbeschreibung untergeschoben wird. - Aber das ist nicht das, was Du meinst, Du meinst "Konvertierung", und dort vermute ich eine eher umständliche Operation.
Increment und Dekrement sind Operationen, für die es bei allen Prozessoren eigene sehr schnelle Maschinenbefehle gibt. Ich gehe mal davon aus, daß LV diese Befehle direkt nutzt und daß die Operationen also schneller sind als eine normale Addition. - Bei Konvertierung von LV9 in frühere Versionen kommt übrigens immer ein Meldung, wenn das VI Inkrement/Dekrement-Funktionen enthält. Ich vermute, daß in LV9 diese Funktionen nochmals optimiert wurden, so daß sie vom Zeitverhalten her nicht mehr identisch sind mit den gleichen Funktionen in früheren Versionen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.05.2010, 15:31
Beitrag #20

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
Array Indizieren - Teilarray ersetzen durch Kommawerte
... und deswegen ärgern mich die pauschalisierenden Antworten bei der CLAD-Zertifizierung. Da heißt es einfach: "Konvertieren in der Schleife".

Vielleicht stolpert ja rolfk über den Thread ...

„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
  Boolean durch Array bedienen Gellerpa 3 4.369 07.06.2018 20:10
Letzter Beitrag: hansi9990
  2D Array durchsuchen und bestimmte Werte ersetzen sara2211 4 4.970 13.01.2017 10:59
Letzter Beitrag: sara2211
  in Schleife indizieren maxxillian 5 4.430 23.09.2016 09:26
Letzter Beitrag: jg
  Ersetzen von Array-Rotieren durch Rückkopplungsknoten bde2 2 3.116 27.04.2015 16:41
Letzter Beitrag: bde2
  In 2D Array Teilarray an bestimme Stelle einfügen? B.Buerkert 1 3.962 03.02.2014 16:16
Letzter Beitrag: GerdW
  Elemente in einem 2D Array ersetzen che-salih 6 7.320 02.12.2013 13:08
Letzter Beitrag: che-salih

Gehe zu: