Speichermanagement

  • Manni, wenn's Dir auf jedes KB ankommt, warum verschenkst Du dann weitere ~450 davon? :017: Ich habe an StM nur 177 KB frei (ohne aktive AS-Connection) und das langt locker (bei 128MB RAM! :023: ). Vlt. solltest Du auch mal checken, was sich so alles an unnützes Zeuchs unter \Windows befindet. ;)

  • Hi Ralf


    Wenn ich in WinCE Settings – Control Panel – System - in System Properties - Memory den Storage Memory verkleinere auf 190 ( so genau ist das gar nicht zu treffen ) bekomme ich zwar dementsprechend mehr Program Memory sofort angezeigt was dann aber in GoPal in ResInfo in keinster weise in Program memory wieder zu finden ist und HR fest ist der ganze Zauber auch nicht .

    Aber ich habe so noch ein bissel was gefunden .


    [Blockierte Grafik: http://i54.tinypic.com/sxm7w8.jpg]


    jetzt ist aber Schluss mit Lustig.


    Gruß Manni

  • Die Einstellungen in Windows selber (Control Panel) sind ja auch nicht von Bestand, das weißt Du selber. Zum Testen geht's, aber - wie Du auch feststellen konntest - nur recht ungenau.
    Daher mache ich sowas direkt in der k10memory.lua (Wiki: Interner_Speicher,_Aufbau_und_Funktionsweise -> Suche dort mal nach der *.lua).
    Das geht sogar so gut, dass man jeden Skin damit dynamisch optimieren könnte, egal ob 128 oder 64MB.

  • [Blockierte Grafik: http://i56.tinypic.com/2m30ow8.jpg]


    Danke Ralf


    Die lua k10memory.lua hatte ich mir schon mal irgendwann angeschaut wusste aber nicht wie ich was ändern musste , an WiKi hatte ich nicht gedacht , mit der SuFu stehe ich eh überall auf dem Kriegsfuß .


    Ich habe diese Werte erst mal genommen


    local OBJECTSTORE_MAXSIZE = 3*1024*1024;
    local OBJECTSTORE_FREESIZE = 268*1024;


    muss ich jetzt erst mal beobachten wie er sich mit 201 KB Storage Memory verhält .


    Gruß Manni

  • Genau, ich hab's gestern abend nochmal reduziert auf 100KB free. Während des Betriebes passiert dann nix mehr, nur wenn man bspw. zusätzl. Dateien (*.dll) unterhalb \Windows ablegt, kann's kurzzeitig eng werden. Nach dem nächsten SR greift dann aber wieder die 'if'-Abfrage, wo 'used' + free Memory entspr. angepasst werden.

  • ralf: können / sollten wir die Diskussion zum Speicher besser hier rausnehmen, da ja nicht wirklich skinspezifisch :017:
    dann hätten auch andere was davon ...


    in dem Zusammenhang noch ein Erfahrungsbericht mit meinem P4440:
    normale Navigation und gleichzeitig über TCPMP Musik hören geht jetzt seit der 6 nicht mehr.
    etwa alle 3-5 Minuten auf der Autobahn, in der Stadt wesentlich öfter, wird die Musik unterbrochen für einige Sekunden.
    hab es mit und ohne FMT probiert.
    es ist auch egal, ob die Kartendaten auf SD oder MFD liegen, Musike ist auf SD.
    nur wenn ich die Tachoansicht (Compass) aktiviere, wird die Musike kontinierlicher.


    ich würde ja vermuten, dass jetzt die Rechenleistung nicht mehr ausreicht, wozu GoPal 6 die auch immer verbrät.
    oder könnte ich mit den Speicheroptimierungen etwas erreichen ?
    andere Optionen wäre noch, die mp3s auf MFD zu legen oder eine andere SD zu testen :dontknow:


    mikee

  • ralf: können / sollten wir die Diskussion zum Speicher besser hier rausnehmen, da ja nicht wirklich skinspezifisch :017:
    dann hätten auch andere was davon ...


    Eigentlich wäre es Sache der Skinner (die lesen ja eh alle mit hier ;) ), die Vorgaben in der *.lua so optimal wie möglich einzustellen (wie so manch anderes ja auch schon). Der unbedarfte User liest sich eh nicht in die Problematik ein, zumindest nur die Allerwenigsten.
    Wenn noch weitere Nachfragen kommen, kann man's gerne auslagern, ansonsten belassen wir's dabei. Mich brachte eh Mannis Shot erst auf die Idee, einen Hinweis zu geben, nicht erst bei den (zeitintensiven) Krümeln anzufangen, wo's dann doch je nach PNA Probleme gibt..

  • ralf: können / sollten wir die Diskussion zum Speicher besser hier rausnehmen, da ja nicht wirklich skinspezifisch :017:
    dann hätten auch andere was davon ...
    mikee



    +1:023:


    fände ich auch besser:006:


    Edit: ralf : nur wenn es nicht zu viel Arbeit macht :)

    Gruß
    NaviToni

  • Wurde rausgelöst von Teamskin GoPal 6, der Titel kann noch sinnvoller benamst werden.

  • obwohl ich drüben schon den Danke-Knopf betätigt habe, trotzdem auch hier ein :023: :002:


    ich hab mir den recht ausführlichen Artikel im wiki dazu schon ein paar Male durchgelesen, aber bei dem vielen Text nicht immer gleich wieder alles vor Augen.
    Manni, wenn du das gestestet hast, könntest du bitte mal die konkreten geänderten Werte kurz erklären ?


    Ist das eigentlich für alle Geräte in etwa gleich zu handhaben, weil Ralf den Hinweis auf den jeweiligen Skin gab?
    oder gibt es vom Speichermanagement her doch Unterschiede.


    sorry falls ich nerve, aber an den Werten hab ich bisher nich nie rumgespielt (nicht getraut :( )


    mikee

  • Ich sehe schon, eine Unsicherheit scheint immer noch vorhanden zu sein! ;) Dann doch nochmal kurz zur Erläuterung und am besten das gesamte Ablaufszenario immer mit realen Zahlen durchspielen:


    1. Mit dieser Zuweisung local OBJECTSTORE_MAXSIZE = 5*1024*1024; wird die max. Obergrenze festgelegt (damit es beim Abspeichern zusätzl. *.dlls nicht zum Fehler kommt -> hier 5 MB (sicher ist sicher ;) )).


    2. Dies hier ist die Vorgabe auf den absolut freien StM-Speicher nach einem SR: local OBJECTSTORE_FREESIZE = 170*1024; (danach verbleiben ca. 98KB an freiem StM).
    Damit sollte man testen!


    3. Hiermit wird der aktuell allokierte Speicher geholt: local useObjectStore = device:GetUsedSizeOfObjectStore();


    4. Jetzt kommt's drauf an: wenn die Summe aus allokiertem + der Vorgabe bereits größer ist als 'MAXSIZE', wird's scheppern (-> shell:Warning(...)). Ich habe es aber größzügig mit ~5MB bemessen, also kommt er nach:
    device:SetSizeOfObjectStore( useObjectStore + OBJECTSTORE_FREESIZE );
    Was wird nun gesetzt? Aktuell benötigter Speicher + meine Reserve von ~98KB => 98KB freier Speicher!! Ergo, meine Vorgaben in 'FREESIZE' werden nicht wesentlich über-/unterschritten, aber ich habe einen Sicherheitspuffer von 5MB, gleich von Beginn an!



    Ich hoffe, dass damit die restlichen Unklarheiten beseitigt sind und ihr könnt's ja mal im Team testen.

  • Original ist in der GoPal 6 k10memory.lua


    local OBJECTSTORE_MAXSIZE = 3*1024*1024;
    local OBJECTSTORE_FREESIZE = 768*1024;



    habe jetzt
    local OBJECTSTORE_MAXSIZE = 3*1024*1024;
    local OBJECTSTORE_FREESIZE = 268*1024;


    habe grad
    local OBJECTSTORE_MAXSIZE = 4*1024*1024;
    ResInfo zeigt das gleiche wie mit 3*1024*1024 , ist ja auch klar , ist ja nur die Vorbestimmte Obergrenze .
    Dann kann ich es auch zur Sicherheit auf 4*1024*1024 lassen ,


    mit
    local OBJECTSTORE_FREESIZE = 268*1024;
    scheinen die 64er zurecht zu kommen mein E4430 jedenfalls , mit den 128er wies ich noch nicht .


    habe wieder ein bissel Speicher gefunden , mit 8,5 MB in der Kartenansicht kann man schon was machen , die ersten Test waren 3,5 biss 4 MB , mit gleiche Voraussetzung versteht sich .


    [Blockierte Grafik: http://i52.tinypic.com/11b42aa.jpg]


    Gruß Manni

  • Wie gesagt, im laufenden Betrieb wird sich am StM nicht viel ändern. Eigentlich garnix, sofern nicht irgendwelche Loggings aktiviert sind und dort reinschreiben. Denn auch eine target.3na verbrät nur knapp 1KB. Und es kommt auch noch hinzu, dass Dateien unter \Windows noch zusätzl. komprimiert werden. Und wesentlich unter 100KB sollte man auch nicht gehen, weil dann das Memory-Paging zuschlägt!
    Also ein freier Wert von ~100 bis ~120KB ist völlig ausreichend.


    Unter CE5.0 wird's ziemlich egal sein, ob ein PNA 64MB oder 128MB RAM hat. Da hatte ich bei meinem Wechsel auch keine Probleme. Wie sich das Ganze aber unter CE6.0 präsentiert, konnte ich natürlich nicht testen. Aber das kann ja jemand machen und dann berichten.

  • Monika

    Hat das Label GoPal Hardware Allgemein hinzugefügt.