Hacker Newsnew | past | comments | ask | show | jobs | submit | supercilious's commentslogin

Intel still disables AVX instructions on their low-end Core architecture chips for market segmentation purposes. It is also entirely absent to begin with from their Atom and Celeron chips. AMD did not have AVX support until Ryzen, but they are still selling Piledriver based CPUs on their AM4 platform.

Firefox can't blindly use AVX without checking for its presence or it will crash on these types of systems.


AMD Bulldozer and later arch supports AVX, what Ryzen adds is AVX2 instructions.


You're right, and this is a little confusing. The article says he's using a "AMD Opteron 6272", which seems like it should support AVX: http://www.cpu-world.com/CPUs/Bulldozer/AMD-Opteron%206272%2.... So maybe the GCC bug he encountered is actually because he lacks AVX2 support? Or an incompatibility between early AMD and Intel support for AVX?


That doesn't explain GCC's side of the story though

EDIT: I should have clarified, the way the author of the article phrased it at first, I got the impression Clang did better auto-vectorization with Firefox code than GCC.


The author is trying to figure out why GCC underperforms Clang for Firefox builds. Seems inappropriate to worry about cutting-edge features that probably are available to 10% or so of computers that run Firefox (or a competing browser.)


Are you suggesting that 10% is a reasonable estimate of the percentage of Firefox instances running on hardware that supports AVX? I'm not sure of the real numbers but this strikes me as an extremely low estimate.

The closest I can find is Valve's hardware survey, which says that 87% of users are running on computers that support AVX. https://store.steampowered.com/hwsurvey (click on "Other Settings" on the bottom to expand).

Firefox is presumably lower than this, although I don't know by how much. Does Mozilla collect statistics on the capabilities of the computers that Firefox is being run on?


You can look at https://data.firefox.com/dashboard/hardware for similar numbers. CPU models are not broken out, but you can get a sense of what sort of CPUs are in use by looking at the GPU model: Intel powers 60%+ of the sampled population.


Well, the author also wrote:

> Moreover GCC -O2 defaults are (in my opinion unfortunately) still not enabling vectorization and unrolling which may have noticeable effects on benchmarks.

... which makes it sound like Clang does a better job at this with Firefox code.


IMHO, the reason Wuala is not popular (certainly the reason I dropped it), is: - Its bloated and slow Java swing client app. - It's buggy as hell, using the dokan integration MD5s of uploaded files do not match often. Using the java client directly works OK, but it doesn't exactly inspire confidence. - Really poor integration with the OS (it wanted to install a kernel mode driver to create a filesystem mapping.) - The inability due to its cryptree encryption protocols to do any kind of delta-upload. - It had a bizarre notion of permissions, for example, there is no way to hide from the public which groups one is in. - No android client - Poor website, impossible to use on a mobile web-browser

Much prefer the alternatives, like Dropbox, SugarSync mostly these days. Wuala seems like it is ideal for uploading backups and other rarely changing files, and combined with the ability to get 100GB free (almost) storage this is what I think it should be used for. Certainly nothing involving rapid change or collaboration.

EDIT: Bullet point formatting syntax?


Wuala dev here. I just wanted to let you know that we have fixed some of the issues you have mentioned. We'll switch to CBFS as file system driver shortly (that's the same driver SugerSync is using AFAIK). However, this is still a kernel driver. Unfortunately, Windows provides no other way to mount a custom file system. DropBox just syncs an existing folder, but that does not scale to large amounts of data. For example, if you have 100 GB of data online, you cannot sync it to your notebook with a 60GB disk. On the other hand, the dropbox approach is simpler. Delta-uploads (achieved with block-level-deduplication) are planned for spring. You can also disable seeing the public groups in the options now. Also, the UI (which is SWT and not Swing btw) got more light-weight and simpler with the August update. We are not as fast with many things as we'd like to be, but there certainly is progress.


Thats great to hear, I'll try it out again when I get home.

Any word on an Android app or at least an API for third party developers to make one? One of the best things about Dropbox is the API.


Btw: If you still can reproduce the MD5 issue in the current version, could you report it to bugs.wuala.com or send me a message?


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: