New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OCaml 5.2 support #657
Comments
In addition to the missing Float16 pattern matches the C code has warnings from the K&R C style function declarations and incompatible pointer types. https://github.com/tmcgilchrist/owl/tree/ocaml_5_2 has basic fix for pattern matches in ef69ebe and silenced K&R C warnings in c3a3582 Haven't looked into the last warnings about incompatible pointer types.
I expect that proper Float16 support will need more work. |
Most scientific computing libraries support higher precision floating point operations (floats and doubles), to support float16 or bfloat16 or more exotic float8 the common BLAS functions has to be implemented with reduced precision. To support float16 now in Owl, the linear algebra operation can be done in higher precision (float32) by converting float16 array buffer to float32 array buffer and then stored back again in float16 array buffer. Raising precision would cause some overhead but not that much, also accumulation in higher precision (float32) is also more stable. This is what ml_types library does for accumulation. |
OCaml 5.2 added support for float16 bigarrays and owl-base fails with:
The text was updated successfully, but these errors were encountered: