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 

Erstellen eines Großen Array (ohne Autoindizierung)



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!

13.03.2008, 15:32
Beitrag #11

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.689
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Erstellen eines Großen Array (ohne Autoindizierung)
' schrieb:ja, siehst du richtig- und die größe ist 250000 auf 5. die Stings in jedem feld haben im allg 7 zeichen (also 250000*5*7=8,75 MB)
1.25 Mio Strings.

Richtig(er) ist die Rechnung so: 250000*5*(7 + 4+4+4). Also mehr Overhead als Nutzdaten.

Bist du dir im Klaren, was du dem Rechner und dem armen LV damit antust? String ist ein aufwändiger Datentyp. Da sollte es mich nicht wundern, wenn alleine das Erstellen des Arrays schon eine Sekunde dauert. Eine Abzweigung im Datenfluss kannst du mit solch einen Array nicht machen.

Kannst du die Daten nicht als Zahlen speichern? Int64 oder Double? Sollten es nur sieben Zeichen sein (das immer vorhandene X und das Tab-Zeichen kann man anders "implementieren"), könnte ein böser Trick mit einer harten Konvertierung von String nach Int64 funktionieren.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
13.03.2008, 15:43
Beitrag #12

Dominik_P84 Offline
LVF-Grünschnabel
*


Beiträge: 12
Registriert seit: Mar 2008

8.2 (7.0)
2008
de

76131
Deutschland
Erstellen eines Großen Array (ohne Autoindizierung)
Ok, ich konvertiere mal alle strings in zahlen (wie schon gesagt, bin ein blutiger Anfänger - und mit Rechnern hab ich es sowiso nicht so - das ich kein Informatiker bin, ist sicher schon aufgefallen).
Aber das Problem mit dem Speichern ohne den array aufzurufen ist damit doch immernochnicht gelöst, oder?
Ach ja, gibts hier eigendlich nen chatroom?
Dominik
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.03.2008, 16:47
Beitrag #13

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.689
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Erstellen eines Großen Array (ohne Autoindizierung)
' schrieb:Ok, ich konvertiere mal alle strings in zahlen
Ja stehen denn in den Strings Zahlen drinnen? (Dann geht das auch mit Standardmitteln.)

Zitat:Aber das Problem mit dem Speichern ohne den array aufzurufen ist damit doch immernochnicht gelöst, oder?
Das Problem ist: Ohne "Aufzurufen" kannst du nichts speichern. So wie du das im Bild gezeigt hast, ist das optimal: Vor der Schleife einmalig(!) erstellen, in der Schleife werden die Datem im Schieberegister gehalten, zum Speichern(!) wird die Funktion "In Array ersetzen" verwendet.

Eine weitere Frage ist: Wie lange braucht (das arme) LV um das Array nach der Schleife am FP darzustellen.

Zitat:Ach ja, gibts hier eigendlich nen chatroom?
Da gibts was oder ist was angedacht. eg schreibt da gerade was. Warte lieber auf eine Antwort von Mod oder Admin.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.03.2008, 17:01
Beitrag #14

Dominik_P84 Offline
LVF-Grünschnabel
*


Beiträge: 12
Registriert seit: Mar 2008

8.2 (7.0)
2008
de

