Saturday, September 19, 2015

38.3.0 available

But first: check out the stylin' official Mozilla add-on shirt I got!

Try as I might, however, I could not find any XUL in it (there is no XUL, only WebExtensions).

TenFourFox 38.3.0 is now available for testing (release notes, hashes, downloads). Currently I'm tracking two confirmed bugs and one questionable one, none of which are fully fixed yet. We have an issue with what appears to be exact rooting and may be partially a compiler bug, but I can only reproduce it on Github, and only specifically with one particular operation. The patch I added to 38.3.0 seems to wallpaper the intermittent crash that can result from it though not the incorrect behaviour it causes with the JITs (but it does restore correct behaviour with the naked interpreter, which was not the case in 38.2.x), although I don't think this is the cause of some of the unreproducible crashes a few people have reported -- YMMV. In addition, the new jsonlz4 compressed JSON bookmark backup format seems to be bogus despite setting all the proper endian options near as I can tell, so I'm not sure why it's writing invalid data. If I can't figure this out, forcing it to save uncompressed backups a la TenFourFox 31 should not be exceptionally hard. The remaining questionable bug allegedly has to do with modal drop-down-sheet requesters becoming unresponsive, which in turn makes the browser halt (more accurately it goes into a loop where it ignores other events), but I can't get it to do so reliably. Because of these issues, official MP3 support is still delayed for the time being.

Disabling incremental garbage collection in lieu of periodic full collections of the tenured heap appears to be a mixed bag with respect to performance. Although it was a win on my systems, a few of you reported it made them somewhat worse, and not enough people reported a difference to really outweigh them. You can still consider trying it on your own Power Mac and seeing if that helps, but I've abandoned this line of enhancement for the time being and it remains enabled by default in 38.3. As always, the browser goes live on Monday evening Pacific time.

I've been slack on some other fun posts and I'll try to catch up on those soon as my situation permits.

6 comments:

  1. I wonder if GC sweeping memory objects is causing virtual memory to be marked more recently or often used than it would otherwise be.

    If the memory allocation and dependency structures are as distributed as the heap elements are, this could cause an alarming amount of distributed memory to be accessed causing plenty of page faults. OTOH if the dependency structure was located in a small and localized address range, few page faults would be generated and a good amount of the structure may end up cached.

    I understand that this is not Cameron's problem; the Windows ESR version exhibits weird stalls too.

    ReplyDelete
    Replies
    1. Interesting thought. For those who tried it, how much RAM does your system have? All of the machines I tried it on have at least 1.25GB.

      Delete
  2. 1.2Ghz Quicksilver (Sonnet upgrade) with 1.5GB ram.
    17" PowerBook G4, 1.0Ghz with 2GB ram.

    Was getting decreased performance with GC incremental off.

    ReplyDelete
  3. Running TFB 31.8.0 w/o any problems on G5 DP under Leopard 10.5.8

    ReplyDelete

Due to an increased frequency of spam, comments are now subject to moderation.