5 ms·
I don't have an HEDT but an outdated Haswell i5 laptop (not an Ultra Low Voltage model at least, so it's quite fast). Last year I spotted a bug in Firefox and I
by kbumsik 7y ago
I don't have an HEDT but an outdated Haswell i5 laptop (not an Ultra Low Voltage model at least, so it's quite fast). Last year I spotted a bug in Firefox and I though it was time to put a line in the contribution section in my resume.
The contribution experience was a nightmare because a full build of Firefox took 3 hrs and running the entire testing framework took 4 hrs, though it turned out that I needed to run only a part of the testing framework. Changing a single line and building it again still took more than 30 minutes.
That was the first moment that I wanted a HEDT in my life. It feels like devs who work with big C++ projects would want a bigger workstation because of the significant build time.
- _bxg1 7y agoWoof. I wasn't aware compilation times got that long for people who aren't building a whole OS.
- kbumsik 7y agoI wouldn't try contributing if I were aware of it too lol. Imagine that I did it for Chromium. I was told that it takes about 20GB to build Chromium.
- oldmanhorton 7y agoIt's usually more, actually. We have seen 100+ GB build directories when building the "all" target and a non-GOMA build easily takes multiple hours on a desktop i7
- skunkworker 7y agoTry building Chromium from source. Anandtech uses it as a multithreaded benchmark. The top CPUS can average just under an hour compile time. https://www.anandtech.com/bench/CPU-2019/2224 https://www.anandtech.com/bench/CPU-2019/2224
- tdsamardzhiev 7y agoWell I work in games and building our thing without distributed compilation is inconceivable.
- Narishma 7y agoA browser nowadays is pretty much a whole OS.
- TheRealDunkirk 7y agoHmm... Like when Oracle created their "bare metal" product. There just wasn't much left to add to the database engine to eliminate the need for a general-purpose operating system. I suspect graphics, audio, and pointing input may be significant barriers to doing the same thing here.
- Crinus 7y agoI remember building Mozilla took around 6 hours in my PC back around 2003. Though granted, that was a Pentium II PC with only 128MB of RAM and most of those hours were probably spent with the OS (Linux) swapping stuff :-P.
- xuki 7y agoMaybe spin up an instance on GCE or EC2 and remote into it? If you live anywhere near a data center it should be under 50ms delay. Your time is certainly worth more than whatever the cost of the instance.
- lonelappde 7y agoAnd it's much easier to set up a build env on a VM than local machine
- kbumsik 7y agoProbably. But I always try to build Linux programs natively or in an officially supported environment at the first attempt because I'm not sure what potentially cause problems when I build it in a something unsupported environment. On top of that running the testing framework needed an X11 environment. You know, it sometimes also takes significant times to figure out how to set up in a different environment. I might try EC2 if I became a regular firefox contributor.
- Marsymars 7y ago> If you live anywhere near a data center it should be under 50ms delay. Hm, I guess I don't live anywhere near a data center. 1M+ North American city, but lowest ping to any AWS/GCE region is ~130ms.
- Ecco 7y agoMost likely that latency comes from the link between your place and your ISP.
- zamadatix 7y agoMy RTT from the midwestern US to AWS/Azure/GCP in Germany is less than that. I think your ISP has more blame than your distance to the nearest zone in NA.
- Marsymars 7y agoYes, you guys are entirely correct, something looks fishy with my ISP. I'll give them a call them tomorrow morning if it still looks like this. Edit: Now resolved, pings (barely) over 50ms.
- yitchelle 7y agoAre compile farm still relevant in these type of scenario these days?
- kbumsik 7y agoYes. As a CI pipeline the Firefox team do run their own compile farm called TryServer [1] and is building a various different versions (possibly all of accepted versions) at a time. Level 1 contributors (contributors who are acknowledged by one of Mozilla dev) grant access to TryServer. [1]: https://wiki.mozilla.org/ReleaseEngineering/TryServer https://wiki.mozilla.org/ReleaseEngineering/TryServer
- stephenr 7y ago3 HOURS? Does that say more about your workstation or the project? I've recently built php + most of the bundled extensions, in a VM (on a 2018 Mac mini) and it's only a couple of minutes at most to build.
- kbumsik 7y agoHey it's Firefox, one of the biggest C++ project you can build for now.
- tracker1 7y agoA modern browser is a MUCH larger codebase.
- stephenr 7y agoWell perhaps if browsers didn't try to cram every feature of a desktop operating system into their own runtime, it wouldn't be? Seriously. Chrome and Firefox are both guilty of this.
- tracker1 7y agoOkay, support every CSS & JS DOM/API feature without doing so. Create your own browser, and get people to actually use it.