« Réunion du 07-11-2023 » : différence entre les versions

De OSWiki
Aller à la navigation Aller à la recherche
Balise : wikieditor
Balise : wikieditor
 
(23 versions intermédiaires par le même utilisateur non affichées)
Ligne 5 : Ligne 5 :
{{Avertissement_résumé|fond=pink |bord=red |message = Ce résumé existe pour orienter vos recherches. Des erreurs d'interprétation ne sont pas à exclure. Pour plus de précisions, veuillez vous référer aux sources ou vous adresser directement aux développeurs d'OpenSimulator en assistant aux [http://opensimulator.org/wiki/Office_hours réunions du mardi] ou  sur [http://opensimulator.org/wiki/IRC le canal IRC]}}
{{Avertissement_résumé|fond=pink |bord=red |message = Ce résumé existe pour orienter vos recherches. Des erreurs d'interprétation ne sont pas à exclure. Pour plus de précisions, veuillez vous référer aux sources ou vous adresser directement aux développeurs d'OpenSimulator en assistant aux [http://opensimulator.org/wiki/Office_hours réunions du mardi] ou  sur [http://opensimulator.org/wiki/IRC le canal IRC]}}


= Noyau=
= Code général =
= Base de données =
=== Utilisation du CPU ===
= Modules =
* L'utilisation de Dotnet provoquerait une utilisation plus importante du CPU, mais tout le monde n'a pas vu d'augmentation spéctaculaire.
* Observation de Vincent Sylvester : Augmentation probable de l'ordre de 15 à 30 % selon les cas. Il a remarqué que c'était un peu linéaire jusqu'à un certain point et que l'utilisation a tendance à augmenter beaucoup plus rapidement puis à ralentir un peu. "C'est effrayant de voir une utilisation de 250% cpu avec beaucoup d'utilisateurs."
* Problème potentiel : Quelque chose qui tourne deux fois plus vite sans aucune limitation pourrait causer des goulots d'étranglement ailleurs.
* NDLR 🏗️ (je sature il reste encore 6 minutes de chat.)
 
= Bugs =
= Bugs =
=== Les librairies non gérées de macOS ne se chargent pas ===
=== Les librairies non gérées de macOS ne se chargent pas ===
Ligne 16 : Ligne 20 :
* Précision de Gavin Hird : si un logiciel est démarré depuis le terminal, la signature n'est pas vérifiées.
* Précision de Gavin Hird : si un logiciel est démarré depuis le terminal, la signature n'est pas vérifiées.
* NDLR : je n'ai jamais utilisé un Mac de ma vie, donc je vais m'arrêter là dans le résumé de ce sujet de peur de faire de grosses erreurs.
* NDLR : je n'ai jamais utilisé un Mac de ma vie, donc je vais m'arrêter là dans le résumé de ce sujet de peur de faire de grosses erreurs.
===Disparition de la bibliothèque OpenSim ===
* La bibliothèque OpenSim aurait disparu dans l'inventaire du viewer (NDLR: sur Argentoratum c'est le cas).
* Ubit Umarov a encore la bibliothèque même dans Firestorm Beta avec les récents changements.
* Le problème doit venir de la configuration Robust. (NDRL : je devais regarder ce qui se passe, je mettrai la solution ici si je la trouve).


= Tests =
= Projets en cours / Infos=
= Viewers=
= Viewers=
=== Dayturn ===
=== Dayturn ===
* Compilation du viewer Windows avec Visual Studio 2022
* Compilation du viewer Windows avec Visual Studio 2022
* Gavin Hird a pour projet d'essayer Mumble avec la version Mac du viewer.


=== Firestorm ===
=== Firestorm ===
* Avec la version 7.0 alpha certaines choses ne fonctionnent plus à cause d'un changement de protocole d'inventaire. Des vignettes d'inventaire s'affichnet mais ne fonctionnent pas parce que les développeurs utilisent le code pour [[Réunion_du_03-10-2023#Viewer_et_AIS |l'AIS V3 (voir la réunion du 03-10-2023)]].
* Avec la version 7.0 alpha certaines choses ne fonctionnent plus à cause d'un changement de protocole d'inventaire. Des vignettes d'inventaire s'affichent mais ne fonctionnent pas parce que les développeurs utilisent le code pour [[Réunion_du_03-10-2023#Viewer_et_AIS |l'AIS V3 (voir la réunion du 03-10-2023)]].


=== Second Life ===
=== Viewer Second Life ===
* Il semble que SL travaille sur beaucoup de choses à la fois et tout devient instable dans les viewers.  
* Il semble que SL travaille sur beaucoup de choses à la fois et tout devient instable dans les viewers.  
* Gavin.Hird est presque sûr que SL developpe une version Xbox du viewer. Ils pourraient aussi abandonner le support Mac, parce qu'ils ont mis à jour les instructions de construction pour la version Windows, mais les instructions de la version Mac sont significativement dépassées. Les utilisateurs de Mac seront à la traîne par rapport aux utilisateurs de Windows en termes de fonctionnalités et de performances dixit le chef technique de SL.  Apple a dit qu'ils allaient se débarrasser d'OpenGL et la seule chose qui fonctionne sur macOS est Metal.
* Gavin.Hird est presque sûr que SL developpe une version Xbox du viewer. Ils pourraient aussi abandonner le support Mac, parce qu'ils ont mis à jour les instructions de construction pour la version Windows, mais les instructions de la version Mac sont significativement dépassées. Les utilisateurs de Mac seront à la traîne par rapport aux utilisateurs de Windows en termes de fonctionnalités et de performances dixit le chef technique de SL.  Apple a dit qu'ils allaient se débarrasser d'OpenGL et la seule chose qui fonctionne sur macOS est Metal.
Ligne 40 : Ligne 47 :
* Lorsque quelqu'un veut le code, il est dirigé vers un test open source de la pile de rendu, et il doit le compiler et de le construire. Jusqu'à présent, personne ne l'a fait.
* Lorsque quelqu'un veut le code, il est dirigé vers un test open source de la pile de rendu, et il doit le compiler et de le construire. Jusqu'à présent, personne ne l'a fait.
* '''Test : ce lien mène vers un jeu factice avec la même structure que Sharpview''' et qui doit être compilé : https://github.com/John-Nagle/ui-mock .  
* '''Test : ce lien mène vers un jeu factice avec la même structure que Sharpview''' et qui doit être compilé : https://github.com/John-Nagle/ui-mock .  
** Tout est géré par le système [https://fr.wikipedia.org/wiki/Cargo_(informatique) Cargo] de Rust ([https://doc.rust-lang.org/stable/cargo/ Site officiel(en)].  Il suffit d'installer Rust, d'essayer "cargo build", et de voir ce qui se passe.
** Ce test fonctionne sous Windows et Linux.  
** Ce test fonctionne sous Windows et Linux.  
** Il faut encore tester sous MacOS. Faites savoir  à Joe Magarac comment cela fonctionne. Il devra être compilé dans Xcode pour que l'application finale s'exécute comme une application de bureau, donc idéalement il doit être signé.
** Il faut encore tester sous MacOS. Faites savoir  à Joe Magarac comment cela fonctionne. Il devra être compilé dans Xcode pour que l'application finale s'exécute comme une application de bureau, donc idéalement il doit être signé.


= Compilation =
* Il a été question de compilation [https://fr.wikipedia.org/wiki/Compilation_anticip%C3%A9e#Articles_connexes AOT (Ahead-of-Time)] et [https://fr.wikipedia.org/wiki/Compilation_%C3%A0_la_vol%C3%A9e JIT (Just-in-Time)]. Il semble qu'OpenSim ait choisi la compilation JiT . Le changement de performance entre AOT et JIT est principalement sur le chargement des méthodes.
= Source=
= Source=
http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2023-11-07
http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2023-11-07
<!--
<!--
[12:50 PM PT]  Gavin.Hird @grid.xmir.org:8002: dotnet c# like opensium must not be singed
[12:50 PM PT]  Gavin.Hird @grid.xmir.org:8002: signed
[12:50 PM PT]  Andrew Hellershanks: Joe, What other dependencies are there to build the ui-mock apart from needing the rust dev tools?
[12:50 PM PT]  Gavin.Hird @grid.xmir.org:8002: xcode isn't involved at all in dotnet builds
[12:50 PM PT]  Joe Magarac: It's all handled by Rust's Cargo system.
[12:50 PM PT]  Ubit Umarov: opensim could be pre compiled also
[12:50 PM PT]  Ubit Umarov: in AOT
[12:51 PM PT]  Ubit Umarov: ms starts to "sell" that idea..
[12:51 PM PT]  Joe Magarac: Just install Rust, try "cargo build", and see what happens.
[12:51 PM PT]  Andrew Hellershanks: As a check the rust-all package pulls in 12 other packages.
[12:51 PM PT]  Ubit Umarov: since JIT is... well damm slow :)
[12:51 PM PT]  Gavin.Hird @grid.xmir.org:8002: sure Ubit, but it does not run as a desktop app
[12:51 PM PT]  Gavin.Hird @grid.xmir.org:8002: it is invoked from the BSD subsystem, and does not need to be signed to run
[12:51 PM PT]  Ubit Umarov: well i stest AOT long ago still on mono
[12:51 PM PT]  Orbert.Tatham @hg.zetaworlds.com: Andrew, probably the best way to install it is to use the rust script on their web site
[12:52 PM PT]  Ubit Umarov: not the new dotnet6 forms
[12:52 PM PT]  Ubit Umarov: hmm or dotnet8
[12:52 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: I think we ultimately concluded compiling in release vs debug mode made a bigger difference than aot for most things
[12:52 PM PT]  Gavin.Hird @grid.xmir.org:8002: I suppose I could try and compile opensim in VS for macOS
[12:52 PM PT]  Gavin.Hird @grid.xmir.org:8002: but I cannot see it makes a difference
[12:53 PM PT]  Ubit Umarov: well performance change btw AOT and JIT is mostly on methods loading
[12:53 PM PT]  Gavin.Hird @grid.xmir.org:8002: if it was an iOS app with na UI, sure, then i had to be signed, and the final build is done by Xcode
[12:53 PM PT]  Gavin.Hird @grid.xmir.org:8002: but not for something invoked by the BSD subsystem
[12:53 PM PT]  Ubit Umarov: once a method is compiled into native, things stay similar.. in fact jit maybe a bit better
[12:55 PM PT]  Clifford.Hanger @alternatemetaverse.com:8002: ok 5 mins left - Is there any work/progress on voice in the last 2 weeks?
[12:55 PM PT]  Gavin.Hird @grid.xmir.org:8002: nothing but I have freed up a machine to try the mac version on Mumble
[12:55 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: Rome wasn't built in a day :)
[12:55 PM PT]  Gavin.Hird @grid.xmir.org:8002: and downloaded the executable
[12:55 PM PT]  Clifford.Hanger @alternatemetaverse.com:8002: lol vincent
[12:56 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: One of the things that I can't help but notice is that the increase in performance in dotnet does come along with higher cpu usage, which makes me wonder if some code is now so efficient it effectively spams now
[12:57 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: Something running twice as fast without any throttle could cause bottlenecks elsewhere
[12:57 PM PT]  Cuga.Rajal @rajal.org:9000: CPU is always underutilized so thats a good thing
[12:57 PM PT]  Clifford.Hanger @alternatemetaverse.com:8002: not seen any dramatic increases
[12:58 PM PT]  Clifford.Hanger @alternatemetaverse.com:8002: what i have seen is the opensim library has dissapeared
[12:58 PM PT]  Clifford.Hanger @alternatemetaverse.com:8002: but that may be a config issue
[12:58 PM PT]  Clifford.Hanger @alternatemetaverse.com:8002: on my part
[12:59 PM PT]  Ubit Umarov: what opensim lib?
[12:59 PM PT]  Andrew Hellershanks: Vincent, Any idea how much of an increase there was in CPU usage?
[12:59 PM PT]  Clifford.Hanger @alternatemetaverse.com:8002: in the viewer inventory
[12:59 PM PT]  Ubit Umarov: well we do have it..
[1:00 PM PT]  Ubit Umarov: even on fs beta with recent ll changes to inventory ( guess dayturn does not have them still )
[1:00 PM PT]  Clifford.Hanger @alternatemetaverse.com:8002: must be my robust split, missing something
[1:00 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: Probably somewhere in the range of 15-30% depending on case. I did notice that it used to be somewhat linear up until a point and now it tends to go up in usage much more quickly and then slows down a bit
[1:00 PM PT]  Orbert.Tatham @hg.zetaworlds.com: Does the RAM usages match that?
[1:01 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: It's scary to see usage of 250% cpu with a lot of users
[1:01 PM PT]  Andrew Hellershanks: Vincent, that's not going to be good for someone running a lot regions on a single box.
[1:01 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: Memory usage is way down compared to say three years ago
[1:01 PM PT]  Orbert.Tatham @hg.zetaworlds.com: Probably part of the tradeoff
[1:01 PM PT]  Ubit Umarov: i did made several changes to how we did use memory
[1:01 PM PT]  Ubit Umarov: i did made several changes to how we did use memory
[1:01 PM PT]  Ubit Umarov: and dotnet gc is a bit better
[1:01 PM PT]  Ubit Umarov: and dotnet gc is a bit better
[1:02 PM PT]  Lyr Lobo grins and nods
[1:02 PM PT]  Ubit Umarov: but for example all lludp packet buffers are now reused
[1:02 PM PT]  Ubit Umarov: but for example all lludp packet buffers are now reused
[1:02 PM PT]  Ubit Umarov: that is a lot less stress on gc
[1:02 PM PT]  Ubit Umarov: that is a lot less stress on gc
Ligne 108 : Ligne 69 :
[1:04 PM PT]  Ubit Umarov: lludp sending is now also done with fastfoward serialization without intermediate structures
[1:04 PM PT]  Ubit Umarov: lludp sending is now also done with fastfoward serialization without intermediate structures
[1:05 PM PT]  Ubit Umarov: and some some caps..
[1:05 PM PT]  Ubit Umarov: and some some caps..
[1:05 PM PT]  Joe Magarac: Next meeting, bye for now.
[1:05 PM PT]  Jagga Meredith: could that be within the real of statistical error?
[1:05 PM PT]  Jagga Meredith: could that be within the real of statistical error?
[1:05 PM PT]  Clifford.Hanger @alternatemetaverse.com:8002: bye joe
[1:05 PM PT]  Andrew Hellershanks: ok, Joe. Thanks for dropping by.
[1:05 PM PT]  Jagga Meredith: realm
[1:05 PM PT]  Jagga Meredith: realm
[1:05 PM PT]  Clifford.Hanger @alternatemetaverse.com:8002: i think so
[1:05 PM PT]  Clifford.Hanger @alternatemetaverse.com:8002: i think so
Ligne 119 : Ligne 77 :
[1:06 PM PT]  Ubit Umarov: well cpu load is not that a big metric...  things need to use cpu to work :P
[1:06 PM PT]  Ubit Umarov: well cpu load is not that a big metric...  things need to use cpu to work :P
[1:07 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: It's difficult to measure that stuff accurately given the amount of variables you have in play. It is mostly just looking at usage during peak hours and comparing that to how things used to behave. Noticing mostly a difference in how usage grows more quickly and then levels off, over a more linear growth
[1:07 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: It's difficult to measure that stuff accurately given the amount of variables you have in play. It is mostly just looking at usage during peak hours and comparing that to how things used to behave. Noticing mostly a difference in how usage grows more quickly and then levels off, over a more linear growth
[1:16 PM PT]  Ubit Umarov: bad network weather
[1:18 PM PT]  Lyr Lobo: bye Vincent!
[1:18 PM PT]  Ubit Umarov: ok fun networkj glitch
[1:18 PM PT]  Lyr Lobo: sorry to dash so fast *laughs*  yes, pulled the plug, eh?
[1:18 PM PT]  Lyr Lobo teases
[1:19 PM PT]  Ubit Umarov: guess someone on a major net node pulled out the wrong cable
[1:19 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: One way to end a meeting
[1:19 PM PT]  Lyr Lobo: hehe
[1:19 PM PT]  Lyr Lobo: see ya!
[1:19 PM PT]  Ubit Umarov: :)
[1:20 PM PT]  Ubit Umarov: yeah rl also calls me :)
[1:20 PM PT]  Ubit Umarov: cya aroung
[1:20 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: The logging...
[1:21 PM PT]  Andrew Hellershanks: That was an unexpected end to the meeting.
[1:22 PM PT]  Andrew Hellershanks: We all got logged out and the region went away for a bit but we are back.
[1:22 PM PT]  Vincent.Sylvester @hg.zetaworlds.com: mobile viewer experience lol
[1:22 PM PT]  Andrew Hellershanks: As the meeting was just about over I will officially mark it as ended and turn off the chat logger.
-->
-->

Dernière version du 15 novembre 2023 à 16:17

Changements du code de la semaine

Avertissement

Attention : Ce résumé existe pour orienter vos recherches. Des erreurs d'interprétation ne sont pas à exclure. Pour plus de précisions, veuillez vous référer aux sources ou vous adresser directement aux développeurs d'OpenSimulator en assistant aux réunions du mardi ou sur le canal IRC


Code général

Utilisation du CPU

  • L'utilisation de Dotnet provoquerait une utilisation plus importante du CPU, mais tout le monde n'a pas vu d'augmentation spéctaculaire.
  • Observation de Vincent Sylvester : Augmentation probable de l'ordre de 15 à 30 % selon les cas. Il a remarqué que c'était un peu linéaire jusqu'à un certain point et que l'utilisation a tendance à augmenter beaucoup plus rapidement puis à ralentir un peu. "C'est effrayant de voir une utilisation de 250% cpu avec beaucoup d'utilisateurs."
  • Problème potentiel : Quelque chose qui tourne deux fois plus vite sans aucune limitation pourrait causer des goulots d'étranglement ailleurs.
  • NDLR 🏗️ (je sature il reste encore 6 minutes de chat.)

Bugs

Les librairies non gérées de macOS ne se chargent pas

  • Lien du ticket 0009097 (en) : http://opensimulator.org/mantis/view.php?id=9097
  • Affecte macOS spécifiquement, branche dotnet6. Même résultat sur Mac x86_64 et Mac arm64 .
  • Les certificats Apple Developer utilisés pour signer les bibliothèques non gérées de macOS étaient sur le point d'expirer. La génération de nouveaux certificats nécessitait la révocation des anciens. En conséquence, opensim n'a pas pu démarrer. Les trois bibliothèques non gérées dans le repo ne parvenaient pas à se charger à cause du certificat de distribution révoqué qui était utilisé pour les bibliothèques non gérées dans le tronc (branche dotnet6).
  • Les nouvelles librairies ont été transférées dans la branche dotnet6, OpenSim est opérationnel sur macOS, les utilisateurs de macOS devront faire une mise à jour. Les librairies fonctionneront sur n'importe quel macOS 10.5-latest.
  • Précision de Gavin Hird : si un logiciel est démarré depuis le terminal, la signature n'est pas vérifiées.
  • NDLR : je n'ai jamais utilisé un Mac de ma vie, donc je vais m'arrêter là dans le résumé de ce sujet de peur de faire de grosses erreurs.

Disparition de la bibliothèque OpenSim

  • La bibliothèque OpenSim aurait disparu dans l'inventaire du viewer (NDLR: sur Argentoratum c'est le cas).
  • Ubit Umarov a encore la bibliothèque même dans Firestorm Beta avec les récents changements.
  • Le problème doit venir de la configuration Robust. (NDRL : je devais regarder ce qui se passe, je mettrai la solution ici si je la trouve).

Viewers

Dayturn

  • Compilation du viewer Windows avec Visual Studio 2022
  • Gavin Hird a pour projet d'essayer Mumble avec la version Mac du viewer.

Firestorm

  • Avec la version 7.0 alpha certaines choses ne fonctionnent plus à cause d'un changement de protocole d'inventaire. Des vignettes d'inventaire s'affichent mais ne fonctionnent pas parce que les développeurs utilisent le code pour l'AIS V3 (voir la réunion du 03-10-2023).

Viewer Second Life

  • Il semble que SL travaille sur beaucoup de choses à la fois et tout devient instable dans les viewers.
  • Gavin.Hird est presque sûr que SL developpe une version Xbox du viewer. Ils pourraient aussi abandonner le support Mac, parce qu'ils ont mis à jour les instructions de construction pour la version Windows, mais les instructions de la version Mac sont significativement dépassées. Les utilisateurs de Mac seront à la traîne par rapport aux utilisateurs de Windows en termes de fonctionnalités et de performances dixit le chef technique de SL. Apple a dit qu'ils allaient se débarrasser d'OpenGL et la seule chose qui fonctionne sur macOS est Metal.
  • Vincent.Sylvester trouve qu'il aurait fallu plus de modularité pour une adaptation à d'autres contrôles de jeu.
  • Joe Magarac dit que la prise en charge des contrôleurs de jeu utilisera la norme Human Interface Device. Cette norme prend en charge la plupart des appareils qui se branchent sur un port USB.
  • Paradoxalement, il est aussi question d'un viewer pour iPad.
  • Le projet du Viewer mobile fonctionne avec Vulkan. Cuga.Raja suppose qu'UDP ne sera plus utilisé (donc passage à TCP) pour le Viewer mobile. L'ancienne idée pour le mobile était d'utiliser une sorte de streaming vidéo côté serveur.
  • Les viewers OpenSim sont à 95% du code Linden Lab. D'après Ubit Umarov, la corde de la dépendance est peut-être sur le point de se rompre. Certains changements sont tout simplement trop mauvais pour être suivis. Quand firestorm a speraté OpenSim et SL, ils ont arrêté de faire du code pour nous... Vincent Sylvester dit changer le pipeline de développement et nettoyer le désordre des dépendances ne serait pas seulement bénéfique pour nous, mais rendrait généralement plus facile le développement d'un viewer en utilisant le code Linden Lab. C'est une entreprise de grande envergure et cela ne résout pas complètement le problème de la compatibilité.
  • Le problème est que personne n'est capable de réécrire le moteur de rendu.

Sharpview

  • Sharpview est 0% de code Linden Lab et 100% Rust.
  • Lorsque quelqu'un veut le code, il est dirigé vers un test open source de la pile de rendu, et il doit le compiler et de le construire. Jusqu'à présent, personne ne l'a fait.
  • Test : ce lien mène vers un jeu factice avec la même structure que Sharpview et qui doit être compilé : https://github.com/John-Nagle/ui-mock .
    • Tout est géré par le système Cargo de Rust (Site officiel(en). Il suffit d'installer Rust, d'essayer "cargo build", et de voir ce qui se passe.
    • Ce test fonctionne sous Windows et Linux.
    • Il faut encore tester sous MacOS. Faites savoir à Joe Magarac comment cela fonctionne. Il devra être compilé dans Xcode pour que l'application finale s'exécute comme une application de bureau, donc idéalement il doit être signé.

Compilation

  • Il a été question de compilation AOT (Ahead-of-Time) et JIT (Just-in-Time). Il semble qu'OpenSim ait choisi la compilation JiT . Le changement de performance entre AOT et JIT est principalement sur le chargement des méthodes.

Source

http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2023-11-07