76131
Deutschland
Erstellen eines Großen Array (ohne Autoindizierung)
[Ganz genau kann ich gar nicht sagen wiel lange LV brauch tum den array zu erstelen- grob überschlagen 8 stunden. un ja, in dem string sin zahlen drin, bzw jetzt habe ich die inhalte zu Floatzahlen konvertiert.
Grüße
Dominik
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.03.2008, 17:16
Beitrag #15

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Erstellen eines Großen Array (ohne Autoindizierung)
8 Stunden??? Was machst du noch in deiner Schleife?
Was sind denn deine Rechnerdaten?

Ich habe mal einen Vergleichstest gestartet mit den von dir angegebenen Maximalwerten: 250000 x 5 Werte, hier die Ergebnisse:

   

Lv82_img
Sonstige .vi  Untitled8.2_mod.vi (Größe: 29,78 KB / Downloads: 191)


Zu sehen ist:
1. Zeit zum Erstellen des Arrays (einmal DBL, einmal String), klar ist String um Welten langsamer, aber ich lande doch bei noch erträglichen 500ms zur Initialisierung.
2. Dann der Durchlauf (2 Mio mal) mit Hilfe der Zufallszahlen, wobei dann ca. 1 Mio mal was ersetzt wird. String ungefähr 16mal langsamer, aber ist doch immer noch nicht im Stunden-Bereich.

MfG, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.03.2008, 12:12
Beitrag #16

Dominik_P84 Offline
LVF-Grünschnabel
*


Beiträge: 12
Registriert seit: Mar 2008

8.2 (7.0)
2008
de

76131
Deutschland
Erstellen eines Großen Array (ohne Autoindizierung)
Hi Jens
Hey - ich weis nicht wie ich dir danken soll - ich hab mein Programm nach deiner Vorlage umstrukturiert (sequenz, "To lon integer" und habe meine Anzeige (im schleifendurchlauf rausgenommen- was einer der fehlereinflüsse war, aber nicht der einzige) - Und es FUNKTIONIERT!!! Jujuuuu!!!!
(ich dachte echt schon ich muss das Programm immer nachts laufen lassen).
Also - vielen Dank von einem ultraerleichtertem Student im Praxissemester
MFG
Dominik
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
14.03.2008, 17:12 (Dieser Beitrag wurde zuletzt bearbeitet: 14.03.2008 17:13 von Y-P.)
Beitrag #17

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Erstellen eines Großen Array (ohne Autoindizierung)
Krass, wieso kriege habe ich im Vergleich so niedrige Werte (vor allem "ms-String-Array")? Hast Du auch 'nen Dual-Core zum Testen verwendet?

   

Gruß Markus

' schrieb:8 Stunden??? Was machst du noch in deiner Schleife?
Was sind denn deine Rechnerdaten?

Ich habe mal einen Vergleichstest gestartet mit den von dir angegebenen Maximalwerten: 250000 x 5 Werte, hier die Ergebnisse:

[attachment=38756:Image01.png]

Lv82_img[attachment=38757:Untitled8.2_mod.vi]

Zu sehen ist:
1. Zeit zum Erstellen des Arrays (einmal DBL, einmal String), klar ist String um Welten langsamer, aber ich lande doch bei noch erträglichen 500ms zur Initialisierung.
2. Dann der Durchlauf (2 Mio mal) mit Hilfe der Zufallszahlen, wobei dann ca. 1 Mio mal was ersetzt wird. String ungefähr 16mal langsamer, aber ist doch immer noch nicht im Stunden-Bereich.

MfG, Jens

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.03.2008, 19:11
Beitrag #18

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.689
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Erstellen eines Großen Array (ohne Autoindizierung)
' schrieb:Krass, wieso kriege habe ich im Vergleich so niedrige Werte (vor allem "ms-String-Array")?
Hast du das VI mindestens fünfmal direkt hintereinander laufen lassen? Bei mir war da auch zuerst was um die 4 Sekunden. Am Schluss waren es doch 16 Sekunden.

Zitat:Hast Du auch 'nen Dual-Core zum Testen verwendet?
Mein Laptop hat keinen DualCore.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.03.2008, 20:48
Beitrag #19

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Erstellen eines Großen Array (ohne Autoindizierung)
Bei mir sind es nach schon beim 3. Mal über 35 Sekunden...... Hmm

Gruß Markus

' schrieb:Hast du das VI mindestens fünfmal direkt hintereinander laufen lassen? Bei mir war da auch zuerst was um die 4 Sekunden. Am Schluss waren es doch 16 Sekunden.

Mein Laptop hat keinen DualCore.

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.03.2008, 22:09
Beitrag #20

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.689
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Erstellen eines Großen Array (ohne Autoindizierung)
' schrieb:Bei mir sind es nach schon beim 3. Mal über 35 Sekunden...... Hmm
Das sind ja 100% mehrHmm
Steigt das noch an bis zum 6. Mal?

PIV, ca. 3GHz, ca. 1GB?

Stichwort: Speichermanager und CarbageCollection (oder wie das wieder heißt).

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Änderung von großen Cluster (Type Def.) führt zu out of Memory exeption spacz 8 6.359 28.10.2019 09:01
Letzter Beitrag: spacz
  Auf Eigenschaften eines Textrings zugreifen, der eine Array-Indexanzeige ersetzt Horst 4 3.902 08.08.2019 08:00
Letzter Beitrag: Horst
  aus Zeichenkette Array erstellen hubem14 5 4.792 16.08.2016 15:50
Letzter Beitrag: Freddy
  Array erstellen Alexos 9 9.727 02.04.2015 12:49
Letzter Beitrag: jg
  2D Array nach 0/1 durchsuchen & neues Array erstellen Nullstrom 4 5.378 04.03.2015 13:25
Letzter Beitrag: Lucki
  Gutes LV Design bei großen Programmen elhorst 31 20.272 18.09.2014 06:31
Letzter Beitrag: elhorst

Gehe zu: