-
Notifications
You must be signed in to change notification settings - Fork 947
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
Optimized pillow-simd needed to leverage new GPU instances #212
Comments
@jph00 This is great - thank you for the suggestion! After a quick glance at the step-by-step instructions, I believe there are some potential PATH conflicts with our current setup. I'll work with it and keep you updated! |
Terrific! @crawforc3, in the meantime, any chance you could update Kaggle kernels to use the latest version of the fastai library (0.7)? (I don't see any info about how often pip packages are updated, or if anything needs to be done to make that happen.) Once you've done that, I can start making some fastai examples available as kaggle kernels. |
@jph00 As long as fastai is up-to-date in pip you are good to go. When we build our docker image, it pulls the most recent packages and we try to update our docker images at least nightly. Sadly, the current docker image in production is about two weeks old. We ran into some problems with "updated" packages that have been preventing a stable build. However, I am delighted to say that I think we have a stable build this morning. After some testing I will try to get it pushed into production. |
@jph00 fastai 0.7.0 is now live in kernels. Please let us know if you run into any issues. |
Many thanks! :)
|
@crawforc3 Followup re fastai: GPU kernels are currently pytorch 0.3.1 + fastai 0.6. Does the cuda branch need a pull request on this? (Should I open a new issue?) Thanks for your help! |
Closing this because we are working on merging the GPU and non-GPU images which will solve this problem. |
@crawforc3 this issue is about pillow-simd which isn't directly related to that. Perhaps reopen so we can track that issue? |
That is a valid point! Re-opened :) |
Thank you |
@rosbo @crawforc3 I wonder if you'd consider reopening this? pillow-simd it now at version 9. It's hard and slow to install via pip - it requires using custom flags to compile with avx2 extensions, and care must be taken to ensure that it uses libjpeg-turbo (see the link I provided in the top post). In code competitions internet isn't available, making this even more complicated. |
cc @sebbov |
Hi @jph00,
I looked at our dependencies and they only require Pillow 8+. I am not a PIL expert and use it only for basic use cases. @jph00, do see any changes for > 9.0.0 that are worthwhile and we would be missing? https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst Thank you |
There's nothing I see there that's likely to be important for many Kagglers. Lots of folks are using 9.0 still -- in fact lots of folks still use v8!
Many thanks for your reply.
|
(Copied from https://www.kaggle.com/dansbecker/running-kaggle-kernels-with-a-gpu/code#328307 as requested by @sebbov ).
With the limited CPU available, being able to quickly read and manipulate images is important. Can I suggest you install pillow-simd with an optimized jpeg library? It will reduce CPU use by around 2-4x when training models, which will dramatically increase the utility of these new instances. The step by step instructions for installing it have been kindly provided by Soumith Chintala here (note that without these exact steps pillow-simd will not use libjpeg-turbo, even if you have it installed as your system libjpeg):
https://gist.github.com/soumith/01da3874bf014d8a8c53406c2b95d56b
I'm not familiar enough with docker to know what PR to send in exactly - hopefully this is enough info for the in-house experts to set it up.
The text was updated successfully, but these errors were encountered: