Float16 on TypedArrays, DataView, Math.hfround

Any progress on this Stage 1 proposal?

At least, IMHO, DateView#{get, set}Float16 should go ahead.

See also:
https://esdiscuss.org/topic/float16array

Maybe make Float16Array optional for WebGPU just like SharedArrayBuffer?

FYI:

Leo Balter (2 years ago)
I've been trying to get some traction for the feature with implementors but it's being hard to get everyone positive about this being a native implementation rather than a non-native custom API.

https://esdiscuss.org/topic/float16array#content-18

Float16Array is required in Canvas Floating Point Color Values.

The ColorWeb CG therefore suggests:

  1. Moving ahead with
    https://github.com/w3c/ColorWeb-CG/blob/main/canvas_float.md in its current form, with unorm8 and float32 as options for readback.

  2. In parallel, working on adding Float16Array to ECMAScript, and prototyping it in browsers.

  3. Specifying a "float16" enum in ImageDataColorType once implementation experience has been achieved with Float16Array. Applications can feature-detect its support in browsers by catching exceptions raised by getImageData or createImageData.

https://lists.w3.org/Archives/Public/public-colorweb/2022Dec/0014.html

What is the timeframe for this?

It's shipped in Firefox, with implementations underway in both Chrome and Safari. You can find links to the relevant issues here.

As for changes to Canvas etc, those are handled by a different organizations. For Canvas, see here.

1 Like

Thoughts on adding similar instructions to wasm? Arithmetic, conversion, math funcs, etc

TC39 isn't in charge of wasm either, but there's an issue at Proposal: FP16 value type and operations · Issue #1497 · WebAssembly/design · GitHub. Hasn't gotten much engagement so far but if you have a concrete use case to write up in that issue that can help drive interest.