Skip to content
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

support mindspore #323

Closed
wants to merge 1 commit into from
Closed

support mindspore #323

wants to merge 1 commit into from

Conversation

lvyufeng
Copy link

No description provided.

@lvyufeng
Copy link
Author

after almost 2 years, I have to make this pull request again since many ML/DL repos need einops to construct the model. I can maintain the MindSpore support as community developer(same as oneflow/tinygrad).

FYI, the einsum operator in MindSpore only support GPU currently, but I have patched them in MindNLP(https://github.com/mindspore-lab/mindnlp) to support other devices(CPU/NPU)

@arogozhnikov arogozhnikov deleted the branch arogozhnikov:master September 15, 2024 14:23
@arogozhnikov
Copy link
Owner

Hi Nate,

(all PRs were closed yestrday automatically because of branch switch master -> main).

A bit of previous context and my experience:

Every time I get back to work on einops, at least one of frameworks had broken something in framework (installation method is broken, CPU support is absent in release, even some bugs in their operations / conversions). This means I need to spend time debugging, reporting and then it takes them months to fix, while it should've taken hours at best.

Since there is nothing to fix on einops side, I end up just turning off backend in CI (and that's not great).

Even commits from framework maintainers did not guarantee prompt response from their side.


So I am switching testing model from 'einops tests all integrations' to 'framework tests its integration against einops'.

This makes more sense because these tests are apparently good at detecting problems in frameworks (you can find testing details in the README)


Array API is new reality and I ask developers to just implement API because other tools (e.g. sklearn) can use this API too.


If there is still interest in having layers for framework (they can't be provided via array API) and einsum, I will accept a PR if einops tests are run in framework CI, so that framework took care about tehese problems before release, not after.

I hope my motivation is clear: things should be tested, and team behind framework should be involved in this process.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants