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 befüllen verlangsamt sich zusehens



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.08.2010, 16:15 (Dieser Beitrag wurde zuletzt bearbeitet: 25.08.2010 16:19 von Lucki.)
Beitrag #9

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 befüllen verlangsamt sich zusehens
' schrieb:Soweit ich weiß sollte das Auto-Indexing der For-Schleife nur dann verwendet werden, wenn die For-Schleife nicht vorzeitig abgebrochen wird.
Das ist meines Wissens der Nachteil, der bei diesem Bedingungsanschluss der For-Schleife öfters erwähnt wird.
Wo sollte das jemals erwähnt worden sein? Wenn ja, dann vielleicht von Leuten, die sich einfach so was denken und dabei von dummen Programmiereren bei NI ausgehen?
Zitat:Eigentlich ist es auch klar, denn Auto-Indexing ist vermutlich nichts anderes als ein Vorbelegen des Arrays zu Beginn. Die Größe ist dabei durch N bzw. einen indizierten Eingang vorgegeben.
Klar ist eigentlich gar nichts. Obwohl alles richtig ist, was in dem Zitat nach dem Wort "klar" geschrieben steht.
Zitat:Verlässt man die For-Schleife nun vorzeitig, weiß ich nicht, was genau passiert. Vielleicht wird nur Speicher verschenkt, vielleicht ist die Performance schlechter, vielleicht kann's auch mal schief gehen.
Man weiß es aber dann, wenn man einfach mal davon ausgeht, wie man das selbst als zuständiger Programmierer optimal handhaben würde und wenn man weiterhin davon ausgeht, das die Leute bei NI mindesten genau so klug sind.
Die Antwort ist dann: Der mit Daten noch nicht aufgefüllte Teil des vorinitialisierte Array wird abgeschnitten.
Zusammengefasst heißt das: Es wird alles genau so gemacht, wie es als die bessere Alternative zum fortlaufenden Anhängen neuer Elemente bei großen Datenmengen empfohlen wird: Initialisieren eines Array maximaler Größe, Ersetzen von Elementen, Kürzen des Arrays auf die tatsächlich belegte Elementezahl.

Habe mal einen Performance-Test gemacht, man will ja vorher wissen ob man Recht hat bevor man sich weit aus dem Fenster lehnt.Mellow
Vorinitialisierung auf 10^6 Elemente (Bei Array anhängen nicht erforderlich), Auffüllen mit 10^5 Elementen:

   
lv90
Sonstige .vi  Array_erstellen_Test.vi (Größe: 12,25 KB / Downloads: 200)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Nachrichten in diesem Thema
Array befüllen verlangsamt sich zusehens - Karotte - 25.08.2010, 10:31
Array befüllen verlangsamt sich zusehens - Karotte - 25.08.2010, 11:24
Array befüllen verlangsamt sich zusehens - Karotte - 25.08.2010, 12:29
Array befüllen verlangsamt sich zusehens - Lucki - 25.08.2010 16:15

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Problem beim Array in Labview zu befüllen a.Jaou 4 4.050 13.09.2017 11:54
Letzter Beitrag: GerdW
  Auswahlmenue von Ring mit externen Daten befüllen? 1johleh 8 9.833 11.07.2017 14:10
Letzter Beitrag: GerdW
  Array befüllen mis3212 10 9.208 07.06.2017 11:51
Letzter Beitrag: Freddy
Bug LabVIEW Runtime verlangsamt PC-Start ElBartscho 4 5.449 12.11.2015 13:07
Letzter Beitrag: Cardinal1664
  Array überschreibt sich Labviewnoob2000 6 5.282 22.10.2013 19:14
Letzter Beitrag: Lucki
  2D-Array befüllen Martin Heller 1 5.058 15.04.2011 13:30
Letzter Beitrag: toaran_

Gehe zu: