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

Multi-GPU Support #195

Open
dkermany opened this issue Aug 19, 2022 · 3 comments
Open

Multi-GPU Support #195

dkermany opened this issue Aug 19, 2022 · 3 comments

Comments

@dkermany
Copy link

Are there any means of using multiple GPUs to boost available memory, or future plans of enabling support for this? I have access to several GPUs on my machine however I have not been able to find a means of utilizing more than one at a time.

This is for running functions of very large 3D images where tiling produces unwanted results at the borders of the tiles.

@haesleinhuepf
Copy link
Member

Hi @dkermany ,

I programmed this attempt towards multi-GPU support long time ago:

It will be a lot of effort to finish this and that's why we're planning this for an upcoming major release (in a year or so).

tiling produces unwanted results at the borders of the tiles.

I presume you are aware you can avoid this by processing image tiles with overlap as shown here: https://haesleinhuepf.github.io/BioImageAnalysisNotebooks/32_tiled_image_processing/tiling_images_with_overlap.html

Last but not least: would it be an option to process parts of your image(s) in separate scripts? E.g. you run one script on GPU1 and another script on GPU2?

@dkermany
Copy link
Author

@haesleinhuepf thanks for such a rapid and helpful reply!

It will be a lot of effort to finish this and that's why we're planning this for an upcoming major release (in a year or so).

Thank you for letting me know. This is a great library and I appreciate the effort and will keep an eye out

I presume you are aware you can avoid this by processing image tiles with overlap as shown here:

I was NOT aware of this and how effective overlap can be! Thank you so much for reference!

Last but not least: would it be an option to process parts of your image(s) in separate scripts? E.g. you run one script on GPU1 and another script on GPU2?

Would this not be identical to tiling but faster? Since processing is still done in the context of sub-images that need to be stitched together

@haesleinhuepf
Copy link
Member

Would this not be identical to tiling but faster? Since processing is still done in the context of sub-images that need to be stitched together

Yes, I was mostly suggesting this because it is technically feasible, fast (multi-GPU) tiling. 🌞

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

No branches or pull requests

2 participants