Questions about dispatch to Aten library and control flow

Hi, hope you are doing well.

I’ve just started looking into Torch FX and have some high-level questions.
It will be great if you can share your insights or provide any reference to take a look at.

  1. How does TorchFX dispatch each tensor operator to Aten library? For example, I want to know what aten op that TorchFX lowers torch.mul into in the following example:

    %mul : [#users=1] = call_function[target=torch.mul](args = (%x, 0.1), kwargs = {})
    

    I’m looking for the equivalent-level of info (regarding aten ops) we get from each node in TorchScript after jit.trace.

    Float(10, strides=[1], requires_grad=0, device=cuda:0) = aten::mul(%x, %4)
    
  2. Does TorchFx have plan to support dynamic control flow in the future?

Thank you in advance!