Ë
    g^(hÄf  ã            	       ó`  — U d Z ddlZddlZddlZddlZddlmZmZ ddlm	Z	m
Z
mZmZmZmZ ddlmZ ddlmZmZmZ dZee   ed<   ej0                  j3                  dd	«      d
k(  ZdZdZdZdZdZdZ dZ! ed¬«      Z"e#ed<    ed¬«      Z$e#ed<    ed¬«      Z%e&ed<    ed¬«      Z'e&ed<   dZ(dZ)dZ*ej0                  j3                  dd
«      d
k(  Z+dZ,dZ-dZ.ed   ed<   dZ/dZ0dZ1dZ2dZ3ej0                  j3                  dd	«      d
k(  Z4 e5«       Z6e5e7e	      ed<    e&ej0                  j3                  dd«      «      Z8ej0                  j3                  d d	«      d
k(  Z9dZ:ej0                  j3                  d!d«      Z;ej0                  j3                  d"d«      Z<i Z=e>e	e	f   ed#<   h d$£Z?ej0                  j3                  d%d«      Z@ e#ej0                  j3                  d&d'«      «      ZAej0                  j3                  d(«      d
k(  ZBd)ZCej0                  j3                  d*«      d
k(  ZDdZEej0                  j3                  d+«      d
k(  ZFej0                  j3                  d,d	«      d
k(  ZGdZHdZIdZJdZKdZLee&ed-   f   ed.<   ej0                  j3                  d/d	«      d
k(  ZMe&ed0<   dZNdZOdZPdZQdZRdZSdZTdZUdZVdZWdZXdZY e«       rdndZZdZ[dZ\ e e e ee]«      «      «      «      Z^dZ_d1Z`d2Zad3ZbdZcdZddZedZfdZg edd4¬5«      ZhdZidZjdZkdZldZmdZnd6„ Zo eo«       Zph d7£ZqdZrdZsdZtdZudZvdZw e5«       Zxe5e
e	gdf      ed8<    e5«       Zye5e
d9e	f      ed:<   dZzg d;¢Z{g d<¢Z|ej0                  j3                  d=d
«      d
k(  Z}ej0                  j3                  d>d	«      d
k(  Z~dZi Z€e>ee	f   ed?<   ej0                  j3                  d@d	«      d
k(  Z� edAdBd¬C«      Z‚e&edD<    edE«      Zƒee&   edF<   ej0                  j3                  dGd	«      d
k(  Z„ eddHdI¬J«      Z…dZ†ee	   edK<   erddLl‡­ dM„ Zˆ ee�j                  eŠ   «       y)Naq  
Configuration module for TorchDynamo compiler and optimization settings.

This module contains various configuration flags and settings that control TorchDynamo's
behavior, including:
- Runtime behavior flags (e.g., guard settings, specialization options)
- Debugging and development options
- Performance tuning parameters
- Feature toggles for experimental features
é    N)ÚabspathÚdirname)ÚAnyÚCallableÚLiteralÚOptionalÚTYPE_CHECKINGÚUnion)Ú	is_fbcode)ÚConfigÚget_tristate_envÚinstall_config_moduleÚlog_file_nameÚTORCHDYNAMO_VERBOSEÚ0Ú1Fé   Té   é   z$torch._dynamo.config.recompile_limit)ÚaliasÚcache_size_limitz0torch._dynamo.config.accumulated_recompile_limitÚaccumulated_cache_size_limitz?torch._dynamo.config.skip_code_recursive_on_recompile_limit_hitÚ&skip_code_recursive_on_cache_limit_hitz0torch._dynamo.config.fail_on_recompile_limit_hitÚfail_on_cache_limit_hitÚ#TORCH_COMPILE_USE_LAZY_GRAPH_MODULEÚdynamic)r   ÚunbackedÚ automatic_dynamic_shapes_mark_asÚTORCHDYNAMO_PREPARE_FREEZINGÚtraceable_tensor_subclassesÚTORCHDYNAMO_SUPPRESS_ERRORSÚTORCH_COMPILE_REPLAY_RECORDÚTORCH_COMPILE_DISABLEÚTORCH_COMPILE_CPROFILEÚ!skipfiles_inline_module_allowlist>   útorch._refsútorch._primsútorch._decompútorch.testingútorch.distributionsÚTORCHDYNAMO_REPRO_AFTERÚTORCHDYNAMO_REPRO_LEVELé   ÚTORCHDYNAMO_REPRO_FORWARD_ONLYgü©ñÒMbP?ÚTORCHDYNAMO_REPRO_IGNORE_NON_FPÚ"TORCHDYNAMO_CAPTURE_SCALAR_OUTPUTSÚ,TORCHDYNAMO_CAPTURE_DYNAMIC_OUTPUT_SHAPE_OPS)Úddp_optimizerÚpython_reducerÚ'python_reducer_without_compiled_forwardÚno_optimizationÚoptimize_ddpÚ(TORCH_DYNAMO_DO_NOT_EMIT_RUNTIME_ASSERTSÚdo_not_emit_runtime_assertsÚfloat64Ú
complex128Úint64z*pytorch/compiler:inline_inbuilt_nn_modules)ÚdefaultÚjustknobc                  óŽ  — d} | t         j                  v r1t         j                  j                  t         j                  |    d«      S t	        «       rEt         j                  j                  t        j                  «       t        j                  «       d«      S t         j                  j                  t        j                  «       d«      S )NÚTORCH_COMPILE_DEBUG_DIRÚtorch_compile_debug)
ÚosÚenvironÚpathÚjoinr   ÚtempfileÚ
gettempdirÚgetpassÚgetuserÚgetcwd)ÚDEBUG_DIR_VAR_NAMEs    úR/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torch/_dynamo/config.pyÚdefault_debug_dir_rootrL   Á  s„   € à2ÐØœRŸZ™ZÑ'Ü�w‰w�|‰|œBŸJ™JÐ'9Ñ:Ð<QÓRÐRÜ	ŒÜ�w‰w�|‰|Ü×ÑÓ!¤7§?¡?Ó#4Ð6Kó
ð 	
ô �w‰w�|‰|œBŸI™I›KÐ)>Ó?Ð?ó    >   Úrepro_afterÚrepro_levelÚconstant_functionsr%   Úreorderable_logging_functions.Úignore_logger_methods)ÚlayoutÚis_negÚis_conjÚ	is_pinned)ÚstrideÚstorage_offsetÚis_contiguousÚ TORCH_FAKE_TENSOR_DISPATCH_CACHEÚ+TORCH_FAKE_TENSOR_DISPATCH_CACHE_CROSSCHECKÚ!compiled_autograd_kwargs_overrideÚTORCH_COMPILER_COLLECTIVESz7pytorch/remote_cache:enable_local_automatic_dynamic_pgoÚ(TORCH_DYNAMO_AUTOMATIC_DYNAMIC_LOCAL_PGO)r=   Úenv_name_forcer<   Úautomatic_dynamic_local_pgoÚ)TORCH_DYNAMO_AUTOMATIC_DYNAMIC_REMOTE_PGOÚautomatic_dynamic_remote_pgoÚUNSAFE_SKIP_FSDP_MODULE_GUARDSz,pytorch/compiler:enable_run_gc_after_compileÚ!TORCH_DYNAMO_RUN_GC_AFTER_COMPILE)r<   r=   Úenv_name_defaultÚ_custom_ops_profile)Ú*c                   ó   — y )N© )Úchangess    rK   Ú_make_closure_patcherrk   ]  s   � rM   )‹Ú__doc__rG   rA   ÚsysrE   Úos.pathr   r   Útypingr   r   r   r   r	   r
   Útorch._environmentr   Útorch.utils._config_moduler   r   r   r   ÚstrÚ__annotations__rB   ÚgetÚverboseÚverify_correctnessÚminimum_call_countÚdead_code_eliminationÚrecompile_limitÚaccumulated_recompile_limitÚ*skip_code_recursive_on_recompile_limit_hitÚfail_on_recompile_limit_hitr   Úintr   r   Úboolr   Úspecialize_intÚspecialize_floatÚdynamic_shapesÚuse_lazy_graph_moduleÚassume_static_by_defaultÚautomatic_dynamic_shapesr   Úforce_parameter_static_shapesÚ&force_nn_module_property_static_shapesÚallow_ignore_mark_dynamicÚguard_nn_modulesÚ guard_nn_modules_using_dict_tagsÚprepare_freezingÚsetr    ÚtypeÚsuppress_errorsÚreplay_record_enabledÚ rewrite_assert_with_torch_assertÚdisableÚcprofiler%   ÚdictÚ*allowed_functions_module_string_ignorelistrN   rO   Úrepro_forward_onlyÚrepro_toleranceÚrepro_ignore_non_fpÚsame_two_models_use_fp64Úcapture_scalar_outputsÚ capture_dynamic_output_shape_opsÚ+prefer_deferred_runtime_asserts_over_guardsÚ'allow_complex_guards_as_runtime_assertsÚ3force_unspec_int_unbacked_size_like_on_torchrec_kjtÚallow_unspec_int_on_nn_moduler6   r8   Úskip_torchrecÚoptimize_ddp_lazy_compileÚskip_fsdp_guardsÚskip_fsdp_hooksÚskip_nnmodule_hook_guardsÚ,skip_no_tensor_aliasing_guards_on_parametersÚ*skip_tensor_guards_with_matching_dict_tagsÚraise_on_ctx_manager_usageÚraise_on_unsafe_aot_autogradÚerror_on_nested_jit_traceÚerror_on_nested_fx_traceÚ	allow_rnnÚcapture_sparse_computeÚerror_on_recompileÚreport_guard_failuresÚ__file__Úbase_dirÚtrace_numpyÚnumpy_default_floatÚnumpy_default_complexÚnumpy_default_intÚuse_numpy_random_streamÚenable_cpp_guard_managerÚ enable_cpp_symbolic_shape_guardsÚenable_trace_contextlibÚ"enable_faithful_generator_behaviorÚinline_inbuilt_nn_modulesÚ!enable_cpp_framelocals_guard_evalÚuse_graph_deduplicationÚtrack_nodes_for_deduplicationÚissue_3_13_0_warningÚallow_empty_graphsÚ%record_compile_time_instruction_countrL   Údebug_dir_rootÚ_save_config_ignoreÚ%cudagraph_backend_keep_input_mutationÚ(cudagraph_backend_support_input_mutationÚonly_allow_pt2_compliant_opsÚcapture_autograd_functionÚcapture_func_transformsÚlog_compilation_metricsrQ   rR   Ú+inject_BUILD_SET_unimplemented_TESTING_ONLYÚ)_autograd_backward_strict_mode_banned_opsÚ5_autograd_backward_strict_mode_conditional_banned_opsÚfake_tensor_cache_enabledÚ$fake_tensor_cache_crosscheck_enabledÚcompiled_autogradr\   Úenable_compiler_collectivesr`   rb   Ú_unsafe_skip_fsdp_module_guardsÚrun_gc_after_compilerf   Útorch.utils._config_typingrk   ÚmodulesÚ__name__ri   rM   rK   ú<module>rÓ      s  ðò	ó Û 	Û 
Û ß $ß I× Iå (ß VÑ Vð  $€ˆx˜‰}Ó #ð �*‰*�.‰.Ð.°Ó
4¸Ñ
;€ð Ð ð Ð ð Ð ð €ð "Ð ð .2Ð *ð $Ð áÐ%KÔLÐ �#Ó LÙ$*Ø
<ô%Ð ˜có ñ
 06Ø
Kô0Ð &¨ó ñ !'Ø
<ô!Ð ˜ó ð €ð
 Ð ð €ð ‡J�J‡N�NÐ8¸#Ó>À#ÑEð ð  Ð ð  Ð ð DMÐ   'Ð*?Ñ"@Ó Lð !%Ð ð
 *.Ð &ð "Ð ð Ð ð $(Ð  ð
 —:‘:—>‘>Ð"@À#ÓFÈ#ÑMÐ ñ( /2«eÐ ˜S  c¡™^Ó 3ñ �r—z‘z—~‘~Ð&CÀUÓKÓL€ð
 Ÿ
™
Ÿ™Ð'DÀcÓJÈcÑQÐ ð $(Ð  ð �*‰*�.‰.Ð0°%Ó
8€ð �:‰:�>‰>Ð2°EÓ:€ð 57Ð ! 4¨¨S¨¡>Ó 6ò.Ð *ð �j‰j�n‰nÐ6¸Ó=€ñ �"—*‘*—.‘.Ð!:¸AÓ>Ó?€ð —Z‘Z—^‘^Ð$DÓEÈÑLÐ ð
 €ð —j‘j—n‘nÐ%FÓGÈ3ÑNÐ ð  Ð ð
 Ÿ™Ÿ™Ð(LÓMÐQTÑTÐ ð ‡J�J‡N�NÐAÀ3ÓGÈ3ÑNð !ð
 /4Ð +ð +0Ð 'ð 7<Ð 3ð !&Ð ð4 	ð ˆeØØð	ñðñó 	ð  ‡J�J‡N�NÐ=¸sÓCÀsÑJð ˜Tó ð
 €ð "Ð ð Ð ð €ð
 !Ð ð 04Ð ,ð .2Ð *ð "Ð ð  %Ð ð !Ð ð  Ð ð €	ñ #,¤+™°4Ð ð
 Ð ð Ð ñ ‘7™7¡7¨8Ó#4Ó5Ó6Ó7€ð €ð  Ð Ø$Ð ØÐ ð  Ð ð  Ð ð $)Ð  ð Ð ð &*Ð "ñ #ØØ9ôÐ ð %)Ð !ð  Ð ð !&Ð ð
 Ð ð Ð ð ).Ð %ò
@ñ (Ó)€òÐ ð ).Ð %ð ,1Ð (ð  %Ð ð !Ð ð Ð ð Ð ñ =@»EÐ ˜s 8¨S¨E°4¨KÑ#8Ñ9Ó Añ 25³Ð �s˜8 C¨ HÑ-Ñ.Ó 6ð /4Ð +ò-Ð )ò9Ð 5ð ‡J�J‡N�NÐ5°sÓ;¸sÑBð ð ‡J�J‡N�NÐ@À#ÓFÈ#ÑMð %ð Ð ð 57Ð ! 4¨¨S¨¡>Ó 6ð !Ÿj™jŸn™nÐ-IÈ3ÓOÐSVÑVÐ ñ. %+ØFØ=Øô%Ð ˜Tó ñ 0@Ø/ó0Ð ˜h t™nó ð ‡J�J‡N�NÐ3°SÓ9¸SÑ@ð  ñ
 ØØ;Ø8ôÐ ð &*Ð �X˜c‘]Ó )áÜ,â-ñ �c—k’k (Ñ+Õ ,rM   