Firefox 37.0.1 Ultimate by Foxtrot813

Discussion of third-party/unofficial Firefox/Thunderbird/SeaMonkey builds.
User avatar
jadjkorn64
Posts: 35
Joined: November 1st, 2008, 11:28 am

Firefox 37.0.1 Ultimate by Foxtrot813

Post by jadjkorn64 »

Firefox Ultimate by Foxtrot813

Compiled in VS 2013 Update 4 and Windows SDK 8.1, optimized for SSE2
This version is faster than the original version at rendering web pages, and navigating on image galleries like DeviantArt, Pixiv, etc.
since 0.72 version is optimized for computers with 2 or more cores

ENHANCEMENTS:
Better use of internet bandwidth
image and DNS cache optimized
faster web page rendering
optimized WebGL
better browsing on image galleries or sites with lots of images
optimized 64bit version

Changelog:
0.40 - updated sqlite3 version to 3.8.0 and optimized for speed
0.50 - DNS cache functions optimized for speed
0.60 - Web cache functions optimized for speed
0.62 - doubled the amount of threads for I/O functions from 4 to 8
0.70 - doubled the ammount of threads for image decoding, 2 per core; optimized the re-validation of cached images
0.71 - Maximum xpcom threads from 4 to 6
0.72 - Image threading, min threads 4 instead 2
- I/O threads raised from 8 to 10
- updated to sqlite 3.8.0.2
0.73 - updated jemalloc to 3.40
- changed max cache size to 2GB, default is 750mb
0.74 - optimized webpage loading
0.75 - optimized threads and web resource gathering
0.76 - removed health report
0.77 - added more test to pgo build, enabled jemalloc pgo, performance improvements, installer included
0.78 - fixed some minor graphic errors on some systems, added version for Windows XP
0.79 - changed read/write buffer from 32k to 64k for file and plugin data comunication
- implemented a new core hack, allowing 2x threads per core at same time
- javascript threads changes 2x per core, uses a bit more cpu in exchange of better overall performance
- sadly dropping Windows XP support, in order to improve this project further
0.80 - added thread modifications to IPC code from google that firefox uses, slight perf improvement
0.81 - Compiled now using Windows 8.1 SDK, x2 thread hack added to VP8 video decoder
0.82 - fixed up some minor performance problems compared to previous versions, changed max network threads from 25 to 30
0.83 - added some patches from tete09, lawliettfox and pcxfirefox, wich includes:
libpixman update to 0.30.2
better use of windows 8 SDK (in this case 8.1 SDK), fixing a network bug with it
LibEGL and LibGLESv now uses D3D HLSL Compiler version 6.3.9431.0 (D3DCompiler_47.dll) instead of v9
gfx 2d optimized adding SSSE3 support
js math optimized adding SSE4.1 support
Firefox now Don't register plugins if the MOZILLA_DISABLE_PLUGINS is set
health report is now disabled
- updated to sqlite 3.8.1
- updated to jemalloc 3.4.1
0.84 - downgrade from Windows SDK 8.1 to 8.0 due to webgl incompatibility, Firefox now uses D3D HLSL Compiler version 9.30.960.9200 (D3DCompiler_46.dll)
0.85 - modified java asmjs vm threads from 4 to 8
0.86 - updated sqlite to 3.8.2
- important java thread changes
0.86.2 - updated to VS 2012 update 4
- added proper images to installer
0.86.3 - fixed a small db performance issue
- added recent changes to sqlite 3.8.2, minor performance improvements
- plugin buffer changed from 32k to 64k, better flash video buffering performance
0.86.5 - fixed variable performance issues on earlier versions, ui is more responsible now
- added latest sqlite changes
- small jemalloc changes for computers with less than 4 cores
- content sink preferences changed to improve responsiveness and prevent performance variations
0.87 testing experimental opt that will be enabled for computers with 4+ cores only
0.88 stable optimization for 4+ cores computers
- upgrade to sqlite 3.8.3
- small java cache perf improvements
0.90 update to ff28 source
- updated sqlite to 3.8.5
- updated to jemalloc 3.6.0
0.91 update to ff29 source
- new optimization method due to changes in thread execution on ff29
0.94
-changes and small optimization of firefox new cache back-end
0.97
- firefox new cache back-end enabled, page loading speed improvement
- small sqlite thread optimizations
0.97.1
- small jit compiler configuration fix
0.97.2
- back to old cache backed due to bugs on win8.1 update 1
0.97.7
-upgraded to sqlite 3.8.6
-Firefox is now compiled in vs2013 update 2
-small network tweaks for ff31 src
0.97.7a
-installer fix for Windows 8 rtm
0.98.2
- updated to sqlite 3.8.7
- small tweaks to FF32 cacheV2
- ASMJS cache tweaked
0.99
- updated to sqlite 3.8.7 final release
- small tweaks to new cache backend
1.00.3
- updated to FF35
- small changes to # of threads per core
1.00.9c
- updated to FF36
- small network & cache optimization
- re-enabled XP compatibility
1.00.10
- updated to FF37.0.1
- manual optimization of some components, performance improvement
- optimized x64 build


Download:

https://sourceforge.net/projects/firefoxultimate/

TO DO:
- compile optimized x64 version
- compile arch:avx optimized x64 version
- compile linux x86 version
- 3D and GL optimizations

At compiling, SSE2 and PGO is used to ensure the best performance possible is achieved each time.
Fully compatible with Windows XP, vista, 7, 8 and 8.1 RTM


Thanks for using my version.
jadjkorn64 at gmail dot com
Special thanks to pcxFirefox, tete009 and lawliettfox developers for their splendid work.

::::::::::::::::::::::::::::::::::::
Do you like this project?
Try FoxSpeed, a Freeware and REAL internet optimizer/accelerator, modifies advanced windows (7 to 8.1) TCP and DNS setting to properly utilize the most of ANY internet connection (cable, dsl, 3g, 4g, etc), lower ping and maximize throughput (http://en.wikipedia.org/wiki/Throughput)

Get the most of your internet with FoxSpeed Ultimate!
Free internet accelerator for Windows
https://sourceforge.net/projects/foxspeed/
::::::::::::::::::::::::::::::::::::
Last edited by jadjkorn64 on April 6th, 2015, 7:00 pm, edited 25 times in total.
xunxun1982
Posts: 311
Joined: June 20th, 2011, 10:37 am

Re: Firefox Ultimate by Foxtrot813

Post by xunxun1982 »

According to https://bugzilla.mozilla.org/show_bug.cgi?id=909382 and https://tbpl.mozilla.org/?tree=Try&rev=a4c38a2ae384, firefox on xp with sqlite3.8.0.1 is not green, so I don't know whether it has some defect.

My some pcxfirefox patches is posted in http://pcxfirefox.sourceforge.net/?p=60.
When I think other patches are stable enough (some upstream patches), I will also post them on my site or bugzilla.
xunxun1982
Posts: 311
Joined: June 20th, 2011, 10:37 am

Re: Firefox Ultimate by Foxtrot813

Post by xunxun1982 »

I downloaded your edition, and I have some suggest.

For 3rd build, maintenanceservice is not such useful, you can add --disable-maintenance-service
And you don't need to package all dist/bin directory, you can use python build/pymake/make.py -C ../obj installer to generate the final installer, which is smaller.

I saw your about:buildconfig, and --enable-faststart should be a invalid option.
User avatar
jadjkorn64
Posts: 35
Joined: November 1st, 2008, 11:28 am

Re: Firefox Ultimate by Foxtrot813

Post by jadjkorn64 »

thanks xunxun, I really appreciate your suggestions, will downgrade to the default sqlite version on FF 23.0.1 source
I will post the x64 version later
User avatar
jadjkorn64
Posts: 35
Joined: November 1st, 2008, 11:28 am

Re: Firefox Ultimate by Foxtrot813

Post by jadjkorn64 »

update to version 0.72
added more sites to for PGO
working on a custom installer, so you can have it installed alongside the original firefox browser
User avatar
jadjkorn64
Posts: 35
Joined: November 1st, 2008, 11:28 am

Re: Firefox Ultimate by Foxtrot813

Post by jadjkorn64 »

updated to 0.77based on ff24 source
added installer
added this sites to PGO:
http://benchmarkjs.com/tests
http://www.numericjs.com/benchmark.html
http://jsbench.cs.purdue.edu/
User avatar
jadjkorn64
Posts: 35
Joined: November 1st, 2008, 11:28 am

Re: Firefox Ultimate by Foxtrot813

Post by jadjkorn64 »

updated 0.80 based on ff24 source
- performacence improvements
xunxun1982
Posts: 311
Joined: June 20th, 2011, 10:37 am

Re: Firefox Ultimate by Foxtrot813

Post by xunxun1982 »

Why not 25.0?
moonstone
Posts: 1
Joined: December 15th, 2006, 8:34 am

Re: Firefox Ultimate by Foxtrot813

Post by moonstone »

Great build.Can you add support for portable mode by libportable (tmemutil-3rd), here is a link for the project http://code.google.com/p/libportable/ thanks.
User avatar
jadjkorn64
Posts: 35
Joined: November 1st, 2008, 11:28 am

Re: Firefox Ultimate by Foxtrot813

Post by jadjkorn64 »

moonstone wrote:Great build.Can you add support for portable mode by libportable (tmemutil-3rd), here is a link for the project http://code.google.com/p/libportable/ thanks.


Looks good, I will check it out.
User avatar
jadjkorn64
Posts: 35
Joined: November 1st, 2008, 11:28 am

Re: Firefox Ultimate by Foxtrot813

Post by jadjkorn64 »

xunxun1982 wrote:Why not 25.0?

D: I didn't have the time to do it earlier, because of my job x3
but here it is =D
M.Silenus
Posts: 29
Joined: December 9th, 2004, 2:32 am

Re: Firefox 25 Ultimate by Foxtrot813

Post by M.Silenus »

little ot: No question, this one is optimized like hell, but, are there any plans to provide some of these wonderful performance improvements to the original codebase, so that everybody gets the benefits?
User avatar
jadjkorn64
Posts: 35
Joined: November 1st, 2008, 11:28 am

Re: Firefox 25 Ultimate by Foxtrot813

Post by jadjkorn64 »

M.Silenus wrote:little ot: No question, this one is optimized like hell, but, are there any plans to provide some of these wonderful performance improvements to the original codebase, so that everybody gets the benefits?



dunno, but I will have a google code page to post all changes to source I make
unfortunately I have little time due to work :(
trieste
Posts: 618
Joined: September 4th, 2003, 4:15 am
Location: Singapore

Re: Firefox Ultimate by Foxtrot813

Post by trieste »

jadjkorn64 wrote:updated to 0.77based on ff24 source
added installer
added this sites to PGO:
http://benchmarkjs.com/tests
http://www.numericjs.com/benchmark.html
http://jsbench.cs.purdue.edu/

Hi, can you not add benchmarking sites to PGO? What it does is to make these benchmark sites load fastest at the expense of all other sites.

It would perhaps be more productive to add real-life sites like gmail.com, live.com, mail.yahoo.com, cnn.com, google.com ... I'm thinking xunxun's BetterPGO but without the artificial JS benchmarking sites if that contains those. (Up to you if you want to include social networking sites in there... maybe Linkedin is the bare minimum) If it is possible to generate compiling profiles with extensions, maybe run Firefox with Adblock Plus while doing so...?

Your builds load very fast, although there is a "lag" time right before everything finishes loading. I'm not sure what are the list of default preferences you've changed, but I've disabled all the pipelining ones because they've been proven not to work better, while I reduced the persistent http connection values to the default 4 and 2 so as to keep within the http/1.1 specifications. nglayout.initialpaint.delay is set to the default of 250.

Thank you for this build!
User avatar
jadjkorn64
Posts: 35
Joined: November 1st, 2008, 11:28 am

Re: Firefox Ultimate by Foxtrot813

Post by jadjkorn64 »

quirK wrote:
jadjkorn64 wrote:updated to 0.77based on ff24 source
added installer
added this sites to PGO:
http://benchmarkjs.com/tests
http://www.numericjs.com/benchmark.html
http://jsbench.cs.purdue.edu/

Hi, can you not add benchmarking sites to PGO? What it does is to make these benchmark sites load fastest at the expense of all other sites.

It would perhaps be more productive to add real-life sites like gmail.com, live.com, mail.yahoo.com, cnn.com, google.com ... I'm thinking xunxun's BetterPGO but without the artificial JS benchmarking sites if that contains those. (Up to you if you want to include social networking sites in there... maybe Linkedin is the bare minimum) If it is possible to generate compiling profiles with extensions, maybe run Firefox with Adblock Plus while doing so...?

Your builds load very fast, although there is a "lag" time right before everything finishes loading. I'm not sure what are the list of default preferences you've changed, but I've disabled all the pipelining ones because they've been proven not to work better, while I reduced the persistent http connection values to the default 4 and 2 so as to keep within the http/1.1 specifications. nglayout.initialpaint.delay is set to the default of 250.

Thank you for this build!


thanks for the feedback, these sites were added to improve MathML performance on this FF build and getting ready for FF26 MathML changes to come.

these sites are also in PGO:
facebook, deviantart, google image search, twitter, gmail, yahoo main site and mail.

These addons are enabled on PGO:
Adblock Plus, Video DownloadHelper, Ghostery
these 3 are a bit demanding addons, excellent for PGO tests

in V0.86.5 responsiveness has been fixed in code and preferences, also, performance should not be variable tough.
the preferences you were looking for are these: https://bugzilla.mozilla.org/show_bug.cgi?id=481566#c9
content.sink.enable_perf_mode (0) was set to 2 (always perf mode) and has been changed to 0 (automatic)
others preferences have been changed to give a bit more priority to perf mode instead on interactive mode (65-35, instead of 75-25 aprox percentage respectively)

thanks again for pointing this out.
Post Reply