Unterstützung für Speicherverwaltung bis 4GB

Hier kann alles Allgemeine rund um Zusi 3 gefragt und beantwortet werden. Neuigkeiten zum Programm werden hier erscheinen.
Nachricht
Autor
Benutzeravatar
Carsten Hölscher
Administrator
Beiträge: 33384
Registriert: 04.07.2002 00:14:42
Wohnort: Braunschweig
Kontaktdaten:

Unterstützung für Speicherverwaltung bis 4GB

#1 Beitrag von Carsten Hölscher »

Bei den aktuellen Testfahrten im entstehenden Knoten Hagen war für Zusi jetzt endgültig Feierabend bei der Speichernutzung. Mit Alwins Zuarbeit (Danke an der Stelle) hab ich mich dann mal dran gemacht, die LARGEADDRESSAWARE-Option und einen besseren Speichermanager zu testen.

Nach einigen Iterationen in kleiner Testrunde war jetzt ein brauchbarer Stand da und es wäre mal zu testen, ob es auch bei einer größeren Zahl Anwendern funktioniert. Die beiden aktuellen betas von Fahrsim und 3D-Editor sind entsprechend modifiziert. Bitte achtet auf allgmeine Performance/Ruckeln usw., und ob die dll-Schnittstellen sauber arbeiten, also Buchfahrpläne im Simulator und wer hat auch Fahrpult-dlls sowie im Editor Fahrleitungsbau, Hektometertafeln usw.

Carsten

