OS/2, eCS & ArcaOS - Technical > Programming
AVX enabled Firefox
Dave Yeo:
Tried building with -march=native, with native being an I5-2400, a Sandybridge processor. This worked. It also seems to work fine using the OS/2 kernel, presumably as there are not many AVX instructions. Seems to me as long as only one thread uses AVX, the registers won't get scrambled during a context switch. I doubt that it is checking the OS capabilities as it is targeted at this machine.
https://drive.google.com/file/d/1dk49wLSOgqQ0BWYzAqNOSOpS9Ixr9FbP/view?usp=drivesdk
Dariusz Piatkowski:
Hey Dave!
--- Quote from: Dave Yeo on February 22, 2021, 09:13:22 pm ---That is about the JS JIT compiler not respecting whether the OS supports AVX instructions. Doesn't seem to apply to us as there hasn't been any reports of crashes that could be tied to it.
It does bring up the point that on an OS4 kernel, the JIT compiler likely produces AVX instructions.
--- End quote ---
Yeah, I caught that too but figured for what it's worth it seemed to have spelled out how FF attempts to deal with AVX hardware capabilities. I have not looked into the bigger 'FF and AVX' any further though.
You know, the JIT use-case may be a reasonable excercise, after all we have seen some performance hits to FF on our platform due to JIT, have we not? I'm thinking various JS issues, CPU cores going 100% and all that...if there is a chance of that being even slightly improved that may be a neat little "added bonus" to getting FF AVX enabled.
Not quite sure though how JIT would benefit from AVX as the purpose of that instruction is to apply same execution to a much larger data set, stuff you'd normally see in media decoding such as YouTube playback, etc.
Dave Yeo:
Well it seems the build using -march=native does not use AVX, presumably due to GCC being smart enough to check the operating system support before enabling it for "native"
Adding -mavx to force AVX support results in the same error as posted earlier and Googling, I can't find any hints as to why.
Navigation
[0] Message Index
[*] Previous page
Go to full version