I’m not familiar with Dask and based on your description it seems you are using some kind of distributed setup.
If the gradients are None it’s usually a sign that Autograd hasn’t calculated these gradients yet. After the first iteration they should be valid or all zeros.
You’ve mentioned that your code is working if you don’t “mess” with forward?
Could you explain it a bit and what changes you made that seem to cause trouble?