
    Ph                        d dl mZmZ ddgZddgZ eddge        edd	d
g        edd        ede        edd        ede        edd        eddd        eddd        eddd        edd        edd        edd         ed!d"        ed#d$        ed%d&d        ed'd(        ed)d*        ed+d,d        ed-d.        ed/d0d        ed1d2dd3        ed4d5d        ed6d7        ed8d9dd:        ed;d<d        ed=dd        ed>dd        ed?d@d        edAdBd        edCdDdE       yF)G   )register_artifactregister_logz%torch.fx.experimental.symbolic_shapesztorch.fx.experimental.sym_nodeztorch.distributedz"torch._dynamo.backends.distributeddynamoztorch._dynamoaotztorch._functorch.aot_autogradztorch._functorch._aot_autogradinductorztorch._inductordynamictorchdistributedonnxz
torch.onnxguardszhThis prints the guards for every compiled Dynamo frame. It does not tell you where the guards come from.T)visibleverbose_guards )off_by_defaultbytecodez{Prints the original and modified bytecode from Dynamo. Mostly useful if you're debugging our bytecode generation in Dynamo.graphzvPrints the dynamo traced graph (prior to AOTDispatch) in a table. If you prefer python code use `graph_code` instead. 
graph_codez4Like `graph`, but gives you the Python code instead.graph_sizesz5Prints the sizes of all FX nodes in the dynamo graph.trace_sourcezAs we execute bytecode, prints the file name / line number we are processing and the actual source code. Useful with `bytecode`
trace_callzhLike trace_source, but it will give you the per-expression blow-by-blow if your Python is recent enough.
aot_graphszPrints the FX forward and backward graph generated by AOTDispatch, after partitioning. Useful to understand what's being given to Inductoraot_joint_graphz_Print FX joint graph from AOTAutograd, prior to partitioning. Useful for debugging partitioningpost_grad_graphsz}Prints the FX graph generated by post grad passes. Useful to understand what's being given to Inductor after post grad passescompiled_autogradzzPrints various logs in compiled_autograd, including but not limited to the graphs. Useful for debugging compiled_autograd.
ddp_graphszOnly relevant for compiling DDP. DDP splits into multiple graphs to trigger comms early. This will print each individual graph here.
recompilesz?Prints the reason why we recompiled a graph. Very, very useful.recompiles_verbosezPrints all guard checks that fail during a recompilation. At runtime, Dynamo will stop at the first failed check for each failing guard. So not all logged failing checks are actually ran by Dynamo.)r   r   graph_breakszPrints whenever Dynamo decides that it needs to graph break (i.e. create a new graph). Useful for debugging why torch.compile has poor performancenot_implementedzPrints log messages whenever we return NotImplemented in a multi-dispatch, letting you trace through each object we attempted to dispatch tooutput_codez>Prints the code that Inductor generates (either Triton or C++))r   r   schedulezIInductor scheduler information. Useful if working on Inductor fusion algo
perf_hintsonnx_diagnosticsfusionzADetailed Inductor fusion decisions. More detailed than 'schedule'overlapz0Detailed Inductor compute/comm overlap decisionscustom_format_test_artifactzTesting only)
log_formatN)	_internalr   r   DYNAMICDISTRIBUTED     hC:\Users\daisl\Desktop\realtime-object-detection\venv\Lib\site-packages\torch/_logging/_registrations.py<module>r.      s&   624T
U"$HI X2'2 3 U46VW X Z* + Y   Wg  ]K ( V\ " n
 "Bt <  B
 | , V W J  F n  Q
 e  D  A
  K E
 C   Y
  S D	 O
 ,4 8 $b > G
 6 /B Or,   