WebAssembly / half-precision

Proposal to introduce half precision operations
Other
6 stars 0 forks source link

Hardware support #7

Open eqrion opened 1 month ago

eqrion commented 1 month ago

I'm trying to quantify what percentage of Firefox users could actually use this proposal.

Using [1] and [2], here's what I got. Note: this is desktop only data.

For desktop we have ~97% x86/x86_64 usage between Intel/AMD. The remaining ~3% looks like apple silicon if I'm reading right for our only major AArch64 usage.

ARMv8-A NEON fp16 3% implied from Apple Silicon

F16C: No direct data. For Intel it was added in Ivy Bridge. The successor, Haswell, introduced AVX2. We have 82% support for AVX and 72% for AVX2, so I would guess F16C is somewhere between there?

AVX-512 fp16: Only in Xeon, so I'm assuming no usage.

@SPY (or anyone else) do you have any more accurate usage numbers here?

I'm going to see if I can find any mobile usage numbers, but that will take a longer time as our pre-generated dashboards don't see to track this.

[1] https://data.firefox.com/dashboard/hardware [2] https://firefoxgraphics.github.io/telemetry/#view=system

SPY commented 1 month ago

We have more or less the same desktop distribution. On mobile situation is better: 29% is iOS users(iphone/ipad has fp16 starting from iphone 8, so 95.3% of iOS devices have it now) For Android it is harder to make an estimation. 69% of mobile users use Android base phones. 39% of them considered low-tier and 30% mid-tier. I would assume about half of Android users have fp16 extension and therefore more than half of mobile users have it.