Réunion du 30-11-2021

De OSWiki
Aller à la navigation Aller à la recherche

Traduction prochaine.

Source : http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2021-11-30

Introduction & Migration des assets sur Osgrid

Migration des assets sur Osgrid

[11:01] Selby.Evans @grid.kitely.com:8002 : bonjour à tous.
[11:01] Gavin.Hird @grid.xmir.org:8002 : Salut Selby, Andrew
[11:01] Andrew Hellershanks : Bonjour à tous.
[11:01] Gavin.Hird @grid.xmir.org:8002 : Je pensais à la question des assets osg.
[11:02] Gavin.Hird @grid.xmir.org:8002 : pas la région.
[11:02] Ubit Umarov : salut andrew et selby.Evans
[11:02] Gavin.Hird @grid.xmir.org:8002 : :-)
[11:02] Ubit Umarov : ahh bien cela prendra du temps.
[11:02] Ubit Umarov : estimé à 1 mois
[11:02] Gavin.Hird @grid.xmir.org:8002 : donc l'année prochaine.
[11:02] Ubit Umarov : jusqu'à la fin de l'opération.
[11:03] Gavin.Hird @grid.xmir.org:8002 : Salut Jagga
[11:03] Andrew Hellershanks : Bonjour, Jagga.
[11:03] Jagga Meredith : Bonjour.
[11:03] Ubit Umarov : yeha pas sûr que les vacances aient été prises en compte dans cette estimation du temps.
[11:03] Andrew Hellershanks : Le temps pour faire quoi ?
[11:03] Gavin.Hird @grid.xmir.org:8002 : Je suppose que l'ordinateur fonctionne aussi vite que n'importe quel autre jour, férié ou non.
[11:04] Ubit Umarov : pour ceux qui ne comprennent pas, osgrid a déplacé les services d'assets vers un autre datacenter.
[11:04] Ubit Umarov : depuis quelques mois maintenant, les nouveaux services fonctionnent, récupérant les assets manquants des anciens services.
[11:04] Gavin.Hird @grid.xmir.org:8002 : et (ndlr : OSGrid) a posté un message indiquant que les ressources qui n'ont pas été récemment utilisées ne seront plus dans l'inventaire pendant environ un mois
[11:04] Ubit Umarov : maintenant cela a été arrêté.
[11:05] Andrew Hellershanks : Oh. Copier les données va prendre un certain temps...
[11:05] Ubit Umarov : les services vont signaler les manquants, comme manquants.
[11:05] Ubit Umarov : le reste des assets est en train d'être copié.
[11:05] Ubit Umarov : et cela va prendre beaucoup de temps.
[11:05] Andrew Hellershanks : Où cela est-il affiché sur le site Web d'osgrid ? Je ne le vois pas sous "News".
[11:05] Ubit Umarov : car il y a environ 5 To de données.
[11:06] Ubit Umarov : C'est sur le forum.
[11:06] Ubit Umarov : gavin l'a trouvé :)
[11:06] Gavin.Hird @grid.xmir.org:8002: https://forums.osgrid.org/viewtopic.php?f=8&t=6836
[11:07] Ubit Umarov : il semble que la recherche des assets manquants par les nouveaux services sur les anciens services ait  perturbé le processus de copie, provoquant ainsi beaucoup de retard.
[11:07] Ubit Umarov : à ce qu'on m'a dit :)
[11:07] Andrew Hellershanks : Oh. Ils l'ont enterré dans le forum ? Je lis rarement les forums.
[11:07] Gavin.Hird @grid.xmir.org:8002 : cela signifie probablement que les couronnes de Noël qu'on n'a pas utilisées depuis Noël dernier devront être oubliées cette année.
[11:08] Andrew Hellershanks : Bonjour, Jamie
[11:08] Vincent.Sylvester @hg.zetaworlds.com:8002 : Il est assez difficile de régler le déplacement des données concernant les assets, même lorsqu'il s'agit de fichiers, car le déplacement d'une grandes quantités de petits fichiers n'est pas ce pour quoi la plupart des systèmes de transfert sont optimisés. Avec rsync, j'ai commencé à tester les paramètres des tampons et du cache ainsi que l'exécution de plusieurs instances sur une partie de l'ensemble des données, car un seul rsync, même avec le multithreading intégré, ne se comporte pas bien lorsqu'il s'agit de déplacer 300 000 fichiers de quelques Ko chacun.  La structure de données des assets, même dans une configuration imbriquée, est un cauchemar, sans parler d'essayer de faire des sauvegardes par version sous une forme raisonnable sans vraiment repousser les limites de ce que la compression peut faire.
[11:09] Ubit Umarov : bien entendu, vous, les gens de l'hypergrid, ne devriez pas constater le problème.

Viewer & Glow

Les viewers Dayturn7 pour macOS et pour Windows

[11:09] Jamie.Jordan @grid.kitely.com:8002 : Bonjour tout le monde, je n'ai pas réussi à charger la viewer aujourd'hui.
[11:09] Gavin.Hird @grid.xmir.org:8002 : ok...
[11:10] Ubit Umarov : la visionneuse a fonctionné correctement pour moi ici.
[11:10] Gavin.Hird @grid.xmir.org:8002 : en parlant de viewer, j'ai posté une nouvelle version il y a quelques jours.
[11:10] Andrew Hellershanks : Jamie, np. Tu as quand même réussi à venir ici.
[11:10] Ubit Umarov : seul sl a  des problèmes.
[11:10] Andrew Hellershanks : Gavin, quelque chose de nouveau et d'excitant ?
[11:10] Gavin.Hird @grid.xmir.org:8002 : oui.
[11:10] Selby.Evans @grid.kitely.com:8002 : Bonjour Jamie.
[11:10] Ubit Umarov : il faut se souvenir de l'url de Gavin :)
 vous pouvez définir des objets lumineux (glow) pour qu'ils soient 100 % transparents et qu'ils conservent leur luminosité.
[11:11] Ubit Umarov : je veux dire l'url de téléchargement du viewer.
[11:11] Gavin.Hird @grid.xmir.org:8002 : excellent pour faire des fantômes et d'autres choses.
[11:11] Jamie.Jordan @grid.kitely.com:8002 : Salut Selby
[11:11] Andrew Hellershanks : Il ne se conservait pas du réglage du glow avant maintenant ?
[11:11] Gavin.Hird @grid.xmir.org:8002: https://www.dayturn.com/viewer/index.php?resources/
[11:11] Gavin.Hird @grid.xmir.org:8002 : non.
[11:11] Ubit Umarov : ohh comme la lumière de la lune noire sur l'océan ?
[11:12] Ubit Umarov : ils ont oublié de vérifier le glow sur les prims transp ?
[11:12] Gavin.Hird @grid.xmir.org:8002 : c'est un type différent de glow Ubit.
[11:12] Ubit Umarov : mais une classe de bugs similaire :P
[11:12] Gavin.Hird @grid.xmir.org:8002 : ils l'ont fait.
[11:12] Andrew Hellershanks : IIRC, je n'utilise pas de glow supérieur à environ 30%, au delà, la texture est effacée sur la prim et tout ce que vous voyez est blanc.
[11:12] Ubit Umarov : ( mais la lune ne devrait pas être sombre )
[11:13] Gavin.Hird @grid.xmir.org:8002 : La configuration minimale requise est maintenant Windows 10, c'était XP....
[11:13] Kayaker Magic : Hmm, j'ai profité de l'absence de lumière sur la transparence pour faire des lumières clignotantes !
[11:13] Andrew Hellershanks : Gavin, c'est un grand saut. Cela peut exclure un certain nombre d'utilisateurs.
[11:13] Gavin.Hird @grid.xmir.org:8002: oui
[11:14] Ubit Umarov : ça fait sauter 7 et 8 :)
[11:14] Gavin.Hird @grid.xmir.org:8002 : j'ai aussi monté la version macOS d'un cran.
[11:14] Ubit Umarov: et vista!
[11:14] Gavin.Hird @grid.xmir.org:8002: Vista
[11:14] Gavin.Hird @grid.xmir.org:8002: :-)
[11:14] Ubit Umarov : opensim supporte vista !
[11:14] Ubit Umarov : pas XP :(
[11:15] Ubit Umarov : ( vista peut utiliser .net 4.6, XP ne le peut pas, c'est juste ça )

Lumières clignotantes

[11:14] Kayaker Magic : Hmm, je donnerais bien à Gavin une copie de mes lumières clignotantes, mais cet asset ne peut pas être trouvé dans l'inventaire :(
[11:15] Gavin.Hird @grid.xmir.org:8002 : Il existe un script de lumières clignotantes dans la bibliothèque LSL.
[11:15] Gavin.Hird @grid.xmir.org:8002 : J'ai donné à Ubit une copie, donc peut-être qu'il l'a dans sa librairie ?
[11:15] Gavin.Hird @grid.xmir.org:8002 : donné*.
[11:15] Ubit Umarov : l'asset sera là en 2022 :)
[11:15] Andrew Hellershanks : Kayaker, l'article du forum dit que vous devrez peut-être attendre un mois.
[11:16] Ubit Umarov : un script clignotant ?
[11:16] Gavin.Hird @grid.xmir.org:8002 : oui.
[11:16] Ubit Umarov : oui, j'ai l'asset.
[11:16] Gavin.Hird @grid.xmir.org:8002 : il utilise le glow.
[11:16] Ubit Umarov : qui en a besoin ?
[11:16] Ubit Umarov: 
   timer()
    {
        isOn = !isOn;
        if( isOn ) llSetLinkPrimitiveParamsFast( LINK_THIS,[PRIM_GLOW,faceNo,glowAmount] );
        else llSetLinkPrimitiveParamsFast( LINK_THIS,[PRIM_GLOW,faceNo,0.0] );
    }
[11:16] Ubit Umarov: c'est ça
[11:17] Andrew Hellershanks : Un script simple et agréable.
[11:17] Gavin.Hird @grid.xmir.org:8002: url de téléchargement du viewer : https://www.dayturn.com/viewer/index.php?resources/
[11:17] Kayaker Magic : Ce n'est pas un script clignotant, il utilise llSetTextureAnim pour déplacer la couleur et la TRANSPARENCE entre les parties du mesh.
[11:18] Gavin.Hird @grid.xmir.org:8002 : mettez-le dans un cube Ubit.
[11:18] Ubit Umarov : les clignotants peuvent être un bon tueur de région.
[11:18] Kayaker Magic : Donc le viewer fait tout le travail.
[11:19] Gavin.Hird @grid.xmir.org:8002 : Le CPU de la région est à 0.11% donc je suis sûr qu'un script de clignotant ne la tuera pas.
[11:18] Andrew Hellershanks : Ubit, cela dépend en partie du timer utilisé.
[11:19] Ubit Umarov: définir une lumière (ou glow) est unc mise à jour complète de la prim prim envoyée  à tous les viewers dans la vue
[11:19] Ubit Umarov: il semble que les régions soient complètement hors service à cause de cela
[11:19] Ubit Umarov: flood complet sur lludp
[11:19] Ubit Umarov: llSetTextureAnim est une bonne façon d'éviter cela
[11:19] Gavin.Hird @grid.xmir.org:8002: CPU for the region is 0.11% so I am sure one blinker script will not kill it
[11:19] Kayaker Magic : Ouais, j'ai vu des gens mettre une région à genoux avec des lumières de Noël ! C'est pourquoi j'ai écrit ce clignotant orienté  client.
[11:20] Jagga Meredith: kewl
[11:21] Ubit Umarov : j'espère que toutes les lumières de Noël utiliseront une animation de texture ou similaire.
[11:22] Andrew Hellershanks: I've seen several that use short(ish) timers so the scripts show a high runtime number.
[11:22] Ubit Umarov: it is not just cpu
[11:22] Ubit Umarov: it is massive use of lludp
[11:22] Object: Script running
[11:23] Vincent.Sylvester @hg.zetaworlds.com:8002: It's not as bad as you think, had nearly 40 people on a region with about 30 lights each color and point light along with a few more color changers and so on, worked better than it would have 5 years ago that's for sure
[11:23] Vincent.Sylvester @hg.zetaworlds.com:8002: We have come quite a way since those days when too many prim updates would crash regions
[11:23] Gavin.Hird @grid.xmir.org:8002: here is the blink script
[11:23] Vincent.Sylvester @hg.zetaworlds.com:8002: These days you just get scene update queue failures which makes it look like scripts stopped
[11:24] Jagga Meredith: not copyable
[11:24] Vincent.Sylvester @hg.zetaworlds.com:8002: Get that from time to time when folks decide to place 800 line scripts in something just to align a door
[11:24] Andrew Hellershanks: The first indication that a script might be causing problems is high script runtime. Users can't see any stats about UDP traffic.
[11:24] Ubit Umarov: in fact they can
[11:24] Gavin.Hird @grid.xmir.org:8002: it looks slightly strange when set to 100% trans
[11:24] Ubit Umarov: just not the source
[11:25] Vincent.Sylvester @hg.zetaworlds.com:8002: I have quite a bit of lighting with normally heavy functions, with a few tricks you can get the region impact down a lot, one wrong move and cpu go bye bye though
[11:25] Ubit Umarov: but lludp is there on top of stats
[11:25] Ubit Umarov: ( what we can't see is http, except on singularity =
[11:26] Vincent.Sylvester @hg.zetaworlds.com:8002: I have not seen a single user consume more than 3mbit after region is loaded for them, unless you are doing DSL over a piece of wet string you're usually okay on the network front
[11:26] Kayaker Magic: Speaking of bad scripts, Discovery Grid found one of their users running a script that saved a notecard every second, and ran a bunch of copies of it.
[11:26] Ubit Umarov: singularity does have a nice http bandwidth usage thing
[11:26] Ubit Umarov: well now i see me using 50MB alone :p
[11:26] Ubit Umarov: on a region
[11:27] Andrew Hellershanks: If a script doesn't have a high runtime I wouldn't think about checking network traffic. Even if it did, I still wouldn't have thought about network traffic. I rarely pull up that statistics panel so I don't remember all of the stats it shows.
[11:27] Vincent.Sylvester @hg.zetaworlds.com:8002: If we get into a discussion on the deficiencies of the protocol we'll be here for days, so many redundant calls and things happening, in the end it magically still works even if it probably shouldn't
[11:28] Ubit Umarov: i did change the http throttling on assets
[11:28] Andrew Hellershanks: :)
[11:28] Gavin.Hird @grid.xmir.org:8002: now cube wtih script can be copied
[11:29] Ubit Umarov: replaced throttle by a diferent thing, just more concerned with fair usage
[11:29] Jagga Meredith: *stares at cube, mesmerized*
[11:29] Ubit Umarov: adn with type of data priority
[11:29] Ubit Umarov: in case you did not notice, avatars do rez a lot faster now :p
[11:29] Andrew Hellershanks: hm... makes me wonder if anyone has made a lava lamp?
[11:29] Ubit Umarov: if you and region do have bandwitdh
[11:30] Vincent.Sylvester @hg.zetaworlds.com:8002: Slow color fades are easy to do in Yengine now due to better handling of script delays
[11:30] Vincent.Sylvester @hg.zetaworlds.com:8002: Just need to find the right sweetspot for the function complexity and the thing writes itself
[11:31] Ubit Umarov: ( note that as nothing to do with some forks that just did removed throttles without any replacement code )
[11:31] Ubit Umarov: has
[11:31] Vincent.Sylvester @hg.zetaworlds.com:8002: Good measure of cpu clock seeing how quickly the light changes
[11:31] Ubit Umarov: ok, and what news do you have about opensim?
[11:31] Ubit Umarov: :)
[11:32] Andrew Hellershanks: Not a lot of change this week but some.
[11:33] Andrew Hellershanks: Some settings that were previously only available for XEngine are now available in YEngine.
[11:33] Vincent.Sylvester @hg.zetaworlds.com:8002: Mostly bugfixing which I love to see, some long standing issues even that finally get attention, just wish mantis was a bit more flexible in all that
[11:33] Vincent.Sylvester @hg.zetaworlds.com:8002: Can't really establish a "to be tested" or "can't fix right now" status
[11:33] Andrew Hellershanks: There were some changes related to CO2 but I don't know what is CO2.
[11:34] Ubit Umarov: jezzz
[11:34] Vincent.Sylvester @hg.zetaworlds.com:8002: Ask a cow Andrew, they make a lot of it I heard
[11:34] Jagga Meredith: some gas? (I know, "don't start")
[11:34] Andrew Hellershanks: Vincent, I thought that was methane.
[11:34] Andrew Hellershanks: :)
[11:34] Ubit Umarov: those are more methane Vicent :)
[11:35] Gavin.Hird @grid.xmir.org:8002: All of you are making a lot of CO2
[11:35] Gavin.Hird @grid.xmir.org:8002: every exhale has 40X the CO2 compared to your inhale
[11:35] Ubit Umarov: yes but our CO2 is balanced
[11:35] Ubit Umarov: plants did capture all of it in our life time
[11:36] Ubit Umarov: so our co is kinda "neutral"
[11:36] Gavin.Hird @grid.xmir.org:8002: CO2 is compltely irrelevant for any discussion. It is a trace gas of 0.04% of the atmosphere
[11:36] Ubit Umarov: but yeah on the commits is abotu saving a little of cpu work, so power, so co2 on most regions
[11:36] Ubit Umarov: :p
[11:37] Andrew Hellershanks: One bug fix this past week prevents some prims from changing type when setting them to flex using llSetPrimitiveParams. (mantis 7896 and 7910).
[11:37] Ubit Umarov: "try save some zeptogram of CO2"
[11:37] Ubit Umarov: not the optimistic on real impact on co2 :p
[11:37] Gavin.Hird @grid.xmir.org:8002: all power on my regions are generated from hydroelectric plants
[11:37] Andrew Hellershanks: Ubit, I read that and have no idea what it meant.
[11:37] Ubit Umarov: wlel you know now :p
[11:37] Vincent.Sylvester @hg.zetaworlds.com:8002: Memory has been less of an issue with OpenSim, but given you can only really use one or two cores per instance, think most I have seen is 330% cpu, saving small bits here and there helps
[11:38] Andrew Hellershanks looks up the definition of zeptogram
[11:38] Andrew Hellershanks: No such word found in the dictionary.
[11:38] Gavin.Hird @grid.xmir.org:8002: :-)
[11:38] Vincent.Sylvester @hg.zetaworlds.com:8002: Some of the changes I can imagine in certain situations when used a lot might make quite some more impact, but nothing you can really measure given the flux of cpu and threading
[11:38] Ubit Umarov: you have a bad dic lol
[11:39] Ubit Umarov: it is 10^-21 gram :p
[11:39] Gavin.Hird @grid.xmir.org:8002: yeah
[11:39] Gavin.Hird @grid.xmir.org:8002: 1 zeptogram = 0,001 attogram
[11:39] Jagga Meredith: *remembers high school math teacher saying "oh yeah, there's things like Tera- and pico- but you'll never use them"
[11:39] Gavin.Hird @grid.xmir.org:8002: or 1 000 yoctogram
[11:40] Andrew Hellershanks: I've never seen zepto before in terms of a unit of measure.
[11:40] Ubit Umarov: well mantis 7896 and 7910 where actually a bug we had since ever
[11:40] Ubit Umarov: hope fixed now
[11:40] Ubit Umarov: actually did commit that today
[11:40] Andrew Hellershanks: Jagga, I often use pico.
[11:40] Jagga Meredith: exactly
[11:40] Vincent.Sylvester @hg.zetaworlds.com:8002: I was looking at an issue earlier this week in regards to links of deleted items not being deleted when commanded as such, but it appears that only "sticks" around until you relog, which I am not sure why that might be, but I suppose that does make it a non-issue or at least self correcting
[11:41] Ubit Umarov: hard to same picogram of CO2 changing a few lines of code :p
[11:41] Ubit Umarov: hard to save...
[11:42] Jagga Meredith: is old
[11:43] Ubit Umarov: some lsl settings on [xengine] are needed on [yengine]   as andrew  said some settings that where present only on X are needed also o Y
[11:43] Ubit Umarov: currently LSLapi code looks for them on respective engine
[11:43] Ubit Umarov: so i did duplicate them
[11:44] Ubit Umarov: possible in future they should have own section
[11:45] Andrew Hellershanks: I think I finally get the CO2 reference in the comment. It was Ubits slightly cryptic way of saying that he made some optimizations in the code to save some clock cycles.
[11:45] Vincent.Sylvester @hg.zetaworlds.com:8002: I did finish up on fixing up the previously broken and disabled script engine tests for X and made them available as copies to Y as well. Ubit handed me a compliance testing script that appears to work almost completely in Y, with X misbehaving a bit more. I wrote a test for this script to run on both so that changes made to the script engines can now be tested for regressions
[11:45] Ubit Umarov: well not for gavin.Hird
[11:46] Ubit Umarov: but sure on servers in Poland for example
[11:47] Gavin.Hird @grid.xmir.org:8002: not saving CO2, but reducing the power bill
[11:47] Ubit Umarov: im considering underclock my machine :)
[11:47] Gavin.Hird @grid.xmir.org:8002: since Europe is in such a power squeeze, we sell all our power to it, so my price per kWh has gone up 11x the last month
[11:48] Vincent.Sylvester @hg.zetaworlds.com:8002: Working on the tests did find some issues with changed firing randomly when not commanded as such, though I am not entirely sure if that really is the case, scratching me head over that one still
[11:49] Andrew Hellershanks: Vincent, good to have a proper set of tests for the scripting engine. Do they test the timing accuracy some script functions?
[11:49] Andrew Hellershanks: Hello, Dennis.
[11:50] Gavin.Hird @grid.xmir.org:8002: Hi Dennis
[11:50] Vincent.Sylvester @hg.zetaworlds.com:8002: I could write a test like that I guess
[11:50] Vincent.Sylvester @hg.zetaworlds.com:8002: There exists a test for running a plain script, I copied a lot of that code and just stuffed the compliance test script in there to run
[11:50] Andrew Hellershanks: I have found timing issues with KFM and/or llTargetOmega.
[11:50] Vincent.Sylvester @hg.zetaworlds.com:8002: Technically can run any script and check the output
[11:51] Gavin.Hird @grid.xmir.org:8002: has not LL published a large number of script tests?
[11:51] Ubit Umarov: the one i shared with vincent is one of those gavin.Hird
[11:51] Vincent.Sylvester @hg.zetaworlds.com:8002: Timers are strange, but internally given the way they work you can make minor changes to the way you call the timer up which result in increased accuracy, but it will, not even in SL, be accurate over time
[11:52] Gavin.Hird @grid.xmir.org:8002: http://wiki.secondlife.com/wiki/LSL_Test_Harness
[11:52] Ubit Umarov: but usefull bc checks some evaluation order eve
[11:52] Gavin.Hird @grid.xmir.org:8002: ok
[11:52] Ubit Umarov: a case made VIncent brain smoke a bit :)
[11:52] Andrew Hellershanks: Vincent, the problem with that is that it isn't reliable. You copy the script to a different grid and you have to recalculate the adjustments.
[11:53] Andrew Hellershanks: In some cases the viewer may be (part of?) the cause of timing issues.
[11:54] Vincent.Sylvester @hg.zetaworlds.com:8002: Well you can almost always cut 0.3% off the time you want, so 10 becomes 9.7 then you make sure to 9.7f or the double whammy 9.777777f and you get about twice the accuracy over ten minutes than before
[11:54] Vincent.Sylvester @hg.zetaworlds.com:8002: On most but the most loaded of regions that tends to work quite well
[11:54] Vincent.Sylvester @hg.zetaworlds.com:8002: I used to calc the difference in timing and once past 1 second just reset the timer event
[11:55] Vincent.Sylvester @hg.zetaworlds.com:8002: Or use a smaller timer in the range of accuracy you want, say every 5 minutes for an hourly check
[11:55] Ubit Umarov: (jesus no :P )
[11:55] Dennis Ravnsholm: thanks
[11:56] Ubit Umarov: do not do that :p
[11:56] Andrew Hellershanks: I suspect that either the grid code or viewer code doesn't properly track the difference in time when some functions are called.
[11:56] Vincent.Sylvester @hg.zetaworlds.com:8002: I mean there is also the matter of the more you stuff into the timer event the slower that will be overall and it only restarts the count once the event has concluded not when it is fired
[11:56] Andrew Hellershanks: When I wrote a routine to determine pulses per second I took in to account that the time between calls might not be 1 second. I took the pulse count and divided by the actual passage of time since the previous call.
[11:57] Vincent.Sylvester @hg.zetaworlds.com:8002: Like if you want something to run twice a second don't stuff a one-liner in there doing ten things, put ten lines all doing one thing, reducing the amount of "subroutines" so to speak
[11:57] Andrew Hellershanks: Heading out, Kayaker?
[11:58] Vincent.Sylvester @hg.zetaworlds.com:8002: In the end you are just applying tricks and workarounds though, accurate timing is a billion dollar industry for the stock markets around the globe, little ole OpenSim won't give them a run for their money any day soon
[11:58] Kayaker Magic: Not me! Someone landed on my head though...
[11:58] Gavin.Hird @grid.xmir.org:8002: there are all kinds of stalls in the viewer depending on what else is happening, so I guess it cannot deliver accurate timing
[11:58] Andrew Hellershanks: oh, ok. It looked like you were standing.
[11:59] Kayaker Magic: Welcome Dennis!
[11:59] Kayaker Magic whispers: You are an hour late for the meeting!
[11:59] Andrew Hellershanks: Is there no way to know what the actual time was then compare that against what time it is now? It may not be one second. It might be 1.04 seconds. Timing can be accurate if you use the actual time between calls.
[12:01] Vincent.Sylvester @hg.zetaworlds.com:8002: You can get accurate times in larger measures, just below say 10 seconds you run out of digits before the comma
[12:01] Andrew Hellershanks: I haven't dug in to the portion of code that deals with time passage. I might do that if I can get free of some other work I need to be doing.
[12:02] Gavin.Hird @grid.xmir.org:8002: the viewer has timing code in llcommon/llfasttimer.cpp/h
[12:02] Gavin.Hird @grid.xmir.org:8002: because you also have llcommon/llframetimer.cpp/h
[12:02] Andrew Hellershanks: Gavin, ty. I'll have to look for the equivalent in OS.
[12:02] Vincent.Sylvester @hg.zetaworlds.com:8002: I suppose one could internally track if the event gets out of sync and reschedule it similar to testing whether the reported timer event happened at modulo zero of set time or not, but that adds complexity which means less overall speed
[12:03] Gavin.Hird @grid.xmir.org:8002: and llcommon/llheartbeat.cpp/h
[12:03] Vincent.Sylvester @hg.zetaworlds.com:8002: When you need to run things every minute you generally don't care much for a few seconds
[12:03] Andrew Hellershanks: Timing used to be a bit more accurate than it is now. It is something that I've noticed and affects something I was working on so I may have to dig in to it.
[12:04] Andrew Hellershanks: Vincent, no but when you are doing things based on time such as things being moved about via KFM it matters.
[12:05] Vincent.Sylvester @hg.zetaworlds.com:8002: Again that comes down to the lower the interval time the worse it gets
[12:05] Andrew Hellershanks: I just noticed we are at the top of the hour. Any one have a question they want to ask who may need to be leaving soon?
[12:05] Andrew Hellershanks: Vincent, not if it is done right.
[12:05] Vincent.Sylvester @hg.zetaworlds.com:8002: Also tweaking the code in the event itself to be less heavy so the event can conclude quickly
[12:05] Andrew Hellershanks: Code should not assume that it is being called once per second. It should check how much real time has elapsed between calls and act accordingly.
[12:05] Gavin.Hird @grid.xmir.org:8002: it probalby isn't, Andrew
[12:06] Andrew Hellershanks: Gavin, perhaps not. I'm just taking educated guesses as to the cause(s) of the issues I'm seeing.
[12:07] Gavin.Hird @grid.xmir.org:8002: sure
[12:07] Vincent.Sylvester @hg.zetaworlds.com:8002: The problem is changing it to be more accurate most likely means heavier code internally which then means timers are worse for region performance as they already are, which in turn means less usage and potentially folks going to while sleep which has a host of other issues
[12:08] Jagga Meredith: *is getting recursive headache*
[12:08] Vincent.Sylvester @hg.zetaworlds.com:8002: I mean I guess could always to a ossl variant that uses some atomic clocks or something heh
[12:08] Andrew Hellershanks: No, it doesn't have to be much heavier. It really is about how the code determines how much time has passed.
[12:08] Jagga Meredith: GPS time
[12:09] Kayaker Magic: Between the server, the internet and the viewer, I just always assume timers will NEVER be accurate and code accordingly.
[12:11] Andrew Hellershanks: For example, If you could get the number of clock ticks that have passed since the last time your code ran and you know how many clock ticks there are per second then you would know if it has been one second since the last time your code ran. If there are more, or less ticks, than the number for one second you can take that into account.
[12:12] Andrew Hellershanks: There might still be some slippage but overall that is a simple way to keep track of the passage of time.
[12:12] Jagga Meredith: you're assuming instantaneous delivery of "clock ticks"
[12:12] Gavin.Hird @grid.xmir.org:8002: and that clock ticks are a constant
[12:12] Vincent.Sylvester @hg.zetaworlds.com:8002: You know that sounds fine in writing but in code that's a different story
[12:13] Andrew Hellershanks: Clock ticks at the system level should be a constant or you have some serious problems.
[12:13] Gavin.Hird @grid.xmir.org:8002: yes for realtime clocks
[12:13] Gavin.Hird @grid.xmir.org:8002: but cpu clock is not constant
[12:13] Jagga Meredith: ...like other stuff happening at server level
[12:16] Andrew Hellershanks: You do need to use a reliable clock source. I've done it on embedded systems without any special hardware. .
[12:16] Ubit Umarov: i spoke about current kfm and timing issues on several meetings already so, not doing it now
[12:18] Andrew Hellershanks: Ubit, I know you said you had made some changes to the code. I just know that the timing isn't as accurate now as it used to be.
[12:20] Andrew Hellershanks: It is getting nearer half past the hour. Any other topics for today before we wrap up todays meeting?
[12:21] Andrew Hellershanks: If there is nothing further that will be it for this week.
[12:21] Andrew Hellershanks: Thank you all for coming. See you again next week.