-
-
Notifications
You must be signed in to change notification settings - Fork 83
Allocate workspace repeatedly right before calling into CUDNN. #517
Conversation
This to deal with GC runs affecting CUDNN workspace size heuristics.
One other possibility is to have a CuArrays equivalent of One concern with using anonymous functions like this is that it could end up producing a lot of untyped slots, but hopefully it's simple enough to avoid that. |
It's only going to actually free stuff when it's really needed though (to prevent OOM), so we can't disable that. And disabling the Julia GC won't do anything, because those finalizers only put stuff back in the pool, and don't actually free (for now).
The code looks good, fully typed and all closures inlined. Pretty bloaty still, but not significantly worse with these extra closures. |
Code looks okay but it seems just CI system failure. please rerun? |
Suddenly, I feel dangerous to have possibility of infinite loop. How about change |
It could only be infinite if the required workspace increases forever. Not vouching for CUDNN but at any rate, the memory allocation will error out eventually. |
Did some more work on |
1a2a500
to
0dc2ac5
Compare
This should be good to go if CI passes. Might also be the time for some feedback on the |
9a42d5b
to
dcde287
Compare
This to deal with GC runs affecting CUDNN workspace size heuristics.
cc @MikeInnes