SL project updates 2015 week 3/2: SBUG and TPV; texture thrashing

Salt Water; Inara Pey, December 2014, on FlickrWith Love in Her Heart, Sounds of Silence (Flickr) – blog post

The following notes are taken from the Server Beta User Group (SBUG) meeting held on Thursday, January 15th, 2015, and the TPV Developer meeting held on Friday, January  16th. A video of the latter is included at the end of the article (my thanks as always to North for recording it and providing it for embedding), and any time stamp contained within the following text refer to both it and the TPV Developer meeting.

Server Deployments – Week 3 Recap

  • There was no Main (SLS) channel deployment on Tuesday, January 13th.
  • On Wednesday, January 14th, all three RC channels received the same server maintenance package comprising: a fix for BUG-8002 “Experience Tools Allowed & Blocked experiences are lost with parcel subdivision”; crash mode fixes and avatar-related region crossing code clean-up related to “clean-up and polishing” rather than to performance improvements.

SL Viewer

The Experience Tools RC viewer was updated to version 3.8.0.298091 on January 15th, bringing it up to parity with the current release viewer (the HTTP pipelining release).

[00:15] There is a new maintenance release candidate viewer that is being queued-up for the viewer release channel.

Otherwise, LL viewers remain as per the download and Alternate Viewer wiki pages, and my Current Viewer Releases page.

Tool Chain

[09:52] The Lab now has both Windows and Mac versions of the viewer building successfully using the new tool chain (which among other things, used Visual Studio 2013 for Windows and xcode 6 for Mac), and may be “pretty close” to achieving the same with Linux, although that is still to be determined.

It is anticipated that project viewers using the new build process will start to appear soon, and the process gradually be applied to RC releases and the viewer release itself, but only after full regression testing has been undertaken to try to ensure there are no hidden issues remaining.

This work does potentially make it easier for the Lab to start producing 64-bit versions of the viewer, but there are currently no detailed plans for them to start doing so at this point in time.

Experience Key Tools

[01:20] The initial release of the Experience Tools is still on the horizon, with the release candidate viewer currently the only RC in the pipeline, and which has no further viewer-side changes waiting to be implemented (which doesn’t automatically mean it will be promoted to release status next). However, the Lab is still working on some back-end issues which must be fixed before the key can be turned and the capabilities formally released.

Group Chat

[01:24] The lab is continuing to push out changes intended to make group chat more robust. While happy with the overall improvements that have been made to performance in terms of reducing the noticeable amounts of group chat lag, the problems to the chat servers locking-up every so often and requiring a restart are still being worked on. Additional testing is continuing, and Oz linden indicates that the Lab aren’t about to give up on getting to the bottom of things.

Z-offset Height Adjustment

Vir Linden
Vir Linden: working on the z-offset height solution

[02:52] This is intended to provide a means of on-the-fly adjustments to be made to an avatars height above the ground / objects and which can be used whether the avatar is standing or sitting, without the need to use the current Appearance hover slider. It will work in a manner similar to the old z-offset height adjustment found in some TPVs, and will likely comprise a slider access through the avatar right-click context menu. As well as working for individual avatars, it is thought the capability will also work against thinks like couples poseballs for dancing, although this has yet to be tested.

Vir Linden, who has been working on the project reports that the capability is now to be persistent across logins on a per-account basis (so you will be able to set it for each of your accounts, and have the viewer remember the setting for those accounts, rather than having a global setting in the viewer applicable to all accounts using that viewer).

The viewer code is about to go through internal QA testing with the Lab, and the hope is that it will appear as a project viewer during week 4 (week commencing Monday 19th January). This will be available for testing the capability on Aditi (the beta grid), where a number of regions have been set-up on channel DRTSIM-274 (notably regions Hover1 and Hover2). The project viewer will be released with notes on how to use it, and people will be invited to tes it both on these regions with the necessary server-side support and on regions without the server support (and when moving between the two), with a request that any issues found are reported via the JIRA.

Assuming no major issues are found, the server-side changes are already in the queue for release onto Agni (the main grid), and the viewer code will hopefully rapidly progress to RC status as well.

[05:21] A further server-side update which is forthcoming and will assist with this testing is the avatar attribute testing fix, about which I reported in part 1 of this update.

Continue reading “SL project updates 2015 week 3/2: SBUG and TPV; texture thrashing” →

SL project updates week 49/3: TPV Developer meeting and VMM

The following notes are drawn from the TPV Developer meeting held on Friday, December 5th, as shown in the video below. Where relevant, timestamps are included in the article to allow for referencing to the video. My thanks as always to North for the recording.

SL Viewer

[00:30] The Benchmark viewer RC, containing the fix for the crash-on-start-up issue (see BUG-7776, BUG-7783), version 3.7.22.297128, was promoted to the de facto release viewer on Friday, December 5th – release notes.

[21:15] One change that has come from the move away from the GPU table to benchmarking is that GPUs that may have been previously blocked (e.g. because they simply aren’t supported) are no longer blocked. This is because the Lab is no longer attempting to spend time on identifying GPUs that don’t work with SL. Instead, best efforts are made on the basis of the data obtained from testing a system’s GPU and applying the Lab’s own heuristics, but if a card doesn’t work with SL, the view being taken is that – it doesn’t work. A suggestion has been made where this is the case to provide some kind of feedback to the user informing them that their GPU cannot support SL.

[01:10] Data from the HTTP Pipelining RC, version 3.7.21.296736, is still being being studied; however, it may not progress to release status. Whether this means further updates may be made or not prior to the viewer progressing further, isn’t clear.

[01:30] The Attachments RC, version 3.7.21.296904, was withdrawn from the release channel on Wednesday, December 3rd, after being merged with the Maintenance release RC, 3.7.22.297131. However, the repository for the viewer which contains just the attachment fixes is being kept open for the time being to allow those TPVDs who wish to cherry-pick the fixes and incorporate them into their viewers.

[02:15] It is anticipated the the Experience Tools project viewer (currently version 3.7.16.293901) and the Viewer-managed Marketplace viewer (currently version 3.7.21.296858) will both be moving to release candidate  status “soon”.

Tool Chain Update

[13:24] The Lab is now “very close” to being able to build on both Mac (e.g. Xcode 6.1. with clang on Yosemite) and Windows (e.g. Visual Studio 2103) with the new Autobuild process “cleanly and with all the right stuff”.

[16:26] Linux is lagging well behind Windows and Mac in terms of the new tool chain, and the Lab welcomes any help TPV developers are willing to provide to help get it updated. In the meantime, it looks likely that the Windows and Mac versions of the viewer built using the new tools and process will start to be deployed once everything is ready, rather than being held-up while the Linux version of the viewer is brought up to speed.

CDN Update

[02:45] The Lab is continuing to “play with” how the CDN is working, making tweaks and changes, some of which have helped Highwinds make improvements to the service, and monitoring of the service is continuing. Thanks is again expressed to all those users who have helped the Lab pin-down issues.

Viewer-managed Marketplace

If you're a merchant or creator using the SL Marketplace, and haven't already done so, you might want to check-out the Viewer-managed Marketplace beta
If you’re a merchant or creator using the SL Marketplace, and haven’t already done so, you might want to check-out the Viewer-managed Marketplace beta

[03:20] Testing of the new Viewer-managed Marketplace (VMM) functionality is continuing on Aditi.

Various issues have been logged against the project, and the Lab has been addressing them. The testing facilities on Aditi will remain available through the holiday season to January – although, as noted above, the viewer may move from project to RC status in that time.

Beta testing is still very open to anyone with an interest in trying VMM out for themselves – particularly content creators and merchants who use the SL Marketplace, obviously. If you haven’t already availed yourself of the opportunity, the Lab encourages you to do so over the holiday period. Note that you must have the VMM project viewer and be on the VMM regions on Aditi in order to do so – see my VMM beta test and viewer overview.

In-world Meeting

Also, merchants and content creators should note that the Commerce Team is liable to hold a meeting to discuss VMM in the near future. This will mostly likely be held on Aditi, and Brooke Linden is organising it. So please watch for notice of the meeting via the forums, blogs, etc.

Avatar Z-offset Height Adjustment

[11:11] No major news here, other than “work is continuing”.

Other Items

Wiki Editing

[14:27] In October, the SL Wiki was made read-only (editable by LL staff only) while it underwent maintenance, and has remained that way since. However, updates are now being tested, and it is hoped that the wiki will be unlocked to allow users to edit (where applicable) soon.

Viewer Stats and GPU Frame Rates

[17:24] Some stats on viewers are being to be produced for TPVs once more, related to operating systems, and some have been produced (for the SL viewer) by GPU. This led to a request for the Lab to update an old Frame Rates by GPU table (bear in mind the table shown is very old, and doesn’t take into consideration a lot of more recent updates to SL which affect frame rates). This also came up at a recent Open-source development meeting, and Oz has passed a request onwards within the Lab to see if an updated for of the table could be produced.

Firestorm Release

The next Firestorm release is scheduled for 18:00 SLT on Wednesday, December 10th, 2014. This release will, among other things, include the group ban capability. I’ll have my usual review available when the viewer is issued.

SL project updates week 47/2: TPV Developer meeting

The following notes are drawn from the TPV Developer meeting held on Friday, November 21st, as shown in the video below, and from the Server Beta Meeting held on Thursday November 20th. Where relevant, timestamps are included in the article to allow for referencing to the video. My thanks as always to North for the recording.

SL Viewer

[01:10] RC and project viewers are starting to stack-up once more, and further viewers are on their way. The release channel currently has four RC viewers in it: HTTP Pipeline 3.7.21.296736; Snowstorm 3.7.21.296724; Maintenance 3.7.21.296734, and Attachments 3.7.21.296729.

HTTP Pipeline RC and Texture and Mesh Fetching

The HTTP Pipeline viewer appears to be performing better with the CDN than the current pipeline code for those encountering problems. However, further updates to the RC are likely before it reaches a release status.

[05:23] In general, texture and mesh fetching via the CDN continues to work well for most people, although the Lab are still investigating why it is not working so well for some. The hope is that further improvements will be forthcoming, but at the moment the work is still very much in progress.

Attachments RC Viewer

[07:55] Vir Linden has some further updates for the Attachments RC, which should help improve the predictability of getting the right appearance as you’re going through outfit changes. This work has been tested in a closed test viewer and the results are such that Vir hopes to pull them into the RC version of the viewer as soon as possible.

Benchmark Viewer RC

[02:33] A new Benchmark viewer (removal of the GPU table) should hopefully be released on Monday, November 24th (or shortly thereafter). This includes:

  • Further improvements to how the viewer initials sets graphics preferences for some GPU types
  • Address the crash-on-start-up issue which some users are encountering in the current release viewer (3.7.20.296094), and which appears to be related to the benchmark update.

Those wishing to try a pre-RC release can do so by downloading from here.

Viewer Build Tools

[30:19] The Lab is making progress with compiling the viewer using the new build tool chains. The performance issues that resulted when building the Mac viewer (again, see my week 43 report), appear to have been resolved.

The work to build the windows version of the viewer using Visual Studio (VS) 2013 is going “really well”, with the Lab having almost all the packages ready to go – so much so that Oz believes that the Lab will have a version of the viewer built using VS2013 in week 48 (week commencing Monday, November 24th) – although this doesn’t necessarily mean said viewer will be publicly available.

As Microsoft have just issued Visual Studio Community 2013, which allows developers to create applications for free, so long as they are not intended for commercial gain (and TPVs aren’t built to be sold), it is hoped at TPV developers will in future be able to builder their viewers with exactly the same software as the Lab.

In addition, the Lab is working on an internal wiki page for building with VS2103, which will likely go public when finished to sit alongside the existing wiki page on the new autobuild process.

Viewer-managed Marketplace

The Viewer-managed Marketplace (VMM) project viewer, version 3.7.21.296858, was released on Friday, November 21st, together with information on the open beta testing for VMM on Aditi. I have provided coverage of this via a separate article in this blog, see:Viewer-managed Marketplace: beta testing and a look at the project viewer.

Continue reading “SL project updates week 47/2: TPV Developer meeting” →

SL project updates week 45/3: TPV Developer meeting

The following notes are drawn from the TPV Developer meeting held on Friday, November 7th, and shown in the video above. Time stamps, where relevant, have been included for ease of reference to the video. Note that items are listed according to subject matter and not necessarily chronologically, so some time stamps may appear out-of-sequence in places. My thanks as always to North for the recording.

SL Viewer

Maintenance RC Viewer

[00:06] The Lab released a further maintenance viewer on Thursday, November 6th (although it didn’t reach the release candidates section on the alternative Viewers wiki page until Friday, November 7th). Version 3.7.20.296368 is a further maintenance release RC, offering a broad range of fixes for voice, privacy, rendering, texture animation, avatar distortion, inventory management, sounds, Mouselook in Mac, multiple UI fixes in script editor, Pay flow, chat, stats floater, edit menu, and so on. Follow the link above to the release notes. This viewer also includes a couple of the AIS v3 fixes as well.

Benchmark Viewer

The Benchmark RC viewer, which eliminates the need for a manually maintained GPU table in order for the viewer to initially set graphic options, looks set to be the next viewer that will be promoted to release status.

Viewer Build Tools

[01:36] As the Lab is primarily focused on completing the updates to the viewer build chain and tools. As has been previously reported, the Mac viewer can now be built using the new build process, but it isn’t performing as well as expected, so it is being looked into. The Lab still has yet to get the new windows build process up and running.

[33:08] This work also means that the Lab currently isn’t attempting to progressing getting 64-bit versions of the Havok libraries at the present time.

Group Chat

[02:15] As noted in part 2 of this week’s update, the Lab is continuing to poke at group chat.  Oz confirmed there are still “one or two” more rounds of changes to be made, and the overall, the Lab is “pretty happy” with what has been achieved thus far. The Firestorm team, who perhaps have one of the most active of groups with a large number of users in their English Support group, have noted a substantial increase in group chat performance.

Z-offset Height Adjustment

[03:20] Vir Linden has resumed work on the z-offset height adjustment (aka, on-the-fly avatar height adjustment feature), after having been diverted to take look at the AIS v3-related attachment issues (the fixes for which are now out in an Attachments RC viewer, as noted in part 2 of this report). While there currently isn’t any significant news on progress as yet, it is hoped that there will be an update at the next TPV Developer meeting.

CDN

[03:50] The Lab issued a further update on the CDN on Friday, November 7th (my report is here). commenting on this during the TPV Developer meeting, Oz added:

Mostly, it’s going really, really well, and that contributes to figuring out what is going wrong when it isn’t going well. But we have a lot of things to work on, and we think we are making progress even on those. 

As the Lab’s blog post indicates, there have been a lot of people assisting the Lab with remote testing, which Oz described as “invaluable”, given that tying-down issues has a lot to do with where you are on the Internet, which CDN nodes / PoPs you hit, and so on.

Viewer Managed Marketplace

[06:10] Testing on Aditi for the new viewer-managed marketplace updates is due to commence “pretty soon”, although it appears to be running a little behind the schedule outlined for it when first announced. Testing will hopefully commence prior to US Thanksgiving towards the end of the month, but the overall plan remains that this will be a slow but steady implementation; there will be no quick-firing testing on Aditi with a sudden main grid deployment, particularly given the Christmas shopping season is now on the horizon (not to mention the Lab’s own code freezes over the holiday periods).

Continue reading “SL project updates week 45/3: TPV Developer meeting” →

SL project updates week 43/3: TPV dev meeting, inc. viewer-managed Marketplace

The following notes are drawn from the TPV Developer meeting held on Friday, October 24th, and shown in the video above. Time stamps, where relevant, have been included for ease of reference to the video. Note that items are listed according to subject matter, rather than chronologically, so time stamps may appear out-of-sequence in places. My thanks as always to North for the recording.

SL Viewer

[00:10] There have been a couple of end-of-week viewer updates:

  • The HTTP Pipelining viewer was updated on October 24th to version 3.7.19.295700, incorporating the most recent viewer releases
  • The Benchmarking viewer (which removes dependencies on the GPU table) was also updated on October 24th, to version 3.7.19.295759, incorporating the most recent viewer updates.

Both of these viewers have performed well both in the RC role (HTTP Pipelining) and project viewer (in the case of the Benchmark viewer), and it is likely one or the other will be promoted in week 44 (week commencing Monday, October 27th), although the promotion may not occur until later in the week, depending on how these new releases perform.

[01:58] The Experience Keys project viewer is in the “final throes” of bug fixing. However, it is unlikely to appear as an RC viewer until after the next set of server-side Experience Keys have been deployed. When this will be is unclear. It is not “imminent”, but by the same measure, it is not “distant”.

[02:33] The Oculus Rift work continues, but again, this is unlikely to move beyond being a project viewer until such time as the Oculus hardware is more generally available. The Lab will continue to keep the viewer code base current with releases, and will doubtless continue to test and refine as further SDK updates appear (such as the just-released 0.4.3).

Viewer-managed Marketplace

[03:16] Progress is continuing to be made with the viewer-managed Marketplace updates (VMM). There is now a technical wiki page for the web API available, and Skylar Linden was on-hand to provide and overview of the page, which by his own admission, is “pretty dry stuff”, but includes things like:

  • Figuring out if a user is a merchant or not, and how the system will respond (loading the correct page or not)
  • A data dictionary that gets transmitted back and forth between the viewer and the Marketplace
  • Links to obtain listings, create listings, modify listings, associate inventory with listings, and delete listings (which are the Marketplace functions specific to the new capability).

[08:40] The ability to delete listings is a feature that is new to the Marketplace as a result of VMM, although it is somewhat confusing in that  – as Brooke Linden explained in the meeting – it doesn’t actually delete anything, but gives a means for merchants to remove listing information by making it unavailable. As such, listings deleted in this way will be non-recoverable.

VMM Testing

[10:03]  The Lab is now “very close” to getting the VMM updates available on Aditi’s Marketplace. When this happens, testing will initially be with a “small group” of merchants and TPV devs using a project viewer, the code for which will be made available as the testing starts in order to allow TPVs to integrate it into test versions of their viewers. If all goes according to plan, this initial test could start in the next couple of weeks, with the aim of getting initial feedback.

Once this has been done, testing will by opened-up to allow wider involvement. This is expected to happen “within the next couple of months”, and will be aimed at allowing anyone who would like to try VMM. There will be a beta testing application form made available for those interested.

Group Chat

[13:45] The Lab have been continuing to roll changes to group chat, and the thinking is that the results of the changes are “pretty good”, and the Firestorm support team are reporting they’ve seen an improvement as well. As noted in part 2 of this week’s update, the work isn’t finished – Simon is looking at the possibility to improve code elsewhere in the system; there is also liable to be a round of code clean-up as well. However, Oz cautioned that the Lab may have implemented the changes which may have the biggest noticeable impact in terms of improving the group chat experience.

CDN Progress

[14:49] Again, as noted in part 2 of this week’s report, the CDN is now supporting all the primary Server RC channels. so far, the results have been “excellent”, but the Lab is waiting to see how things fair over the weekend, when the grid is liable to see its heaviest use in terms of numbers of users on-line since the RC deployment was completed this week.

The load on the sim host Apache services is described as “way, way, way, down”, which is a good thing, as it means that all the other things the Apache services have to do (such as participating in region crossings) are no longer being impacted by the simulators handing the texture and mesh fetching loads.

