TorchDynamo with a frame:
def  _convert_frame_assert(frame: types.FrameType, cache_size: int):
Here is what this function does:


Checks if it has seen this "code"(see: f_code here) before and
   exits early if it did.


Checks if the code is an unsupported case.


Checks if the "cache_size" (second arg above) crosses the limit
   defined in the config, "cache_size_limit". If it has, the function
   drops the frame and logs warnings. This helps to avoid constant
   recompilation of a frame as it generally means that the frame is
   hot in an unexpected way and caching it produces needless overhead,
   as it is likely to get evicted the next time it is encountered.


Passes the frame, alongside a function that creates an
   "InstructionTranslator" through bytecode transformation, via
   "transform_code_object". A few crucial things happen under the hood
   here:


New code is produced through "transform_code_object".


An FX tracer named "output" is produced through

