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

  • Ralf25


    Ralf,


    es liegt sehr stark an der Qualität der SD-Karte. Ich habe jetzt einmal eine "normale" SD-Karte genommen und die Lese-Geschwindigkeit im PNA470 gemessen.


    Da sieht man ganz klar, warum man (im Normalfall) Programme lieber auf My Flash Disk speichern/installieren sollte.


    Gruß
    Max

  • Zitat

    Original von maxandig
    es liegt sehr stark an der Qualität der SD-Karte. Ich habe jetzt einmal eine "normale" SD-Karte genommen und die Lese-Geschwindigkeit im PNA470 gemessen.


    Moin Max,


    nenn doch mal bitte die Specs Deiner jeweils verwendeten SD-Karten, die zu diesen Ergebnissen geführt haben:
    SD-Karte1: Write 9 MB in 16 Sek. (576 kB/s)
    SD-Karte2: Write 9 MB in 34 Sek. (271 kB/s)


    Und wie hoch ist die getestete Lesegeschw. bei der 2. Karte?



    PS: Und Du hast 'ne PN

  • Hallo zusammen,


    ich wollte nur noch folgendes einwerfen:
    Wenn man auf der SD-Card gleichzeitig liest und schreibt, dann dauert es ewig. Mir ist das bei der Programmierung des TRK->GPX Konverters aufgefallen, der zeilenweise konvertiert.
    Wenn ich aber nur die Daten von SD lese und gleichzeitig auf die FlashDisk schreibe, dann läuft es vernünftig.


    Gruß,
    Stefan

  • Hi Stefan,


    guter Einwurf! :) Damit lassen sich dann auch die unterschiedl. Ergebnisse/Erfahrungen der bisherigen Tests erklären und es deckt sich auch mit meinem subjektiven Empfinden. Der Benchmark von Max wird die Aktionen wohl nur nacheinander (getrennt) ausführen und mein PW-Test macht während des Import neuer POIs nachweislich gleichzeitige Schreib-/Lesezugriffe auf die SD-Karte, daher der große zeitl. Unterschied.
    Das reine Starten von irgendwelchen Prg. von der Karte wiederum dauert zwar auch etwas länger als von der FD, ist aber IMO immer noch erträglich.


    Mal sehen, welche Optimierungen ich für mich daraus ableiten kann. : drink

  • Ralf25


    Zitat

    nenn doch mal bitte die Specs Deiner jeweils verwendeten SD-Karten, die zu diesen Ergebnissen geführt haben:


    Ralf,


    SD-Karte1: Write 9 MB in 16 Sek. (576 kB/s)
    ist eine TRAVELER HIGH SPEED 2GB PLATINUM Memory Card von einem Discounter (Aldi Süd) für DigiCam-Anwendung, in Taiwan hergestellt für bestmedia.de.


    SD-Karte2: Write 9 MB in 34 Sek. (271 kB/s)
    Das ist die Original-Karte 2GB, die bei dem Aldi Süd Navi PNA 470 Bundle (MD 96080) Nov. 2006 mitgeliefert wurde. Daten sind mir im Moment nicht bekannt.


    Gruß
    Max

  • Hallo Max,


    das mit der UPX-Kompression ist eine prima Idee, wusste noch gar nicht, dass das auch für WinCE Executables und DLLs funktioniert.


    Habe damit jetzt die Files unter \Windows (RAM) komprimiert (inkl. DLLs) und gleich mal 600 kB eingespart. Meine GX.dll ist beispielsweise von 217 KB auf 47 KB geschrumpft. Scheint soweit alles noch zu funktionieren. (Geht logischerweise nicht für Dateien im ROM, aber hier braucht man auch nichts zu verkleinern). Verwendet habe ich den Aufruf:
    upx.exe --best --all-methods --all-filters *.*


    Für My Flash Disk habe ich vorerst noch keinen Bedarf, hier habe ich bei meinen 512 MB noch genug frei.


    Zur Geschwindigkeit der SD-Karten:
    Dein Tool für den Geschwindigkeitstest scheint nur sekundengenau zu messen, oder? Dass ist dann bei schnellen Karten nicht wirklich genau. Muss man schauen, ob ich nicht eine Alternative, möglichst Freeware, finde.


  • Irgendwie habe ich Verständnisprobleme ?(


    Mit was für einem Gerät hast Du das gemacht? ?(

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

  • @rudison


    Ich kann nicht sagen, wie das verwendete Benchmark-Programm intern mißt, allerdings wohl nicht gesampelt im Sekundentakt...


    Es werden die Meßergebnisse mit Sicherheit gerundet, also auf volle kB und Sekunden, da die Gschwindigkeit ja in diesen Einheiten angegeben wird, und dann ergebnismäßig im GUI dargestellt.


    Mich interessieren eigentlich auch nur die Differenzen zwischen den div. SD-Karten (und die sind hoch!) und die Frage, ob es sinnvoll ist, Programmdateien zu packen. Da heute sehr viele Dateien gepackt sind, bin ich eben der Frage nachgegangen, ob es für Windows CE Core auch Sinn macht. Und das tut es wohl für die meisten Anwender, die mehr mit ihrem PNA machen, als der Hersteller von Haus aus vorgesehen hat. Bei einem PDA mit größerm Speicher kann es wohl auch nicht schaden... denn Speicher kann man eigentlich nie genug haben.


    Gruß
    Max

  • @maxandig


    Die Geschwindigkeiten 9216 bzw. 4208 kB/s sind genau 9*1024 kB / 1 sek. bzw. 9*1024 / 2 sek., und das ist ungewöhnlich. Darum habe ich mal vermutet, dass bei schnellen Karten einfach keine genaueren Messwerte erzielt werden können. Ist aber nicht entscheidend.


    HSVMichi


    Habe die Windows-Dateien (außer denen im ROM) vom P4410 per ActiceSync auf den PC kopiert, dort upx.exe ausgeführt und anschließend die komprimierten Files wieder auf den PNA kopiert. Genau wie im 1. Beitrag von Max beschrieben. (Eine fertige Version von upx, die unter WinCE läuft, gibt es nicht).

  • Zitat

    Original von rudison


    HSVMichi


    Habe die Windows-Dateien (außer denen im ROM) vom P4410 per ActiceSync auf den PC kopiert, dort upx.exe ausgeführt und anschließend die komprimierten Files wieder auf den PNA kopiert. Genau wie im 1. Beitrag von Max beschrieben. (Eine fertige Version von upx, die unter WinCE läuft, gibt es nicht).


    Mich irritiert das mit dem RAM - hast Du denn kein 5er-Betriebssystem?


    Falls nein, ist es mir klar :)


    Falls ja, überhaupt nicht :D

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

  • HSVMichi


    Ich habe Windows CE Core 5.0. Firmware 22.
    Ich versteh' aber Dein Problem nicht ganz.


    Hier mal mein Verständnis, wie die Speicherbereiche verwendet werden:
    Alle Verzeichnisse und Dateien (außer My Flash Disk und Storage Card), die ich auf dem PNA sehe, sind entweder im RAM oder im ROM abgelegt. Nach einem Hardreset sind alle Dateien im RAM gelöscht, nur noch die Dateien, die im ROM stehen, sind dann sichtbar (+ zusätzlich die Registry und ähnliches, die nach einem Hardreset wieder neu im RAM angelegt werden).


    Das Gerät hat 64 MB RAM. Davon wird ein bestimmter Anteil (normalerweise 3 MB) für das Dateisystem reserviert, der Rest wird als Programmspeicher für laufenden Programme verwendet. Mit einem Schieberegler in der Systemsteuerung lässt sich der Anteil ändern (bis zum nächsten Softreset). Wer beispielsweise seine Programme alle im RAM installiert (z.B. unter \Program Files), der wird zwangsläufig ein Problem bekommen, da dann der verfügbare Programmspeicher kleiner wird und Programme eher abstürzen. Einige wenige Programme wollen aber unbedingt im RAM laufen bzw. DLLs im Windows-Verzeichnis ablegen. Genau diese habe ich komprimiert.


    Mit dem TotalCommander kann ich die Dateien im ROM ausblenden, so dass diese nicht mehr erscheinen. Was dann noch unter \Windows sichtbar ist, sind die Dateien im RAM. Hier habe ich die *.exe und *.dll Files ausgewählt, auf den PC kopiert, dort komprimiert und anschließend wieder auf den PNA kopiert.


    Sehr ich hier etwas falsch?
    Was hat die Version des Betriebssystems damit zu tun?

  • @rudison


    Genauso bei mir, nur daß ich ROM-Release R13 habe auf dem PNA470:


    Man sucht sich mit dem TotalCommander die nicht im ROM liegenden Exe- und dll-Dateien raus, upxt sie und zurück mit ihnen auf den PNA!


    Man kann auch die im ROM liegenden Dateien mit UPX bearbeiten, bekommt sie dann aber verständlicherweise nicht ins ROM zurückkopiert, also ein sinnloses Unterfangen für den normalen Nutzer.


    Interessant ist, daß einige Dateien im ROM bereits vom Hersteller gepackt worden sind, z. B. die MainShell.exe. Das merkt man, wenn man solche Dateien versuchsweise packt: Sie werden (praktisch) nicht kleiner!


    Es macht also auch nach Auffassung des Herstellers Sinn, bei Speicherknappheit "große" Dateien zu shrinken, und Speicherknappheit ist im ROM wohl gegeben...


    Gruß
    Max

  • Zitat

    Original von rudison
    HSVMichi


    Ich habe Windows CE Core 5.0. Firmware 22.
    Ich versteh' aber Dein Problem nicht ganz.


    Genau hier liegt das Problem.


    Unter WinCE 5 kannst Du gar nichts im RAM installieren :) Deine ganzen Daten befinden sich ausschließlich im FlashROM bzw auf Speicherkarte.


    Einen Schieberegler gibt es also auch nur unter Betriebssystem kleiner Version 5.


    was hast Du nun eigentlich wirklich? ?(

    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 rudison
    HSVMichi


    Wie kommst Du darauf, dass man bei WinCE 5 nichts im RAM installieren kann? Hast Du ein Gerät mit WinCE 5?


    Also entweder hast Du einen Exoten, oder bei PNAs arbeitet die Version 5 anders als bei PDAs, wo WinMobile5 ausschließlich so arbeitet wie ich es beschrieben habe.


    Definitiv ist das für mich der erste Bericht einer Version 5, die ein Installieren im RAM zulässt.

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