Angeregt durch diesen aktuellen Thread
habe ich mal einige Tests zur RAM-Nutzung angestellt.
Bis MP3Tag die Auslagerung der Cover aus dem RAM und die Datenbank eingeführt hatte, konnte ich meine Sammlung nie komplett in MP3Tag einlesen. MP3Tag ging immer der Speicher aus.
Nach dieser Einführung klappte zwar das komplette Einlesen. Etwas umfangreichere Maßnahmen wie z.B. das Erstellen eines HTML-Reports führten jedoch wieder zur Meldung, dass der Speicherplatz nicht ausreicht.
Ich habe jetzt versuchsweise MP3Tag mit einem Tool aus Visual-Studio gepatched:
editbin.exe /LARGEADDRESSAWARE mp3tag.exe
Damit zeigt Mp3Tag Windows, dass es mehr als 2 GB RAM addressieren kann.
https://msdn.microsoft.com/de-de/library/wz223b1z.aspx
Eingelesen wurden ca. 200.000 MP3s. bei aktivierter Datenbank. Danach belegte nach Taskmanager MP3Tag ca. 1,7 GB RAM.
Mein HTML-Export-Script wurde ohne Probleme bis zum Ende durchgeführt.
Danach habe ich ohne aktivierte Datenbank den Bestand nochmals erfolgreich eingelesen (was ohne den Patch erst gar nicht gelingt) und es wurden ca. 2,6 GB RAM belegt.
Auch hier klappte der Export.
@Florian:
Spricht eigentlich etwas dagegen, MP3Tag mit dem gesetzten Flag LARGEADDRESSAWARE
zu kompilieren und auszuliefern?
Ich habe da nun wirklich nicht den großen Durchblick, kann aber nur entscheidende Vorteile erkennen.
Im Gegensatz zu Windows 32 Bit, wo zusätzlich mit bcedit auch Windows noch fähig gemacht werden muss, diesen Adressraum bereitzustellen und dies dann wegen eventuellem Speichermangels für den Kernel Probleme bereiten könnte, werte Windows 64 Bit einfach das Flag aus und stellt aus seinem in der Regel heutzutage doch bei allen Nutzern ausreichender Speicherausstattung, dem mit dem Flag versehenen MP3Tag endlich mehr als 2 GB RAM zur Verfügung.