-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
Add SIMD support by turning on/off global option #5791
Comments
Hi. I know this doesn't explicitly answer your question, but just to check, you are aware of https://github.com/uploadcare/pillow-simd / https://pypi.org/project/Pillow-SIMD ? |
@radarhere yeah I am. The package is no longer maintained(already 1 major version behind), and the maintainer does not respond. And I am negative to drop-in replacement-style package, as overriding transitive dependency would be hard. For instance, let's say we use a package named foo and it transitively depends on pillow.
To enhance performance, we should replace the pillow with pillow-simd of the same version(7.1.2)(or at least ^7.1.2 in case of semver). That's why I want a global switch option (programmatic and/or env var). |
Just looping in @homm on this one, since he is the expert. |
Many including me would like to have SIMD support in Pillow out of the box, but there is still no solution which could suit everyone. Discussion: uploadcare#8
There are some problems with applying SIMD patches atop of the current Pillow versions, the biggest of them is massive C code reformatting happened in latest Pillow versions. So it needs several days of my work, but eventually, it will happen.
So this is the real issue at this point? Is there any discussion in any of this repositories? |
Fyi, Pillow SIMD is no longer a version behind. Oh, and see also https://github.com/uploadcare/pillow-simd#why-do-not-contribute-simd-to-the-original-pillow |
I think this matter is better served by the issue in Pillow SIMD - uploadcare#8 |
Hi!
I know
pillow
deliberately has not included SIMD, aspillow
is used from various architectures, and selectively compiling is hard.What if, even if the package size can become larger,
pillow
provides a (programmatic or env var) global option which can be turned on/off in runtime. Users should turn on/off by their own explicit decision by understanding their own system.This way, the library does not have to care if the system is compatible or not. The decision would be up to the user.
How do you think?
Thanks.
The text was updated successfully, but these errors were encountered: