PNA-Speicher sparen bei exe-Dateien mit UPX-Kompression

  • Da GoPal 3 als Speicherfresser bekannt ist und Zusatzprogramme oft aus Gründen der Geschwindigkeit in My Flash Disk installiert werden, liegt es nahe, den begrenzten Speicherplatz auf dem PNA möglichst ökonomisch zu nutzen.


    Zumindest für exe-Dateien bietet sich hier das Packen mit dem Programm UPX an, das auch gut mit Windows-CE-Dateien funktioniert. Eine Größenordnung des eingesparten Speicherplatzes erkennt man aus den beiden beispielhaften Auflistungen der Größen der Original-Dateien und der mit UPX gepackten Programmdateien.


    Hinweis: Da die Dateien zur Laufzeit automatisch wieder auf ihre volle Größe entpackt werden, bleibt natürlich der Bedarf an Arbeitsspeicher selbst unverändert.


    Das UPX-Programm kann man sich bei http://upx.sourceforge.net/ als Freeware herunterladen.


    Wie wirds praktisch gemacht?


    1. Zu komprimierende Dateien vom PNA per AS auf den PC kopieren
    2. Die Original-Datei sichern
    3. upx dateiname.exe ausführen (man kann sich auch eine Batch-Datei schreiben)
    4. komprimierte exe-Datei in das Ursprungsverzeichnis auf den PNA per AS kopieren
    5. Original-Datei vom PNA entfernen


    Viel Erfolg!


    Gruß
    Max



    PS. Exe-Dateien, die fest im ROM des PNA liegen, kann man so leider nicht komprimieren

  • OK, jetzt wo die Screenshots passen, wird's deutlicher! ;) Hast Du auch mal die Zeiten vom (bspw.) GoPal-Start in beiden Varianten gestoppt, vlt. zusammen mit dem PW? Gibt's da wesentliche Unterschiede?

  • Könnte mir PC-Legastheniker bitte mal jemand erklären, warum ich auf der FlashDisk Platz sparen soll, den ich im Hauptspeicher bräuchte?


    Gruß
    bonnie

  • Zitat

    Original von bonnie
    Könnte mir PC-Legastheniker bitte mal jemand erklären, warum ich auf der FlashDisk Platz sparen soll, den ich im Hauptspeicher bräuchte?


    Vlt. um z.B. noch ein zus. Navi-Prg. auf der FD unterzubringen (und dann von einem schnelleren Start zu profitieren) oder andere Soft (für die, deren FD nur 256MB groß ist, so wie bei mir)?
    Wobei mir ein mehr an Hauptspeicher auch wesentlich lieber wäre! :D

  • Ralf25


    Ich habe es bei meinem PNA getestet und konnte keinen Unterschied (Zeitverzögerung) bemerken. Gemeint ist hier der zusätzliche Zeitbedarf, der benötigt wird, wenn sich die exe-Datei selbst entpackt. Genau genommen ist natürlich ein kleines Delay vorhanden, weil das Entpacken Zeit benötigt.


    Gruß
    Max

  • @bonnie


    Das Ziel des Packens ist generell nicht, Arbeitsspeicher zu gewinnen, den die Programmdatei immer braucht, es sei denn, man programmiert und kompiliert sie neu...


    Ziel des Speichersparens durch Packen beim PNA ist es z. B., mehr Programme in My Flash Disk installieren zu können. Dadurch muß man sie ggf. aus Platzgründen nicht mehr auf der SD-Karte installieren oder einfach dort vorrätig halten. Und warum das? Weil Lesen und Schreiben von/auf der My Flash Disk wesentlich schneller geht als von/auf der SD-Karte, Schreiben auf SD-karte ist teilweise um den Faktor 8 langsamer (bei schneller SD-Karte!).


    Und wenn es in My Flash Disk schneller geht... ist das Ziel m. E. eigentlich klar.


    Gruß
    Max

  • Zitat

    Original von maxandig
    Weil Lesen und Schreiben von/auf der My Flash Disk wesentlich schneller geht als von/auf der SD-Karte, Schreiben auf SD-karte ist teilweise um den Faktor 8 langsamer (bei schneller SD-Karte!).


    Hast Du dazu Auswertungen? ?(


    Denn früher war es genau anders herum.

    Navigation mit Google Maps über Android Auto und AAWireless im Nissan Qashqai Akari Automatik. Zusätzlich ist POIbase NAVI ein treuer Beegleiter meiner Fahrten  ;)

  • Zitat

    Original von HSVMichi


    Hast Du dazu Auswertungen? ?(
    Denn früher war es genau anders herum.


    So habe ich es auch in Erinnerung. Und dabei handelte es sich aber nicht um einen Faktor in der Größenordnung von 8x.
    Bei den Programmen, die ich zusätzlich auf dem PNA habe, müsste ich wohl schon mit einer Stoppuhr rangehen, um einen Unterschied beim Start von der SD-Karte oder von der FlashDisk festzustellen. Rein "gefühlt" tut sich da nichts.


    Gruß
    bonnie

  • HSVMichi


    Ich habe mit meiner "schnellen" 2-GB-SD-Karte einmal Vergleichsmessungen zwischen z. B. My Flash Disk und der SD-Karte gemacht mit dem kommerziellen Programm Kaisoft_Card_Speed_Test_v1.4 (Lesen und Beschreiben der div. PNA-Speicherbereiche). Und da kam der Faktor 8 beim Beschreiben zum Nachteil der SD-Karte heraus. Bei Interesse kann ich die Messungen auch mal wiederholen.


    Man merkt die langsame Schreibgeschwindigkeit auch daran: Wenn OziExplorerCE Tracks schreiben soll, stürzt er beim PNA470 ab, wenn auf die SD-Karte geschrieben werden soll; läßt man das Programm die Trackdaten auf My Flash Disk schreiben, funktioniert alles bestens.


    Gruß
    Max



    Edit: Messungen (eben noch mal gemacht mit dem o. g. Programm)


    SD-Karte:
    Write 9 MB in 16 Sek. (576 kB/s)
    Read 9 MB in 1 Sek. (9216 kB/s)


    My Flask Disk:
    Write 9 MB in 2 Sek. (4608 kB/s)
    Read 9 MB in 1 Sek. (9216 kB/s)


    Fazit: Man sieht beim Schreiben den Faktor 8 zum Nachteil der SD-Karte... wenn das Programm richtig mißt. - Möchte jemand seine Daten mal publizieren?!

    Einmal editiert, zuletzt von maxandig ()

  • Ich bin etwas verwundert über die Zweifel, daß die FD schneller sein soll als die SD-Karte. Meine bisherigen Erfahrungen zeigen eindeutig, das Schreib-/Lesezugriffe auf die SD-Karte wesentlich (und bonnie auch gefühlt!) länger dauern wie auf die FD.


    Mangels Benchmark habe ich grad mal mehrere Tests mit dem GoPal-PW gemacht. Der Test war das Importieren aktualisierter Overlays (75 *.asc).


    Das Ergebnis auf der FD waren 2 min. 40 sec., auf der SD 11 min 18 sec (man hat echt den hochzählenden %-Angaben zugucken können!), jeweils vom Start der Soft bis zum 1. Anzeigen des PW-Fensters. OK, handgestoppt zwar, aber bei den Zeiten ist's wurscht!
    Auch wenn's kein echter Benchmark ist, ich denke, das Delta hier wird nur verursacht durch die Dauer der Lese-/Schreibzugriffe, aber das ist bei Prg.-start entscheidend.
    Über den Faktor kann man sicher diskutieren, aber der Unterschied ist auch gefühlt zu merken. Ich vermute mal den internen SD-Controller als möglichen Flaschenhals und behaupte auch nicht, daß das Verhalten PDA-/PNA-übergreifend identisch ist.



    PS: während meines Schreibens wurde mein Eindruck/Test ja auch von maxandig bestätigt.


    EDIT:
    @maxandig
    Der Lesezugriff ist bei Deinen Tests immer der Gleiche gewesen?

  • Geschwindigkeiten


    Ich muß faierweise zu der Messung der Lesegeschwindigkeit auf meine SD-Karte nochmal anmerken, daß diese Karte verglichen mit einer "normalen" oder gar Original Medion 2 GB SD-Karte recht schnell ist.


    Beim Lesen von Standard-SD-Karten können sich also durchaus andere Meßwerte ergeben.


    Gruß
    Max

  • Meine Tests habe ich mit einer 4 GB Billigkarte namens Magu HyperSpeed 133X (hier) gemacht. Bzgl. der Schnelligkeit einzelner Karte bzw. die Unterschiede hat's ja hier schon einige Tests gegeben (Routing quer durch D), die keine gravierenden Unterschiede aufzeigten.

  • Ralf25


    Ich kenne nur die Tests der Computer-Zeitschrift ct (Heise-Verlag) bez. der Speicherkarten, und das war schon "erschreckend", wie schlecht manche Markenkarten und wie gut manche No-Names dort abgeschnitten hatten; frage mich aber jetzt nicht, in welchem Heft das war, das müßte ich nachsehen...


    Gruß
    Max

  • Hi Max,


    darauf kommt's eigentlich nicht an, weil unserer Erfahrungen nach schnelle SD-Karten nicht die große Rolle spielen, die man ihnen beimessen würde. Es ist also egal, ob eine 60x oder 150x Karte benutzt, die Schreib-/Lesegeschwindigkeit ist nahezu gleich (es war mal hier ein Test, den finde ich aber grad nicht).


    Was mich an Deinem Test nur wundert, sind die identischen Werte bei der Lesegeschw., die ich aufgrund meines Test (sofern er die Kriterien eines Benchmarks erfüllen würde ;) ) so gar nicht erwartet hätte. Das zeitliche Delta bei mir hätte ich jetzt eher mit schlechteren Lesewerten begründet, als den Schreibwerten (denn soviel wurde bei dem Test nicht geschrieben).



    EDIT: OK, das hat sich jetzt überschnitten gehabt