[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y ] [Search | Free Show | Home]

>tfw discovered a custom Firefox built by some faggot in Japan

This is a blue board which means that it's for everybody (Safe For Work content only). If you see any adult content, please report it.

Thread replies: 58
Thread images: 7

File: Firefox.jpg (153KB, 2406x732px) Image search: [Google]
Firefox.jpg
153KB, 2406x732px
>tfw discovered a custom Firefox built by some faggot in Japan that is optimized
>tfw the performance in Firefox increased by 25%
>tfw everything feels so fucking smooth
>>
>>57504187

>meanwhile 90% or anyone's RAM and 50% of their CPU aren't being used

Who gives a shit about performance? A 25% increase in a shitty app is crumbs, it literally doesn't matter.
>>
>trusting binaries published by some random japanese neckbeard when you can just compile firefox yourself with -O3, -march=native and profile-guided optimization
>>
>not just using Pale Moon
>>
>>57504248
you've got the percentages mixed up
>>
>>57504293
This
>>
here's the link because OP is a little bitch and didn't post it

http://fbuild.com/
>>
>>57504293
>-O3, -march=native and profile-guided optimization
so why isn't the "official" Firebox build compiled this way?
>>
File: 1418926229393.jpg (536KB, 1700x1181px) Image search: [Google]
1418926229393.jpg
536KB, 1700x1181px
>>57504187
>using SJWfox
>>
>>57504380
Because not everyone has the same CPU
>>
>>57504380
Because "unused ram is wasted ram" meme... So they make it less effective so that the ram is used.
>>
>>57504380

Official builds of everything always use conservative compilation parameters because they need the software to be compatible with as much stuff as possible. If you want X app to be compiled optimally for your hardware and DE you need to do it yourself.
>>
>>57504187
PGO with a not shit profile is the only thing that could possibly make the difference between this and an official release.

Rather than downloading a random ass binary and running it on your computer 24/7, you should just compile it yourself with his profile.
>>
>>57504390
>>57504391
>>57504403
Obvious n00b is obvious

So you mean that when I compile myself with those options, compilation is optimized for my CPU?

What specifically do these things do?
>-O3
>-march=native
>profile-guided optimization (I guess this one is probably to be ignored since you'd need extensive knowledge of the codebase and of your particular hardware, plus a shitload of time on your hands)
>>
>>57504293
You know you can look at the source of every Firefox build on the internet, right?
>>
File: pcount.png (10KB, 983x194px) Image search: [Google]
pcount.png
10KB, 983x194px
>>57504248
Pic related if you want firefox to eat all your memory.

>>57504293
Nightly source code isn't publicly available as far as I know. [spoiler]Please prove me wrong.[/spoiler]
>>
>>57504389
Install Solus
>>
>>57504526
You have to trust that they didn't modify the source before compiling
>>
>tfw people trust some random guys build with their user names and passwords

lads...
>>
File: k4pcz.jpg (13KB, 620x364px) Image search: [Google]
k4pcz.jpg
13KB, 620x364px
>still using firefox
>trusting a random gook
>>
>>57504436
Profile Guided Optimization is the problem here.

With PGO you take a profile of a CPU, and the compiler writes code that will run best only on that particular CPU. This is great if you're compiling for one (and only one) of your own machines, You shouldn't distribute programs compiled this way, as they only work great on the machine it was profiled for.

The rest of the compilation settings are fine.

I wasn't aware Intel 64 had AVX2. Intel 64 is Itanium, right?
>>
>>57506439
it's a nip
>>
>>57506285
this might be it
https://hg.mozilla.org/mozilla-central/file
>>
>>57506296
Fuck off shill.
>>
I don't understand why everyone's complaining about Firefox all the time. The Linux version in general is blazing fast and stable, while in Windows the 64-bit version is just as good.

You'll only ever encounter problems if you install 32-bit Firefox and insist on keeping Adobe Flash installed.
>>
>>57504187

ONE WEIRD OPTIMIZATION DISCOVERED BY ONE JAPANESE MAN

MOZILLA HATES HIM
>>
>trusting the nips
>>
>>57504361
>windoze
into the trash it goes
>>
>>57506285
so is that the value you set it to if you don't want this to happen or is this the one to avoid

please respond
>>
File: toomainstream.jpg (108KB, 500x515px) Image search: [Google]
toomainstream.jpg
108KB, 500x515px
>>57504187
fuck off back to >>>/jp/ with your weaboo shit
>>
>>57504187
>OP talks about custom firefox build
>>57508073
>SJW tumblr refugee gets triggered out of the blue

Autism
>>
enjoy your botnet
>>
>>57508058
Default is 1 or 2, the higher the number the more processes are created and thus more memory is used.
>>
>>57507922
nips are the most honourable of asians, it's the chinks and vietnamese you have to watch out for
>>
>slight performance improvements in a browser
I bet you if you put performance engineers on it you'd see double digit factors of improvement.
I should scan the binary using IACA just to see what the critical path would be just for a non-jump run. (fyi you can markup the code by just inserting the instructions they use as markers)

People are shit at writing software. Practically anything you use, including software from developers you trust, is poorly written most of the time. Reason being that priorities aren't in that area.

Consider the features added since FF 1.0
Consider the machines it could run on.
It's a poor tradeoff if you have that machine but for current tech it might be good.
>>
>>57504361

Might try a compile it for macOS with some of those options
>>
>>57506447
>With PGO you take a profile of a CPU, and the compiler writes code that will run best only on that particular CPU
interesting. thanks.

what do the two other compiler flags do?
>>
>>57506447
>>57508232
That's not what pgo is.

Optimizing for a specific micro architecture is done with the march switch, where march=native optimizes for the system the compiler is run on. This is useful for example if your cpu supports a certain set of simd instructions (avx, sse). Since only newer cpus support those this swicht can't be used in a compability build.

Pgo means first compiling the program with debug information, then running it in a profiler, which analyzes stuff like commonly taken branches and frequently used function call edges (which functions call which other functions, which functions are called by which other functions).
If you then recompile the program with the generated profile information the compiler is able to optimize based on knowledge of actual runtime usage patterns.
This method isn't commonly used because it's hard to say what common usage patterns are and because compilers are still kind of bad at effectively using profile information

O3 is just the most aggressive optimisation level most projects use this for release mode. Drawback is longer compile time. Also it turns out that for some codebases O3 isn't actually faster. The reason is that stronger optimisation often leads to larger binaries, whixh in turn slows down the application (more cache misses and stuff).
>>
>>57508458
Really? They fill the instruction table naively even in a platform specific build? That's kinda dumb.

Also I thought for sure you'd at least see SSE being used without March=native.

I optimise for vector extensions by hand normally. And that's probably preferred for the most intensive parts of the code but i suppose I should be comparing to an automatic vector extension transformation.
>>
>>57508503
Platform specific only means os + architecture (eg x68_64). Sse is an extension to that. Whether you can assume your users have access to it depends on your userbase. Sse might be old, but Firefox has a huge userbase so I don't know if that's a safe assumption to make.

For your code that assumption is probably perfercly safe to make. However don't forget that there are newer revisions of sse (eg sse4) that are not as widespread.

If you want to know if automatic or manual vectorisation is faster measuring is the only reliable way. I would expect them to be roughly the same at least for trivial cases.
>>
>this thread
http://funroll-loops.teurasporsaat.org/
>>
>>57508661
>someone bothered to write all that
>>
Gentoo doesn't need japanese hackers. I have pgo and -march=native in all my firefox builds. It is faster than any other binary I tried, though.
>>
File: installsolus.jpg (102KB, 800x800px) Image search: [Google]
installsolus.jpg
102KB, 800x800px
install solus
>>
America is such a fucking cuck country.
>>
>>57508661
Funnily enough the SDL bug linked on that page wasn't caused by CFLAGS.
>>
Is there a Firefox build that uses AVX, SSE and PGO?
>>
>>57507900
The linux version is damn slow compared to Chromium, Firefox takes ages to reload a session with 30/40 tabs.
>>
>>57504187

This is essentially what Pale Moon already is. Although the focus is more on stripping bloat and unwanted features. I can't comment on CPU optimizations in great detail.
>>
>>57511673
Ok sucks for you, I guess
>>
>>57512470
It sucks for everyone, maybe you don't have many tabs open or don't use session resume but this does not change the fact that Firefox is slow as hell to load and render pages.
Firefox manage to be fucking slow even when compiled with with -O2 and -march=native on Gentoo installed on an SSD and running with a high clocked XEON v3.
>>
>>57511854
>This is essentially what Pale Moon already is

No. Pale Moon isn't optimized to this degree.
>>
>>57504293
iirc official firefox builds have been built with pgo for a few years. distros probably don't this tho.
>>
>>57508458
Score:5, Informative
Thank you for these explanations
>>
>>57513403
They're not very good fyi
It also portrays a rookies view of optimization.
So beware.
>>
File: 56ea655d150000ad000b24a8.jpg (247KB, 2000x1000px) Image search: [Google]
56ea655d150000ad000b24a8.jpg
247KB, 2000x1000px
>>57513507
well until you suggest anything better I'll consider myself more informed than I was...
>>
>>57512549
Prove it.
>>
>>57506296
kevin pls
Thread posts: 58
Thread images: 7


[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y] [Search | Top | Home]

I'm aware that Imgur.com will stop allowing adult images since 15th of May. I'm taking actions to backup as much data as possible.
Read more on this topic here - https://archived.moe/talk/thread/1694/


If you need a post removed click on it's [Report] button and follow the instruction.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com.
If you like this website please support us by donating with Bitcoins at 16mKtbZiwW52BLkibtCr8jUg2KVUMTxVQ5
All trademarks and copyrights on this page are owned by their respective parties.
Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
This is a 4chan archive - all of the content originated from that site.
This means that RandomArchive shows their content, archived.
If you need information for a Poster - contact them.