Zu
"Trotzdem bin ich auf die header-bereinigte Fassung der Barth Files gespannt."
Nun es sind nicht nur die Header. Auch kann man nicht von Header bereinigen sprechen. Ich hatte hier früher immer im Forum immer die Header der vielen Einzelfiles als Problem angebracht. So hat es Marc in seinem Bericht in der FXP auch übernommen. Aber es steckt natürlich noch mehr dahinter.
Man muss wissen das Landclass und andere Terrainfiles über einen undokumentierten Kompressionscode komprimiert sind.
Man macht bei den Barth Files zwecks Optimierung also folgendes.
Wenn man das Wissen über den undokumentierten Code hat, wertet man tausende an Frank seinen Einzel LC Files hinsichtlich Header aus. Weiterhin dekodiert man die LC Daten. Anhand der Header Informationen setzt man die die dekodierten LC Daten über Automatismen positionsgerecht wieder zu Kombifiles zusammen. (Von Hand geht so etwas natürlich nicht, das würde Monate dauern).
In diesem Fall zu seinen 7 Projekten.
Aus tausenden Einzelfiles werden so später 7 Einzel LC Files.
Das ganz benötigt dann nur 7 Header. Weiterhin profitiert der ganze Code jetzt auch bei der erneuten Kompression der Daten.
Man hätte auch alles zu einem Projekt zusammensetzen können.
Mal ein Zahlenbeispiel anhand des Bayern LC.
Zwei Auszüge aus der Dokumentation:
"Da Frank 434 Einzelfiles für Bayern nutzt, benötigt man auch 434 Header.
Das Verhältnis Bytelast des Headers zu Bytelast der Nutzdaten ist bei seinen original Landclassfiles extrem schlecht. Im Prinzip schleppt man unnötigen Datenmüll in den FS ein.
Die Files benötigen daher viel Speicherplatz was bei den heutigen Festplatten tolerierbar wäre. Schlimmer wiegt der Verwaltungsaufwand für den FS. Er muss von 434 Einzelfiles die Header auslesen und die Priorität und Position der einzelnen Files festlegen. Aus den Files die im Umfeld des Flugzeuges aktiv genutzt werden, müssen die Dateninformationen ausgelesen werden.
Dieses Verhalten spiegelt sich in den extrem langen Ladezeiten Frank seiner Landclasscenerien wieder.
Der FS muss während des Fluges auch ständig überwachen ob Daten von Einzellandclassfiles die noch nicht im Speicher vorliegen, nachgeladen werden müssen. Dieses Nachladen geschieht nicht kontinuierlich während des Fluges, sondern bei Überschreitung bestimmter Grenzen.
Das bedeutet die Grundperformance zwischen Frank seinen original Files und meiner optimierten Variante ist während des Fluges nicht so gravierend. Die erreichbaren Frames sind ähnlich. Werden allerdings diese Überwachungsgrenzen überschritten, dann muss der FS je nach Position innerhalb einer Landclasscenery mehr oder weniger viele LC Daten nachladen.
Bei meiner optimierten Variante lädt der FS im schlimmsten Fall Daten aus einem einzigen aktiven LC File nach. Bei Frank seiner Variante muss der FS zusätzlich je nach Position nicht nur Daten aus einem aktiven File nachladen, sondern viel schlimmer es müssen sehr viele LC Files überwacht und wenn erforderlich komplett neu eingelesen werden um Daten für die Erdoberfläche zu haben.
Bei Frank seinen LC Files brechen daher die Frames je nach Flugrichtung und Geschwindigkeit zyklisch wesentlich stärker als bei meiner neuen Variante ein. Der Flug kann unrhytmischer werden.
Weiter unten folgen ein paar Zahlen zu dieser Thematik."
Dieses mit dem unrhytmischer und starken Einbrechen wird Michas Effekt sein. Kann auch sein das die Performance generell mit der Zeit einbricht. Habe da keine langen Flüge gemacht. Aber auch dieses sollte dann behoben sein.
"Aus 434 LC Files wurde nun ein einziges LC File.
So ist der Speicherbedarf (bei gleicher Nutzinformation) der LC Informationen um den Faktor ca. 25 fach geschrumpft. Wenn man das auf reinen Festplattenspeicher bezieht (hier wegen der Clustergröße) dann bei XP sogar um den Faktor ca. 73 fach. Bei FAT32 System wäre der Faktor noch extremer.
559KB sind die Files groß. Auf Festplatte belegen sie 1,69MB
meine Variante ist 22,7KB groß und belegt nur 24KB
Dieses bezieht sich nur auf Bayern.
Für alle sieben LC Packete sieht das dann wie folgt aus.
sie sind 3,53MB groß und belegen 10,5MB auf Festplatte
Meine Variante der sieben Files belegt 126KB und auf Festplatte 144KB
Eine enorme Reduzierung bei gleichen Nutzdaten.
Weiterhin hatte ich folgende Daten beim Bayernlandclass ermittelt.
Das laden eines Fluges innerhalb der Scenery ist bei mir (P4 2,53Ghz Notebook) von 1 min 10 sec auf ca. 30sec geschrumpft.
Die Grundperformance ist allerdings fast identisch hinsichtlich Frames. So ca. 23 bei mir. Nur bei Frank seinen original Files gibt es immer wieder starke Einbrüche auf 8 Frames wenn der FS Einzellandclassfiles nachlädt. Bei meiner Kombivarinate gibt es auch Einbrüche aber nur bis ca. 14 Frames. Die Einbrüche sind auch seltener."
|