One offshoot of the CDN work is that the Lab is likely to spend time validating whether the viewer cache is working as well as it could be, even allowing for the interest list updates. There are apparently differences in how well the cache works across different code-bases, so this is something that TPVs may well be involved in as well.

Z-offset height Adjustment

There has been no further progress on this since the last TPV meeting.

Continue reading “SL project updates week 43/3: TPV dev meeting, inc. viewer-managed Marketplace” →

SL project updates week 41/3: TPV Developer meeting

The following notes are drawn from the TPV Developer meeting held on Friday October 10th, and shown in the video above. Time stamps, where relevant, have been included for ease of reference to the video. Note that items are listed according to subject matter, rather than chronologically, so time stamps may appear out-of-sequence in places. My thanks as always to North for the recording.

SL Viewer

HTTP Pipeline Viewer

[0:26:35] As noted in part 2 of this week’s report, the HTTP pipelining viewer was looking close to being ready for deployment as an RC viewer, possibly in the next week. However, it hit a final QA snag, and in Oz’s words, “Monty is busily correcting the problem and getting it back in the queue.” Or as Monty put it in chat “:(“. Apparently a workaround for a CURL bug “tends to disable pipelining”.

Benchmark and Experience Tools Viewers

[0:27:20] It is hoped that these two project viewers will be updating and moving into the viewer release channel as release candidates “pretty soon”.

Viewer Build Tool Chain

[0:41:51] The tools upgrade project for building the viewer has been subject to a few delays. Currently, the Lab has just about finished putting together all the build prerequisites for building the Mac version of the viewer directly on OS X 10.9, and are about to commence test builds of the viewer using the new tool chain. This has also led to some progress being made on updating the Linux build process as well. The windows environment will require further work, so it will be a little longer before things are fully in place.

Group Chat

[0:28:58] Again, as noted in part 2 of this week’s report, the latest updates for group chat are being deployed to various back-end chat servers by the Lab, and may be deployed to all of the chat servers in the next week.

While investigating group chat, the Lab has noticed that in general it is “unbelievably spikey”, with chat sessions having peaks of really good performance followed by troughs of really bad performance regardless as to whether the groups are regarded as being “good” or “bad” in handling group chat. There is no real pattern to these peaks and troughs, other than the larger the group, the more it seems to swing between the two extremes, and nothing to correlate them with anything in particular beyond the bad times occurring when a lot of people in a group are online.

Z-offet height Adjustment

[0:31:52] Work is continuing on the z-offset height proposal, which Vir Linden has been engaged upon. However, it appears the Lab has encountered some issues which have made it “a little more complicated” than had initially be thought. hopefully, these will be overcome, and they won’t bring the work to a halt.

CDN

[0:32:28] As noted in part 2 of this week’s report the number of regions on Snack and utilising  the Highwinds CDN for mesh and texture data servicing had reached around the 270 mark, but has since come down a little as a result of the Lab overloading the Snack sim hosts with regions running high volumes of users.

Metrics gathered by the Lab have been positive, and even though the Snack sim hosts were initially overloaded, the Lab feel they performed significantly better thanks to texture and mesh fetching being off-loaded to the CDN than would have been the case had the “old” method of texture / mesh fetching still been in use.

One aspect of the move to using the CDN is that until now, the sim host Apache service was being used for texture and mesh data handling and “lots” of other things which are timing critical to operations such as region crossings. With the move to the CDN, much (if not all) of the texture and mesh data handling is removed from the Apache service, making it easier for it to better handle time-critical activities.

If all goes according to plan, the CDN support will be expanded to the BlueSteel release candidate channel in week 42 (commencing Monday October 13th). This will allow the Lab to gain data on performance using the CDN support which can be directly compared with historical data available for region / sim host performance in BlueSteel. Those regions already running on Snack will continue to do so alongside of BlueSteel, so that around 5% of the main grid will be using the CDN service.

Continue reading “SL project updates week 41/3: TPV Developer meeting” →