-
Notifications
You must be signed in to change notification settings - Fork 58
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
Performance issues on a large (120724) location dataset #375
Comments
Hi @Dillon214 Exciting data you have. Please have a look at this issue for practical suggestions about working with large data #356 We find the best performance when training cell2location with batch size equal to full data. This limits batch size by GPU memory. Roughly 18k genes * 60k locations for 80GB A100. Are you using
This is very slow. Could you confirm that the GPU is used?
Cell2location doesn't support using multiple GPUs - only one GPU was used.
This sounds expected. |
Hi Viktl, Thanks for the speedy reply. And no, I was adjusting the batch_size argument to avoid out of memory errors. I'm no expert, but I'm guessing the size of the dataset exceeds the memory capacity of a single GPU. And yes, I can confirm that a GPU is being used. See attached image. Based on the suggestions in the issue you posted, it seems like splitting the dataset into chunks, stratified by batch and other relevant variables perhaps, is a good idea for evading slowdown issues. Do you still reccomend this? I tested this a bit, and it seemed to speed up processing dramatically. I suppose afterwards the results can be re-merged. -Dillon |
Using
Yes, but you also need to set With |
Hi Vitkl, I followed the code you posted in that other thread for subsetting and individually processing multiple objects, and experienced much better training times. Would it be fine to perform this process for each individually processed object, then merge the results, or do you think a different approach should be taken? -Dillon |
Hello cell2location devs,
I am working with a large visium dataset (12240 features, 120724 locations), and am running into issues when it comes to training the cell2location.models.Cell2location model. The specific issue is very simple, it's just too slow. I was getting a speed of about 10 seconds per iteration, and across 30000 iterations I was hitting estamated completion times of about 80 hours. I am running in GPU mode, and throwing additional a40 cores at the issue didn't seem to improve speed, I was using 8 with my latest run. I also tried batching the data so each batch was about 30,000 cells, which also didn't improve speed.
Do you have any advice for me? I would be greatly appreciative, as I have used this package before on a smaller dataset to great success, and it was done training in only a few hours.
sincerely,
Dillon Brownell
The text was updated successfully, but these errors were encountered: