What is the difference between torch.vmap and functorch?

Just out of curiosity.
It seems that the torch.vmap in the unstable pytorch version has very similar functionality with the functorch. Do you have any suggestion on which one to use in practice?


The torch.vmap works fine even though it lacks some kernels for perf.
It is limited though on how you can compose it with the autograd engine.

functorch is a trying alleviate this limitation.

Thanks! It’s a very helpful message!