User:Zero Linden/Office Hours/2007 May 10

From Second Life Wiki
Jump to: navigation, search

Transcript of Zero Linden's office hours:

[7:31] Zero Linden: hello all
[7:31] Laetizia Coronet: afternoon Zero
[7:31] Harleen Gretzky: Hello Zero :)
[7:32] Yu Ferraris: hello, Zero
[7:33] Rex Cronon: hello everybody
[7:33] Yu Ferraris: do you support users here??
[7:34] Zero Linden: Not exactly - this is my "office hours", where I talk about the engineering behind SL
[7:34] Zero Linden: It is not a place to get help, or to submit support requests
[7:34] Yu Ferraris: oh, i see.
[7:34] Rex Cronon: zero, when will the transcript from tuesday be available?
[7:34] Zero Linden: It is a place to ask about things like scaling plans, database design strategies, messaging infrastructure.... etc...
[7:35] Zero Linden: Rex - er, uhm, soon ish.....
[7:35] Laetizia Coronet: right... well have a good one then, that's not my topic :)
[7:35] Laetizia Coronet: c-ya!
[7:35] Rex Cronon: bye
[7:35] Yu Ferraris: ok, thank you. I just wanted to ask why my credit card info is pending for a week
[7:36] Zero Linden: Sorry, not the right forum - I couldnt' answer that anyway -- I can code C++, but don't know anything about accounts!
[7:36] Yu Ferraris: ok, thank you=)
[7:37] Rex Cronon: have there been any changes to the havoc engine?
[7:37] Zero Linden: not yet...... Rex, not yet....
[7:37] Milarkus Bonetto: Zero, do you know if "chat lag" is displayed by the lag around the individuals who are messaging? Or is it just a representive of server lag?
[7:37] Rex Cronon: objects that use llvolumedetect seem to no longer pass through other objects
[7:38] Harleen Gretzky: That was a bugged they fixed
[7:38] Zero Linden: chat lag is a great topic - let's discuss that in a moment
[7:38] Zero Linden: https://wiki.secondlife.com/wiki/User:Zero_Linden/Office_Hours/2007_May_08
[7:38] Zero Linden: there - last session is now up on the wiki
[7:39] Khamon Fate: backward
[7:39] Khamon Fate: shows
[7:39] Khamon Fate: it
[7:39] Khamon Fate: sometimes
[7:39] Rex Cronon: good :)
[7:40] Wyn Galbraith holds real still to see if she gets to stay.
[7:40] Khamon Fate executes a drumroll
[7:40] Wyn Galbraith: Ok, I think I'm stable.
[7:40] Zero Linden: okay - let's get started
[7:40] Rex Cronon: interstin hat wyn:)
[7:40] Wyn Galbraith: Gets more and more challenging to get here Zero ;)
[7:41] Wyn Galbraith: Thanks, it's to protect my head from the Cannon Flower Seeds.
[7:41] Rex Cronon: lol
[7:41] Zero Linden: Hmmm... didn't seem to bad for me this morning
[7:41] Zero Linden: Okay - chat lag
[7:41] Zero Linden: and why it shows up backwards
[7:41] Zero Linden: all Yoda like
[7:41] Wyn Galbraith: I'm having display problems again.
[7:41] Zero Linden: and stuff!
[7:42] Zero Linden: oh - as always - speak on the record - it's all going in your permenent file...... er, no, in the wiki!
[7:42] Milarkus Bonetto: Yay!
[7:42] Zero Linden: okay - why does chat lag?
[7:42] Zero Linden: here's the path chat takes:
[7:42] Khamon Fate: How thick is Jarod's file?
[7:42] Zero Linden: viewer -> sim via UDP
[7:42] Zero Linden: sim must process the chat:
[7:43] Zero Linden: distribute it to all the other avatars
[7:43] Zero Linden: and put it in the queue of any scripts listenting on channel 0
[7:43] Khamon Fate: That seems straightforward.
[7:43] Zero Linden: then each chat message goes from sim -> viewer via UDP
[7:43] Zero Linden: So notice that there are two UDP trips involved
[7:43] Milarkus Bonetto: Seems logical-for-lag.
[7:44] Rex Cronon: does it also have to compute the distance between source and listeners?
[7:44] Zero Linden: these messages are sent "reliable", which means that our own messaging system will attempt to resend the message
[7:44] Wyn Galbraith is still asleep, "UDP?"
[7:44] Zero Linden: if it doesn't get an acknoweldgement with some period of time
[7:45] Wyn Galbraith: I've had IM do the Yoda thing too.
[7:45] Zero Linden: Our messaging system doesn't enforce ordered delivery (just as the UDP system it is built on)
[7:45] Khamon Fate: But aren't y'all upgrading that to tpc-wrapped LLSD?
[7:45] Zero Linden: so first off, when you chat two lines
[7:45] Milarkus Bonetto: It's happened in all messaging, I believe.
[7:45] Zero Linden: say the first gets fired off to the sim while there is some routing issue
[7:45] Zero Linden: so that UDP packet , and your first line are lost
[7:46] Zero Linden: then you fire off a second line - but now the routing hiccup is cleared
[7:46] Zero Linden: so the second line gets through
[7:46] Zero Linden: after about 15 seconds (or so.... not sure the actually retry time) the message system on your viewer says - "hey, the first packet wasn't ack'd"
[7:46] Zero Linden: and so sends the first line again - which now goes smoothly
[7:46] Zero Linden: and hence
[7:46] Zero Linden: like Yoda
[7:46] Zero Linden: you talk
[7:46] Zero Linden: clear?
[7:47] Wyn Galbraith: Thought that was the case I did. ;)
[7:47] Zero Linden: Of course - bah! - there are TWO UDP channels here, so two places to have this happen
[7:48] Zero Linden: And also, like real life, global ordering of events is an illusion: different AVs may get the chat in different orders
[7:48] Wyn Galbraith: Not the path so much, as I didn't know that till now, but that there was some hiccup between one line and the next. I've seen that elsewhere before.
[7:48] Zero Linden: What's most frustrating about this is that it could have NOTHING to do with lag or server load
[7:48] Zero Linden: it could be any of the internet links on the bath between viewer and simulator
[7:48] Zero Linden: *path
[7:48] Milarkus Bonetto: Pain inspiring!
[7:48] Zero Linden: And hiccups like this happen often - packets get dropped
[7:49] Hiro Market: any stats on how often it happens?
[7:49] Zero Linden: no- as from the simulator point of view, it can't tell!
[7:49] Zero Linden: it just sees two packets arrive -
[7:49] Zero Linden: or it just sends them....
[7:49] Zero Linden: well, we could see stats on retry send
[7:50] Zero Linden: of course - what's worse, is that the reordering can take place in the network itself
[7:50] Zero Linden: IP has not ordering
[7:50] Zero Linden: routers reorder packets all the time
[7:50] Wyn Galbraith: Is UDP=Universal Datagram Protocol?
[7:50] Zero Linden: By the way, this is EXACTLY the same problem as when you are editing an object, and suddenly it snaps back to a prior position or texture setting
[7:51] Zero Linden: "User Datagram Protocol"
[7:51] Zero Linden: http://en.wikipedia.org/wiki/User_Datagram_Protocol
[7:51] Wyn Galbraith: Ah... Thanks.
[7:51] Wyn Galbraith: Well I had two to choose from and chose the wrong one
[7:51] Rex Cronon: why doesn't the viewer at least when builing things force the user to wait for acknoledgement until the user can make any more changes to the object?
[7:52] Zero Linden: Because then the user expereince is VERY VERY jerky and unpleasent
[7:52] Zero Linden: alas, the round trip time for the average user is still way too long for a smooth feedback experience
[7:53] Rex Cronon: but is even worse when u work on something than it snaps back
[7:53] Zero Linden: well - it's a trade off, eh? Do you want ALL of your building to be a little painful, or an occasionally bigger pain?
[7:54] Zero Linden: In the end, this isn't worth making this tradeoff
[7:54] Zero Linden: we'll just move things like chat and building to ordered protocols
[7:54] Milarkus Bonetto: Why, if a physical object is dropped onto another physical object from a very close height, it penetrates the other object like it was phantom? And, if it is dropped from high above the other physical object, why does it stay inches above it when it lands?
[7:54] Rex Cronon: maybe the user can flip a switch that tells viewer how to do thing?
[7:55] Zero Linden: Rex - indeed - the message liberation plan has a file that lets one switch each message either way!
[7:55] Zero Linden: but we'll control the simulator side, thanks....
[7:55] Wyn Galbraith thinks a occassional big pain is better than continuous little pains.
[7:55] Zero Linden: M. - I'm not sure I can answer that exactly - but I have a hunch
[7:56] Rex Cronon: it relative to builder and what the builder is making wyn
[7:56] Zero Linden: let's hold that for a minute and I'll get to it
[7:56] Zero Linden: oh - well, seems we're done with chat ordering....
[7:56] Zero Linden: so
[7:56] Zero Linden: onward
[7:56] Zero Linden: the phyics bizarness
[7:57] Zero Linden: (hmmm... can't spell this morning)
[7:57] Rex Cronon: due to no collison detection on the viewer
[7:57] Zero Linden: When an object is built for physics, it is an approximation of what you see in the viewer
[7:57] Zero Linden: the viewer's geometry builder is much more accurate than the one for physics
[7:58] Zero Linden: this is because physics simulations get exponentially harder with more complex volumes
[7:58] Zero Linden: So - two plain cubes should intereact in physics as you expect
[7:58] Zero Linden: but other shapes, especially if they are cut, twisted, hollowed, etc....
[7:59] Zero Linden: will behave in physics differently than as you might expect
[7:59] Zero Linden: even in the case of simple geometry
[7:59] Zero Linden: remembr that physics simulation is a very imperfect art
[7:59] Milarkus Bonetto: Well, even with cubes nowadays, they just penetrate each other.
[7:59] Can't enable physics for objects that interpenetrate others
[8:00] Milarkus Bonetto: If they do not, I stand corrected.
[8:00] Milarkus Bonetto: And that's the other problem, there.
[8:00] Zero Linden: why look at that!
[8:00] Zero Linden: that is pretty bad!
[8:00] Hiro Market: presumably the cube is sperical in physics space
[8:00] Can't reposition -- permission denied
[8:01] Zero Linden: nope - shouldn't be
[8:01] Rex Cronon: oh, why when a moving and rotating physical object hits an obj/av, does it send that obj/av either -2mill uderground or high in the sky?
[8:01] Zero Linden: I'm contacting a dev with more physics expereince
[8:01] Zero Linden: AVs are modeled as cylinders to the physics engine, and the attachements don't count
[8:02] Zero Linden: so - physical interaction with a seemingly big AV that is really all attachments can be quite different (as the actual AV is usually tiny) than other AVs
[8:02] Hiro Market: i find it remarkable how little physics - or the lack of it in most cases - impacts world experience
[8:02] Rex Cronon: u drop a rotating obj on a avatars head, and they go flying, and something borks their attachments
[8:03] Zero Linden: that's one aspect
[8:03] Zero Linden: well, angular momentum is often surprizing, I've found....
[8:03] Chaley May: flatten them and see if the distance remains the same?
[8:03] Zero Linden: but I agree that it seems very hard to predict and control
[8:03] Zero Linden: good experiment!
[8:04] Rex Cronon: how can impact affect the scripts in the attachments?
[8:04] Milarkus Bonetto: Nowadays, if you enabled physics for everything, almost all of SL would look like it got hit by a tornado.
[8:04] Zero Linden: can't - unless they are doing things based on position and can't handle the distance moved
[8:06] Zero Linden: alas - this is too early for most of LL - they aren't in yet
[8:06] Rex Cronon: so if av moves like 2mill high, and only if the attachments use llsetpos, only then are the attachments affected by colllisions?
[8:06] Zero Linden: so I'm not getting any responses to my physics questions
[8:07] Zero Linden: no - I'm just saying that moving an AV doesn't directly affect the scripts
[8:07] Zero Linden: I could imagine that there are scripts in attachements, based on location that maybe weren't coded to handle such a transition of position
[8:08] Zero Linden: also - thinks like AV state (walking, flying falling, etc...) may change unexpectedly
[8:08] Zero Linden: okay - well, physics changes I was unaware of will have to be tabled to next time -- as I can't get an answer out of anyone this early
[8:09] Rex Cronon: for example if u get hit by one of thse rotating things, while holding a gun in your hand, the gun postion changes, and when u tp to ground, sometimes u r invisible
[8:09] Milarkus Bonetto: Well, I'm going to go now.
[8:09] Milarkus Bonetto: Bye, everyone.
[8:09] Rex Cronon: bye
[8:10] Zero Linden: Rex - don't know about that - though the gun position changing just sounds like the other existing - TP and sometimes your attachements are moved
[8:10] Zero Linden: bug
[8:10] Wyn Galbraith: So long.
[8:11] Chaley May: Why is are sims limited to only 256x356 in size? Wouldnt it use up less load to actually make sims bigger so people can spread out their builds which would mean that there would be less prims in range all over?
[8:11] Chaley May: *256x256
[8:11] Zero Linden: Chaley -
[8:11] Zero Linden: great question
[8:11] Rex Cronon: oh, and somtimes these rotating things, when are colliding with something, can crash a sim
[8:12] Zero Linden: Rex - physics bug are legion....
[8:12] Zero Linden: Yes, if we increased the size of a region and kept the number of prims the same...... or reduced the number of prims for the same sized region
[8:12] Zero Linden: then it might stand to reason that, on average, there would be fewer prims in a given viewer's field of view
[8:13] Zero Linden: and therefore frame rates would be higher
[8:13] Chaley May: and people could build nice racetracks with a lot more size
[8:13] Zero Linden: which in turn might (might) reduce server load a little bit due to having to send less geometry to each viewer
[8:13] Zero Linden: BUT
[8:14] Zero Linden: there are two things that will probably invalidate that hypothesis
[8:14] Hiro Market queries what the spec of a class 3 and class 5 servers are again - cpu
[8:14] Zero Linden: first - people can already affect how much they see, hence how much is downloaded to them, and hence their frame time, but changing their draw distance
[8:14] Zero Linden: there is a good change that people would just increase their draw distance in those cases
[8:15] Zero Linden: second - builders like a certain density - they already buy extra land to keep it clear, and bunch up the prims elsewhere
[8:15] Zero Linden: there is a certain level of visual detail that must exist for a build to feel "real"
[8:15] Wyn Galbraith has done that.
[8:15] Zero Linden: and so, these techniques would be used in the cases above, resulting in the same number of objects in view on average
[8:15] Zero Linden: probably...
[8:16] Zero Linden: Lastly,
[8:16] Chaley May: which will hopefully change with scultped prims :)
[8:16] Zero Linden: a certain density achieves a certain sense of "liveness" to the world
[8:16] Wyn Galbraith notes that sometimes sims have too much density.
[8:16] Zero Linden: I don't think we can say that we scientfically know the right number, but I think SL has evolved over time to find the sweet spot
[8:17] Rex Cronon: sculpted prims will mostly be used to make fancier wigs:)
[8:17] Zero Linden: Of course - anyone is free to buy larger land, and just not use all the prims (though that is like having a full cookie jar and only eating one...)
[8:18] Zero Linden: Rex - have you been in the beta grid?
[8:18] Chaley May: I think if there was more land then it would benefit all.. especially those with only 512 plots.. its hard to get a house and garden on a plot that small but the amount of prims is plenty
[8:18] Rex Cronon: so how exaclty is llvolumedetect supposed to work now?
[8:19] Rex Cronon: yes i have been to the beta
[8:19] Zero Linden: Chaley - I agree that 512 sq. m. plot is very cramped --- buy a bigger one! Afterall, you wouldn't buy a smaller one, would you?
[8:19] Zero Linden: I realize that there is a matching of 512 size with the premium account -
[8:20] Wyn Galbraith sucks up the 16spm plots in her sim when she can, joins them together and makes little sitting parks.
[8:20] Zero Linden: That is more a community issue, but I think that that size is not intended to be anything more than a good starter size
[8:21] Chaley May: another plot of land is very expensive.. people pay what they can afford and it would be nice to think that even the poorest can afford a decent amount of land that would be big enough to live on
[8:21] Zero Linden: And... I'm sure you'll find builders here who think 114 prims for a house and furniture is WAAAAAY cramped!
[8:21] Rex Cronon: of course is cramped
[8:21] Harleen Gretzky: Why did they choose 15,000 instead of some multiple of 2, like 16384?
[8:21] Zero Linden: Chaley - I agree, but again, I think that is more of a community issue - after all - there are those too poor to pay premium.....
[8:22] Rex Cronon: people don't like just walls, floor and a ceiling
[8:22] Zero Linden: Harleen - I have no idea why 15,000 vs. 16,386 --- I know that the number derives from calculations on how quickly we could send the prim info to the viewer
[8:22] Zero Linden: and the need for certain density
[8:22] Wyn Galbraith: I've started building parklike on the surface of the land and build the buildings in the sky. I call it beautify SL ;)
[8:22] Zero Linden: BUT - even with such calcs, there was a fair bit of uncertaintly and so a round number was picked
[8:23] Harleen Gretzky: seems it would make calulations easier since teh land sizes are powers of 2
[8:23] Zero Linden: Frankly, the power of 2 based numbers that exist within SL are inhuman and are unfortunate in my view
[8:23] Harleen Gretzky: lol
[8:23] Zero Linden: try explainig land to people - numbers like 1024 and 4096 just don't roll off the tounge
[8:24] Wyn Galbraith: They do mine, due to coverting from hex/oct to dec.
[8:24] Rex Cronon: u could say 1k or 4k:)
[8:24] Hiro Market: but 16 is a round number :-)
[8:24] Wyn Galbraith: 0 is a round number
[8:25] Zero Linden: Right - these numbers are all round and common for folks like use, used to working with computers
[8:25] Zero Linden: but for most people in SL
[8:26] Chaley May: For those that own an island is there a server dedicated to just them or does a server host more than 1?
[8:26] Zero Linden: thinking about 15,000 objects per region and the size of plots, and tier levels, would be MUCH easier if it were all on powers of 10
[8:26] Zero Linden: not 2
[8:26] Hiro Market: on the size, prims etc front, is there any stategy for what changes as computing power increases - say in 3 years time when each simulator is theoretically 10x faster than now
[8:26] Harleen Gretzky: Computers like powers of 2 though
[8:27] Zero Linden: Folks - one of the phsyics engineers is saying that nothings has changed and my two cube experiment has been that way for a long time
[8:27] Zero Linden: anyone have a build that counters that?
[8:27] Hiro Market: well slightly longer on moore's law, but the idea holds
[8:28] Zero Linden: I don't make plans three years out that specific - it is too much crystal ball gazing
[8:28] Zero Linden: BUT
[8:28] Zero Linden: that said, I think three years out we should see a SL where there are different simulators running on the grid - and hence different abilities in different regions
[8:29] Zero Linden: one can easily imagine regions run on sims with more CPU dedicated and hence more objects - though again - remember that the big bottle neck is how fast you can get that stuff down to the viewer
[8:29] Zero Linden: so it isn't clear under what circumstances you'd want to run a sim that way...
[8:29] Wyn Galbraith can't wait to see what IBM's nanoholey chip does to the industry.
[8:30] Zero Linden: Chaley - when you buy a region - your region gets a full dedicated CPU and an allocation of RAM and disk...
[8:30] Rex Cronon: it will make decription very, very, very easy
[8:30] Zero Linden: But, whcih CPU is running it changes - as we treate the simulator hosts as a server farm - any machine can pick up any region needing to be run
[8:31] Zero Linden: that way when the hosts break, regions can just come up on someother host
[8:31] Wyn Galbraith cools.
[8:31] Chaley May: are mainland regions like that too.. 1 CPU per region?
[8:31] Zero Linden: (and at approaching 3k simulator hosts.... there are serveral that die each day....)
[8:31] Zero Linden: Chaley - yes, except "void" regions - the all water regions - those are 1/4 CPU
[8:32] Zero Linden: (and you can buy those for your estate too, if you like)
[8:32] Zero Linden: lastly - remember we now buy 4 CPU machines - so a single physical servier machine is running four regions usually
[8:32] Wyn Galbraith: The underwater regions?
[8:32] Hiro Market: cpu spec on class 3 or 5 machines again?
[8:32] Hiro Market: sorry if i missed it
[8:32] Zero Linden: Wyn - the regions that are like the connecting ocean between the mainland and the atol - or the center of the mainland's big lakes
[8:33] Wyn Galbraith: I was actually looking to buy underwater regions when I started looking for land.
[8:33] Zero Linden: Right -the CPU class encodes, among other things, the number of CPUs on that hardware
[8:33] Wyn Galbraith: I couldn't find any for sale.
[8:33] Zero Linden: but really - number of CPUs on the machine isn't a good metric - I'd rather have my region on a 4 CPU class 4 or 5 than a single CPU class 2
[8:35] Zero Linden: class 3s are 2 CPUs / box
[8:35] Chaley May: What about space?? we can build pretty nice spaceships but not do anything with them.. Is there any way that linden could make a few hundred meters available to place objects at say 100,000m where its all dark?
[8:35] Rex Cronon: btw zero, i would go more often to the beta if there was a sim for testing weapons, or for fighting(and others would do that too)
[8:35] Zero Linden: this region, for example is on a class 3
[8:36] Wyn Galbraith has asked about sim space.
[8:36] Chaley May: oh really.. i msised lol
[8:36] Zero Linden: Well - sure, it is possible, but it isn't going to be high priority right now
[8:37] Zero Linden: Though I did hear Qarl say that custom sky boxes (meaning the geometry that makes up the sky, not those things you put at 700m for, er, well, you know...)
[8:37] Zero Linden: were on his radar -
[8:37] Zero Linden: and that would allow a region owner to create a region that was pretty convincing outerspace
[8:38] Zero Linden: well all - our hour is up
[8:38] Wyn Galbraith: I must have missed that. That would be great.
[8:38] Wyn Galbraith: Yeah the sun has come up
[8:38] Zero Linden: mind you - he didn't say he was working on it now... just something he thinks would be a big win
[8:39] Wyn Galbraith: I would be the first to jump in SecondSpace ;)
[8:39] Zero Linden: "We've talked the whole night through... so Good Morning, Good Morning to your...."
[8:39] Zero Linden: (name that film...)
[8:39] Wyn Galbraith: Ah darn.
[8:39] Zero Linden: Thank you all for coming...
[8:39] Wyn Galbraith: It's on the tip of my tongue.
[8:39] Zero Linden: OH
[8:39] Zero Linden: one last thing
[8:39] Chaley May: Space would be a huge thing for me
[8:40] Zero Linden: I have some personal news: I'm going to be a father again - and will be taking about a month off soon
[8:40] Rex Cronon: congratulations zero
[8:41] Zero Linden: If you all like, I'll start looking for a guest Linden to take these spots.... or I might just suspend them for a month
[8:41] Chaley May: Congrats... We need more Lindens I think :)
[8:41] Zero Linden: Thank you Rex
[8:41] Hiro Market: crack the virtual champagne - congrats
[8:41] Harleen Gretzky: Congrats Zero
[8:41] Wyn Galbraith: Congratulations. I'm about to become a grandmother again.
[8:41] Zero Linden: Wonderful.... Wyn!
[8:41] Wyn Galbraith: At least this one will be in the Bay Area so I can steal her now and then ;)
[8:41] Zero Linden: My oldest is only 5... so that milestone is a ways off for me
[8:42] Wyn Galbraith: I'd give away my age if I told you how old my oldest is... I have one left in the nest, he'll be 18 in December.
[8:42] Hiro Market: my daughter plays sl on the teen grid and loves it
[8:42] Wyn Galbraith has 6 children.
[8:42] Chaley May: This is my first time.. these Linden Hours are a good idea i was totally angry at no way to talk to Lindens before i came here lol
[8:42] Wyn Galbraith: Three grandchildren with one on the way making it four.
[8:43] Zero Linden marvels at how Wyn does it
[8:43] Zero Linden: Allrightly
[8:43] Wyn Galbraith: Do you have the link for the calendar Chaley?
[8:43] Zero Linden cues exit music
[8:43] Wyn Galbraith: I don't know Zero.
[8:43] Chaley May: I do now :)
[8:43] Wyn Galbraith: Just did it.
[8:43] Zero Linden: till later
[8:43] Rex Cronon: u must never have a dull moment wyn:)