Vorbereitungen auf die 0.9er Version laufen an

2»

Comments

  • Sheera Khan
    Sheera Khan
     Moderator
    Huhu Floro,

    das Testgrid ist dank Zaks Einsatz wieder online :-)
  • Sheera Khan
    Sheera Khan
     Moderator
    Huhu Eryn,

    habt ihr da schon herausgefunden, woran es liegt? Mehrbelastung der CPU oder des Speichers? Oder liegt es an inkompatiblen Änderungen bei den Physics Engines? Mit welcher PE arbeitet ihr denn vorzugsweise?
  • Pius Noel
    Pius Noel
     Member
    Bei meinen ersten Stress-Tests unter Linux Ubuntu 16.04.3 LTS / Mono 4.2.1 mit sehr vielen Prims und Scripten hatte ich beim Laden und Ausführen von Scripten Threading Probleme die zum Absturz führten. Die gleichen Scripte liefen unter der 0.8.3 Metro Edition ohne Probleme.

    Auffallend war, dass die Scripte auch extrem viel langsamer liefen. In meinem Fall schien die Anzahl der Prims keine grosse Rolle zu spielen (die Dauer bis es bei 1'000 Prims auf der Region zu einem  Absturz kam war fast gleich wie bei 30'000 Prims). Texturen waren an meinen bisherigen Tests noch kaum beteiligt. Die Abstürze hatte ich sowohl mit ODE als auch mit BulletSim.

    Nachdem ich in der OpenSIm.ini "AppDomainLoading = false" gesetzt habe (default ist true), war das Problem behoben.

    Wie auch immer, gerade in meinem Testfall will ich das auf die Dauer nicht so haben, da dadurch der Speicher nicht freigegeben wird, wenn Scripte nicht mehr benötigt werden. Das ist z.B. immer dann der Fall, wenn Avatare mit gescripteten Attachments eine Region betreten und wieder verlassen.

    Ich dachte ich gebe diese Info hier mal weiter, da dieser Wert vorgabemässig auf true gesetzt ist. Vielleicht ist bei Hogwarts ein ähnliches Problem. Wie bereits erwähnt, in Opensim 0.8.3 besteht das Problem nicht, dort hatte ich den Wert bisher auf true.

    Noch ein Hinweis: wenn ich jetzt wiederholt gescriptete Objekte lösche und wieder neue dazufüge, dann kommt es irgendwann mit jedem neu hinzugefügten gescripteten Objekt zu einem Fehler in folgender Art:
     2017-10-30 18:15:35,640 ERROR [XEngine] Exception creating app domain:
     System.IndexOutOfRangeException: Index was outside the bounds of the array.
    Unabhängig von den oben berichteten Problemen habe ich bisher auch noch andere Probleme festgestellt, die ich aber zuerst mal aussortieren muss. Eines davon tritt auf wenn ich mit Teleport zwischen einer Region mit OpenSim 0.8.3.0 Dev PLUS Metropolis und OpenSim MetroTest 0.9.1.0 Dev hin und her springe. Teleport geht dann z.B. plötzlich nicht mehr (internal error). Manchmal hilft Relog; manchmal nur Neustart.
  • Eryn Galen
    Eryn Galen
     Moderator CreativeGroup
    Hi, sorry, hat etwas gedauert, bis ich wieder online war. Franzi macht jetzt mal endlich eine Kopie auf das Testgrid, damit wir es besser testen können. 0.9 und Grid Services auf 0.8 ist eh so eine Sache.
    Wir sind ja auf Windows, insofern sollte die AppDomain = true passen, aber das probieren wir auch.
    Ansonsten kann ich deine Tests Pius Noel bestätigen. 
    Leider bin ich zur Zeit beruflich auch ziemlich eingebunden, deshalb wird es etwas dauern, das auszutesten.
    @Sheera Khan: Zur PE: Normalerweise nur Bullet, ansonsten kann man sich gar nicht bewegen.
    Zur Zeit ist Hogwarts wieder auf der Metro Version. Die geht ja noch.
  • Pius Noel
    Pius Noel
     Member
    Es wäre schon toll, wenn ihr das mit Hogwarts irgendwann hin bekommt. Ich bin da zuversichtlich. 

    Ich hab bei vielen Scripten und Prims noch ein paar schaurige Nebeneffekte an den Sim-Grenzen entdeckt. Physical Objects die über den Rand hinaus rollen verschwinden manchmal einfach. Das passiert zwar auch auf OSGrid, aber weniger häufig. Ich kann noch nicht sagen, ob der Unterschied von den unterschiedlichen Konfiguration oder den unterschiedlichen Netzwerk-Latenzzeiten herrührt.

    Simborder-Crossing mit Anhängen funktioniert soweit je nach Belastung recht gut. Mit Fahrzeugen funktioniert es bei mir aber genau so wenig wie früher.

    Ansonsten war Normalbetrieb (und meistens allein auf der Sim und im Grid ;-)) bisher recht gut. Um den Assetserver nicht zuzumüllen, wollte ich jetzt keine grösseren OAR's und IAR's reinladen. Leider habe ich zur Zeit auch kaum Zeit intensiver zu testen. 
  • Kxirya Weytana
    Kxirya Weytana
     Member
    Huhu zusammen,

    unsere Pangea Regionen laufen im Metro Grid inzwischen auch seit ´ner Weile unter 0.9.0.1 Dev und bis auf die Tatsache, dass wir die Physik auf "Bullet Engine" setzen mussten (weil auch bisher alle unsere Fahr- und Flugzeuge darunter liefen), können wir uns nicht wirklich beklagen.

    Hin und wieder kommt es zu Situationen, dass wenn jemand zu uns hin TPen möchte, sich die Region (jedoch bisher nur die RP Region mit 1024x1024 und 60k Prims) quasi aufhängt. Im CMD Fenster scheint alles normal zu laufen, jedoch sinkt die CPU Last auf dem Server dann um den Betrag, der der Last unserer RP Region etwa entspricht.

    Nach einem Neustart läuft aber dann alles wieder.

    Das einzige, was wirklich sehr nachteilig ist, ist die Tatsache, dass unter 0.8.3 unsere 2.800 Scripte in ca. 5-6 Minuten gestartet wurden. Unter 0.9.1 dauert der selbe Vorgang nun 1:45 Stunden :/
    Daher haben wir den Login zunächst ermöglicht, sobald die Region "da" ist und erst dann werden die Scripte nach und nach gestartet.

    Testweise habe ich unter 0.9.1 eine OAR gespeichert und diese auf eine 0.8.3 aufgespielt. Ergebnis: Die Scripte werden sofort wieder in wenigen Minuten gestartet.
    Dies lässt mich vermuten, dass dies mit der 0.9.1 zusammenhängt.

    Grüße,

    Kxìrya te Weytana Nllteya'ite.
  • Sheera Khan
    Sheera Khan
     Moderator edited June 14
    Huhus Kxirya,

    steht in der OpenSim.ini diese Zeile drin?
    DeleteScriptsOnStartup = false

    Ist der Parameter auf true gesetzt müsste der Simulator alle Scripte bei jedem Neustart neu übersetzen, und das könnte 'nen Moment dauern ^^


    Ein weiterer Parameter zur Optimierung liegt in der Zeile:

    AppDomainLoading = false

    In der Einstellung false lädt die Region die Scripte schneller, bei häufig entstehenden und wieder gelöschten Skripten kann sich allerdings der Speicherverbrauch erhöhen.


    Ciaoo


    Sheera





  • Data Rossini
    Data Rossini
     Member
    Hallo Zusammen,
    Kxirya Erfahrungen decken sich mit den meinen. Habe vor kurzem auf meinem VServer die neue Linux-Distribution openSUSE 15.0 eingespielt. Diese läuft mit Mono 5.10 und einem Linux-kernel 4.12. Dann habe ich mir die OpenSim 0.9.1 vom OSGrid geholt. Dann die ini-Dateien entsprechend der vorher installierten Metro-Version angepasst. Konnte die Sim auch erfolgreich starten und auch ordentlich beenden. Das Laden der Scripte dauerte im Vergleich zur 0.8.3 jedoch ewig. Zusätzlich ist mir noch aufgefallen, dass es auch wesentlich länger dauert, bis sich nach dem Einloggen die Sim aufbaut (Laden der Objekte). Auch nach dem wiederholten Einloggen. Als ob das Caching nicht funktionieren würde. Der Speicherverbrauch nimmt mit der Betriebszeit der Sim zu (alle paar Stunden mit "free" getestet) - auch wenn keiner auf der Sim ist. Da mich die OpenSim 0.9.1 so nicht überzeugen konnte, habe ich dann zur neuen openSUSE 15.0 wieder die Metro-OpenSim 0.8.3 eingspielt. Kurzum, die lief unter Mono 5.10 auch nicht richtig. Anschließend wieder die bewährte alte Mono 3.0.6 von einer meiner alte SUSE-DVD eingespielt. Diese lief zwar wie vorher, aber beim Beenden der Sim mit "shutdown", blieb die OpenSim.exe hängen. Das Pid-File hat der Prozess aber noch weggenommen. Letztendlich habe ich wieder die Vollsicherung von der vorherigen Umgebung eingespielt. Nun läuft wieder die openSUSE 42.3 mit Mono 3.06 und OpenSim 0.8.3. mit allem was ich von OpenSim so brauche und mit zufriedenstellender Performance.
    Auf dem Server laufen:  2 OpenSim.exe eine mit 768m x 768m und und eine mit 1024m x 1024m
    Verwende folgende Einstellungenin der OpenSim.ini, da in andern Posts bereits angesprochen:

    [XEngine]
       AppDomainLoading = true
       ScriptStopStrategy = "co-op"
       DeleteScriptsOnStartup = false

     [RegionReady]
        enabled = true
        login_disable = true
            
    Kann mich erinnern, dass es mit der Einstellung "AppDomainLoading = false" irgend ein Problem mit den Scripten gab. Muss zwar ein wenig länger warten, bis die Scripte alle gestartet sind. Solange ist die Sim gesperrt.

    Aber Hauptsache es läuft vernünftig. Hier bewahrheitet sich für mich wieder die alte Volksweisheit "Never change a running System!". Obwohl ich auch immer gerne neue Sachen ausprobiere.

    LG
  • Pius Noel
    Pius Noel
     Member
    Leider kann ich das, was hier von Kxirya Weytana und Data Rossini geschrieben wurde mit meinen jüngsten Tests auf Metropolis nur bestätigen. Ich habe deshalb meine beiden Opensim 0.9.1 Dev Regionen letzte Woche wieder abgeräumt, so dass ich zur Zeit die Details nicht nach vollziehen kann.

    Jetzt ist mir in diesem Zusammenhang aber eingefallen, dass ich auf OSGrid noch eine Testregion mit einer Version vom Oktober 2017 habe (0.9.1.0 (Dev)  59afeb6) bei der mir das Problem mit dem Laden der Scripte nie aufgefallen ist. Ich habe sie deshalb kurz hochgefahren und tatsächlich laden mehrere tausend Scripte in rund drei Minuten.

    Entweder gibt es Unterschiede in der Konfiguration, dem Umfang bzw. der Art der Scripte oder das Problem ist erst nachträglich hinzugekommen.

    Ich habe von den Test-Regionen auf Metropolis ein vollständiges Backup, so dass ich meine Tests zur genaueren Analyse nochmals aufnehmen kann. Aber vorher geniesse ich den Sommer und meinen Urlaub ;)
  • Kxirya Weytana
    Kxirya Weytana
     Member
    Hallöchen,

    @ Sheera:
    In allen unseren INIs (mehrere Regionen) stehen beide Zeilen nach wie vor drin. Selbst wenn ich die Scripte löschen lasse, starten sie in der selben Zeit (1.45h statt 5, 6, 7, Minuten).
    Das bringt in mir den Verdacht auf, das diese Zeile evt. gar keine Funktion mehr hat und GENERELL ALLE Scripte aus dem Cache gelöscht werden, sodass der Server sie alle neu kompilieren muss?

    Wäre ja durch einen "Flüchtigkeitsfehler" durchaus denkbar...

    Was uns aber noch aufgefallen ist:
    Im Vergleich zwischen der 0.8.3 und der 0.9.1 können unter letztrerer DEUTLICH WENIGER Leute auf die SIM, als unter der 0.8.3.

    Wir hatten z.B. gestern RP und da waren ganze 12 echte Avas und 7 NPCs. Jeder Versuch die echten Avas zu bewegen, wurde mit "Ruckeln" und ganzen 5 SIM FPS "belohnt". Sobald de Avas stehen, ist alles sofort wieder gut.

    Bei unserem vorletzten Geburtstag waren aber an die 40-50 echte Avas auf der SIM, dazu ein Musikstream und so weiter. Das lief unter 0.8.3 sauberst (bei selber OAR!).

    Vielleicht kann mir/uns ja jmd. tipps geben, ob/was man an der 0.9.1er ggf. optimieren könnte?

    Grüße,

    Kxìrya
Sign In or Register to comment.
© Copyright 2017 - Metropolis Metaversum
All times are GMT