Wednesday 10:30 in room 1.38 (ground floor)

A Hitchhiker's Guide to the Array API Standard Ecosystem

Lucas Colley

Support for alternative array libraries is one of the most common requests put to libraries written on top of NumPy. Users are often interested in boosting their performance by using libraries which can make the most of the hardware available to them, as well as techniques like Just-In-Time compilation. Unfortunately, supporting multiple array libraries is not simple due to API differences, so such support has historically meant heavy duplication of work, with a whole new implementation for each alternative array library. This duplication of work is at best inefficient, and at worst infeasible for maintainers of many libraries.

The Python array API standard aims to standardise functionality which exists in most array libraries. It specifies an API which 'array-consumer' libraries can use to write 'array-agnostic' code, where the same codebase can support many array libraries at once.

In this talk, I give a brief introduction to the standard, before taking you on a tour of the standard's ecosystem, explaining how each library built around the standard fits into the bigger picture. I'll explain what the standard enables for SciPy and scikit-learn, and what else may be needed in the future.

After this talk, you'll be well-acquainted with the following libraries from the data-apis org:

I'll also be mentioning some exciting new tools like MArray.

Rough talk outline:

Lucas Colley

I am an undergraduate student studying Computer Science & Philosophy at the University of Oxford. Currently, I am a Mentee @ prefix.dev for European Summer of Code, working on Pixi and rattler-build.

I am also a maintainer of SciPy and array-api-extra, a member of the Consortium for Python Data API Standards, and a founding member of quantity-dev.