Benutzeravatar
Johannes
Beiträge: 3197
Registriert: 14.03.2009 22:36:06
Aktuelle Projekte: Zusitools (http://git.io/zusitools)

Re: Unterstützung für Speicherverwaltung bis 4GB

#2 Beitrag von Johannes »

Alle geladenen DLLs arbeiten im Adressraum des Hauptprozesses und muessen daher mit hohen Speicheradressen umgehen koennen. Das betrifft vermutlich vor allem die mit Delphi erstellten DLLs. Zum sinnvollen Testen sollten die mitgelieferten DLLs daher auch einmal mit dem neuen Speichermanager neu kompiliert werden.

Alwin Meschede
Beiträge: 8926
Registriert: 04.11.2001 19:57:46
Aktuelle Projekte: Zusi3 Objektbau
Kontaktdaten:

Re: Unterstützung für Speicherverwaltung bis 4GB

#3 Beitrag von Alwin Meschede »

Die beiden Buchfahrplan-DLL liefen bei den Vorab-Tests die ganze Zeit in unveränderter Form so mit. Von dort sind eigentlich keine Probleme mehr zu erwarten. Fahrpult-DLLs und alles was sich in den 3D-Editor einklinkt ist noch ungetestet.

Wer mutig ist, kann zum Testen die AllocationPreference seines Windows umstellen, so dass die hohen Speicheradressen zuerst vergeben werden. Ich erkläre jetzt hier nicht, wie man das macht, damit ich nicht schuld bin wenn es rundrum auf eurem System in anderer Software knallt :mua Die Leute, die sich ein wenig auskennen, werden das hinkriegen.
Carsten Hölscher hat geschrieben:Mit Alwins Zuarbeit (Danke an der Stelle)
Meine Zuarbeit beschränkte sich im wesentlichen aufs rituelle Platzen der Hutschnur. Viel mehr habe ich nicht gemacht.
Mein Youtube-Kanal: youtube.com/echoray1

Benutzeravatar
Thomas B
Beiträge: 410
Registriert: 28.03.2007 16:41:08
Wohnort: Bergisch Gladbach
Kontaktdaten:

Re: Unterstützung für Speicherverwaltung bis 4GB

#4 Beitrag von Thomas B »

Rein aus Interesse: es geht um eine Speicherverwaltung bis 4 GB? Wie viel war es denn bisher? Hat diese magische 4 GB-Grenze nicht was mit der 32-Bit-Adressierung zu tun? Soweit ich weiß können nur 64-Bit Programme die volle Speicherbandbreite ausnutzen da 32-Bit Programme nur in einer Art "Emulationsmodus" laufen (zumindest in den mittlerweile gängigen x64-Systemen).
Zuletzt geändert von Thomas B am 20.11.2018 08:10:43, insgesamt 1-mal geändert.
Grüße,
Thomas (eh. ElektrikTrick)

Axel Hölscher
Beiträge: 637
Registriert: 06.12.2012 10:23:58

Re: Unterstützung für Speicherverwaltung bis 4GB

#5 Beitrag von Axel Hölscher »

Thomas B hat geschrieben:Rein aus Interesse: es geht um eine Speicherverwaltung bis 4 GB?
Ja, s. https://forum.zusi.de/viewtopic.php?f=4 ... 84#p291784" target="_blank
Viele Grüße

Axel

Jan
Beiträge: 513
Registriert: 28.11.2007 19:13:51
Wohnort: Stutensee

Re: Unterstützung für Speicherverwaltung bis 4GB

#6 Beitrag von Jan »

Mit 32-bit kann ein Programm direkt maximal 4 GB an Adressraum verwalten. Standardmäßig sind aber 2 GB davon für das Betriebssystem reserviert, sodass für die Anwendung selber nur 2 GB nutzbar bleiben. Unter 64-bit-Windows hingegen stehen (theoretisch) 16 Exa(!)byte zur Verfügung, der für das Betriebssystem reservierte Adressbereich liegt wieder am hinteren Ende, diesmal also weit jenseits des GB-Bereiches.

Daher kann Windows unter 64 bit einem 32-bit-Programm jetzt den kompletten Adressraum zwischen 0 und 4 GB zur freien Verfügung bereitstellen, vorausgesetzt, dass das Programm versichert, damit auch umgehen zu können. Zu Zeiten, als die 32-bit-Grenze noch weit entfernt schien, hatte nämlich viele Programme im Vertrauen auf diese 50-50-Aufteilung des Adressraumes das oberste Bit der Speicheradressen (welches im traditionell für Anwendungsprogramme zur Verfügung stehenden Bereich von 0 - 2 GB immer "0" sein wird) für eigene Zwecke "missbraucht".
Zuletzt geändert von Jan am 20.11.2018 09:05:46, insgesamt 1-mal geändert.

Benutzeravatar
Jens Haupert
Beiträge: 4911
Registriert: 23.03.2004 14:44:34
Aktuelle Projekte: http://www.zusidisplay.de
Wohnort: Berlin
Kontaktdaten:

Re: Unterstützung für Speicherverwaltung bis 4GB

#7 Beitrag von Jens Haupert »

Alwin Meschede hat geschrieben:Wer mutig ist, kann zum Testen die AllocationPreference seines Windows umstellen, so dass die hohen Speicheradressen zuerst vergeben werden.
Hallo,
im Grunde müsste man das tun, um sinnvoll zu testen. Denn ein Fehler wird nur dann auftreten, wenn Zusi mit der DLL Daten über eine Adresse im "kritischen Bereich" austauscht und die DLL damit nicht umgehen kann.

Bei den Zusi-DLLs müsste es in der Tat genügen, sie auch einfach mit dem Flag zu kompilieren. ZusiDisplay (somit auch die 2006er Buchfahrplan-DLL) als .net-Anwendung gibt per Default an, dass es nicht "LargeAdressAware" ist. Ich kann das aber nachrüsten. Intern ändern tut das natürlich nix; es gibt zumindest keine Problemberichte aus der .net-Welt bezüglich des Themas.

Grüße
Jens

Alwin Meschede
Beiträge: 8926
Registriert: 04.11.2001 19:57:46
Aktuelle Projekte: Zusi3 Objektbau
Kontaktdaten:

Re: Unterstützung für Speicherverwaltung bis 4GB

#8 Beitrag von Alwin Meschede »

Thomas B hat geschrieben:Rein aus Interesse: es geht um eine Speicherverwaltung bis 4 GB? Wie viel war es denn bisher?
Die theoretische Grenze auf einem unmodifizierten Windows lag bisher bei 2 GB. In der Praxis brach Zusis bisheriger Speichermanager aufgrund seines Fragmentierungsverhaltens aber schon bei etwa 1,3 bis 1,4 GB zusammen. Der neue Speichermanager hat ein wesentlich gutmütigeres Fragmentierungsverhalten, so dass er auf unmodifiziertem 32-Bit-Windows näher an die 2-GB-Grenze rankommt. Auf 64-Bit-Windows (das ist die große Masse der heute in freier Wildbahn anzutreffenden Systeme) kann er bis 4 GB RAM nutzen.

Ihr düftet verkürzte Ladezeiten bei großen Fahrplänen feststellen. Außerdem wurde in Einzelfällen festgestellt, dass der ganze Simulator ein paar fps mehr pro Sekunde bringt. Das kann passieren, weil der neue Speichermanager weniger CPU-Zeit benötigt, und deshalb mehr CPU-Zeit für das Rechnen von Bildern zur Verfügung steht. Bei mir selber bringt der neue Simulator allerdings keine zusätzlichen fps.
Zuletzt geändert von Alwin Meschede am 20.11.2018 09:57:20, insgesamt 2-mal geändert.
Mein Youtube-Kanal: youtube.com/echoray1

Benutzeravatar
Thomas B
Beiträge: 410
Registriert: 28.03.2007 16:41:08
Wohnort: Bergisch Gladbach
Kontaktdaten:

Re: Unterstützung für Speicherverwaltung bis 4GB

#9 Beitrag von Thomas B »

Ich nehme an eine größere Speicherausnutzung - bei vielen dürfte mehr als 4 GB installiert sein - ist nur bei 64-Bit Kompilierung möglich? Kann Delphi das überhaupt?
Grüße,
Thomas (eh. ElektrikTrick)

Alwin Meschede
Beiträge: 8926
Registriert: 04.11.2001 19:57:46
Aktuelle Projekte: Zusi3 Objektbau
Kontaktdaten:

Re: Unterstützung für Speicherverwaltung bis 4GB

#10 Beitrag von Alwin Meschede »

Thomas B hat geschrieben:Ich nehme an eine größere Speicherausnutzung - bei vielen dürfte mehr als 4 GB installiert sein - ist nur bei 64-Bit Kompilierung möglich? Kann Delphi das überhaupt?
Delphi kann das durchaus, aber das wäre ein Riesen-Portierungsprojekt.
Mein Youtube-Kanal: youtube.com/echoray1

Benutzeravatar
Frank Wenzel
Beiträge: 5118
Registriert: 06.11.2001 01:13:47
Wohnort: Trier
Kontaktdaten:

Re: Unterstützung für Speicherverwaltung bis 4GB

#11 Beitrag von Frank Wenzel »

Ich würde das gerne bei mir testen, bisher habe ich mich jedoch von Beta-Versionen ferngehalten. Insofern meine bescheidenen Fragen: Kann ich die Betas einfach wieder deinstallieren und auf eine Hauptversion zurückspringen oder muss man sich für den Fall der Fälle den aktuellen Stand zur Seite zu speichern zwecks restore? Oder besser eine Parallel-Installation zum ausprobieren?

Edit: Carstens Hinweise im einleitenden Updates-Beitrag gelesen..., insofern habe ich mir die Fragen selbst beantwortet... :gap
Zuletzt geändert von Frank Wenzel am 20.11.2018 13:07:49, insgesamt 1-mal geändert.
Gruß ins Forum, Frank - www.zusi-sk.eu - Youtube

Alwin Meschede
Beiträge: 8926
Registriert: 04.11.2001 19:57:46
Aktuelle Projekte: Zusi3 Objektbau
Kontaktdaten:

Re: Unterstützung für Speicherverwaltung bis 4GB

#12 Beitrag von Alwin Meschede »

Eine erste Rutsche mit Befunden bei aktivierter AllocationPreference auf die hohen Adressen:
  • Fahrleitungs-DLL Re 160 und Re 250: Bau und Konfigurationsmenü funktioniert
  • Fahrleitungs-DLL "Re 160 erweiterte Funktionen" (Alwin): Bau funktioniert, aber Konfigurationsmenü funktioniert nicht -> DLL auf Version 1.0.0.7 updaten, um das Menü gängig zu machen.
  • Katenoide.dll (Steven): Konfigurationsmenü funktioniert nicht
  • Kilometerstein-DLL: Konfigurationsmenü funktioniert, aber Bau funktioniert nicht
  • Hektometertafel-DLL v2 (Johannes): Bau und Konfigurationsmenü funktionieren
  • Hektometertafel-DLL v1 (Carsten): Konfigurationsmenü funktioniert, aber Bau funktioniert nicht
Zuletzt geändert von Alwin Meschede am 20.11.2018 13:21:23, insgesamt 2-mal geändert.
Mein Youtube-Kanal: youtube.com/echoray1

Juergen_Verheien
Beiträge: 3193
Registriert: 07.03.2002 10:09:59
Aktuelle Projekte: Objektbau und Modulgestaltung
Wohnort: Dortmund

Re: Unterstützung für Speicherverwaltung bis 4GB

#13 Beitrag von Juergen_Verheien »

Hallo Frank,

lege Dir von allen Programmteilen in der aktuellen und funktionierenden Version eine Sicherungskopie an. Dann installiere die Beta-Versionen. Sollte es Probleme geben, einfach die Sicherungskopie über die aktuelle Beta kopieren und fertig.....
tschüs....

Jürgen

Benutzeravatar
F. Schn.
Beiträge: 6630
Registriert: 24.10.2011 18:58:26

Re: Unterstützung für Speicherverwaltung bis 4GB

#14 Beitrag von F. Schn. »

Wow. Klasse. :)

Vielen Dank an Michael, Alwin und Carsten. :)

Mit der Verdreifachung müssten wir jetzt erst mal eine Weile auskommen können. :P
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat

Benutzeravatar
Michael Springer
Beiträge: 2925
Registriert: 24.06.2002 16:22:44
Wohnort: Schwäbisch Gmünd

Re: Unterstützung für Speicherverwaltung bis 4GB

#15 Beitrag von Michael Springer »

Für gut befunden. Bin gerade von Fröndenberg nach Hagen mit 4000m Sichtweite (Laderadius 7000/3450) mit einer maximalen Auslastung im Taskmanager mit 1,67 GB ohne Absturz durchgekommen. Mit der alten Version war das nicht möglich, da crashte es bei ca. 1,3GB Speicherauslastung.

Michael

Benutzeravatar
Johannes
Beiträge: 3197
Registriert: 14.03.2009 22:36:06
Aktuelle Projekte: Zusitools (http://git.io/zusitools)

Re: Unterstützung für Speicherverwaltung bis 4GB

#16 Beitrag von Johannes »

Jens Haupert hat geschrieben:ZusiDisplay (somit auch die 2006er Buchfahrplan-DLL) als .net-Anwendung gibt per Default an, dass es nicht "LargeAdressAware" ist. Ich kann das aber nachrüsten.
Macht aber keinen Unterschied, denn das Flag wird bei DLLs einfach ignoriert: https://blogs.msdn.microsoft.com/oldnew ... 0/?p=12793" target="_blank

Benutzeravatar
Carsten Hölscher
Administrator
Beiträge: 33384
Registriert: 04.07.2002 00:14:42
Wohnort: Braunschweig
Kontaktdaten:

Re: Unterstützung für Speicherverwaltung bis 4GB

#17 Beitrag von Carsten Hölscher »

Ein paar Rückmeldungen wären noch nett, auch wenn es alles ohne jede Auffälligkeit läuft.

Carsten

Mr. X
Beiträge: 1336
Registriert: 04.05.2008 22:12:22
Kontaktdaten:

Re: Unterstützung für Speicherverwaltung bis 4GB

#18 Beitrag von Mr. X »

Keine Auffälligkeiten bei mir, und bei einer nicht-repräsentativen Messung in Kassel Hbf 2 FPS mehr (aber nur eine Messung, kann also Zufall sein).

m3933
Beiträge: 152
Registriert: 25.07.2017 17:18:09

Re: Unterstützung für Speicherverwaltung bis 4GB

#19 Beitrag von m3933 »

Hier auch keine Auffälligkeiten, die Performance ist nicht schlechter, kein Ruckeln. Die Ruckler an bestimmten Stellen z.B. Eiderbrücke->Friedrichstadt vorm BÜ oder Meschede BÜ sind aber noch da.

Und dieses Problem https://forum.zusi.de/viewtopic.php?f=55&t=14712" target="_blank existiert auch noch. (Ich weiß, hat nichts mit der Speicherverwaltung zu tun...)

ESTW
Beiträge: 70
Registriert: 05.11.2013 19:04:22

Re: Unterstützung für Speicherverwaltung bis 4GB

#20 Beitrag von ESTW »

Langfristig kommt man um 64 Bit nicht rum. Gerade wenn die Strecken noch länger werden. Warum also nicht Zusi 3 auf 64 Bit umstellen?

Antworten