Skip to content

NEP: array API standard adoption (NEP 47)#18456

Merged
charris merged 1 commit intonumpy:masterfrom
data-apis:nep-array-api-standard
Feb 26, 2021
Merged

NEP: array API standard adoption (NEP 47)#18456
charris merged 1 commit intonumpy:masterfrom
data-apis:nep-array-api-standard

Conversation

@rgommers
Copy link
Copy Markdown
Member

@rgommers rgommers commented Feb 21, 2021

This NEP proposes adoption the array API standard (https://data-apis.github.io/array-api/latest/) in NumPy.
This will add a new numpy.array_api submodule containing that standardized API.

The main purpose of this API is to be able to write code that is portable to other array/tensor libraries like CuPy, PyTorch, JAX, TensorFlow, Dask, and MXNet.

We expect this NEP to remain in draft state for quite a while, while we're gaining experience with using it in downstream libraries, discuss adding it to other array libraries, and finishing some of the loose ends (e.g., specifications for linear algebra functions that aren't merged yet, see https://github.com/data-apis/array-api/pulls) in the API standard itself.

See https://mail.python.org/pipermail/numpy-discussion/2020-November/081181.html for an initial discussion about this topic.

To see a rendered version of this NEP, use "build - Details" in the CI status of this PR:
image
then browse to the "Artifacts" tab and search for "nep-0047" and click on the file link

This NEP proposes adoption the array API standard
(https://data-apis.github.io/array-api/latest/) in NumPy.
This will add a new `numpy.array_api` submodule containing that
standardized API.

The main purpose of this API is to be able to write code that is
portable to other array/tensor libraries like CuPy, PyTorch,
JAX, TensorFlow, Dask, and MXNet.
@shoyer
Copy link
Copy Markdown
Member

shoyer commented Feb 21, 2021

I'm struggling to find a link to the rendered doc. The link "NumPy Enhancement Proposals" in the generated doc page from circleci points straight to https://numpy.org/neps/, which doesn't show NEP 47 yet.

@rgommers
Copy link
Copy Markdown
Member Author

Ah, forgot about the neps folder having a separate Makefile and build step, which messes up the linking. I'll update the instructions, here is a direct link: https://18468-908607-gh.circle-artifacts.com/0/doc/neps/_build/html/nep-0047-array-api-standard.html

@charris
Copy link
Copy Markdown
Member

charris commented Feb 26, 2021

Should we go ahead in put this in? That will make it easy to find for future discussion.

@shoyer
Copy link
Copy Markdown
Member

shoyer commented Feb 26, 2021 via email

@rgommers
Copy link
Copy Markdown
Member Author

Sounds good to me, thanks Chuck

@charris charris merged commit d2b969d into numpy:master Feb 26, 2021
@charris
Copy link
Copy Markdown
Member

charris commented Feb 26, 2021

Thanks Ralf.

@leofang
Copy link
Copy Markdown
Contributor

leofang commented Feb 26, 2021

Wow this is quick! Thanks all!

@shoyer
Copy link
Copy Markdown
Member

shoyer commented Feb 26, 2021 via email

@jakirkham
Copy link
Copy Markdown
Contributor

Where should we look for the rendered version? Looking here ( https://numpy.org/neps/ ), but am not sure if the docs are still building or if I'm looking in the wrong place 😅

@seberg
Copy link
Copy Markdown
Member

seberg commented Feb 26, 2021

@jakirkham
Copy link
Copy Markdown
Contributor

Thanks Sebastian! 😄 Must have overlooked it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants