Thursday, July 16, 2020

TenFourFox FPR25b1 available

TenFourFox Feature Parity Release 25 beta 1 is now available (downloads, hashes, release notes). Raphaël traced the the Twitch JavaScript crash we wallpapered over in FPR24 back to an issue with DOM workers not having sufficient memory allocated, so we widened that out. There still seems to be an endian issue Twitch is triggering, because it needs a huge amount of memory for its worker to finish and then can't spawn another thread because there's not enough memory to (but it reportedly works on Intel TenFourFox, so it's something specific about PowerPC). But hey! No crashes!

Raphaël gets a second gold star for noticing that the gcc runtime we include with every copy of TenFourFox (because we build with a later compiler) is not itself optimized for the underlying platform, because MacPorts simply builds it for ppc rather than one of the specific subtypes. So he built four sets of runtime libraries for each platform and I've integrated it into the build system so that each optimized build now uses a C/C++ runtime tuned for that specific processor family (the debug build is still built for generic ppc so it runs on anything). This is not as big an improvement as you might think because JavaScript performance is almost overwhelmingly dominated by the JIT, and as I mentioned, JavaScript is one of the few areas TenFourFox has tuned and tested to hell. But other things such as DOM, graphics, layout and such do show some benefit, and scripts that spend more time in the interpreter than the JIT (primarily short one-offs) do so as well. There are no changes in the gcc runtime otherwise and it's still the same code, just built with better flags.

This release also includes additional hosts for adblock and additional fonts for the ATSUI font blocklist, and will have the usual security updates as well. It will come out parallel with Firefox 68.11 on or about July 28.

No comments:

Post a Comment

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