Solved by tom in post #2 
              
              
                I have an old blog post describing how this works from a “where does my PyTorch function come from?” perspective. The key is the native_functions.yaml. From that the dispatching works to Convolution.cpp via autogenerated wrappers (torch/autograd/generated for the Python bindings, and also to go from…