Ë
    Ž”vh%  ã                   ó^  — d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm	Z	 dd	lm
Z
 dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z  ddlm!Z! ddlm"Z" ddlm#Z# ddlm$Z$ ddlm%Z% dd lm&Z& dd!lm'Z' dd"lm(Z( dd#lm)Z) dd$lm*Z* dd%l+m,Z, dd&l+m-Z- dd'l.m/Z/ dd(l0m1Z1 dd)l0m2Z2 dd*l0m3Z3 dd+l0m4Z4 dd,l5Z5dd-l6m7Z7 dd.l6m8Z8 dd/l6m9Z9 dd0l6m:Z:  e5jv                  e7e8e9e:¬1«      Z<[5[7[8[9[:ejz                  Z=ej|                  Z>ej~                  Z?ej€                  Z@ej‚                  ZAej„                  ZBdd,lCZDeDjŠ                  reZFeZG[Dy,dd2lHmIZJ d3efd4efd5œZK eJeLeK«      ZM[J[Dy,)6zMosaic-specific Pallas APIs.é    )Úcore)Ú	ARBITRARY)Úcreate_tensorcore_mesh)Údma_semaphore)ÚGridDimensionSemantics)Ú
KernelType)ÚPARALLEL)ÚPrefetchScalarGridSpec)ÚSemaphoreType)ÚMemorySpace)ÚCompilerParams)Ú	sync_copy)Úcore_barrier)Úrun_on_first_core)ÚInterpretParams)ÚLoweringException)ÚBufferedRef)ÚBufferedRefBase)Úemit_pipeline)Úemit_pipeline_with_allocations)Úget_pipeline_schedule)Úmake_pipeline_allocations)Ú
async_copy)Úasync_remote_copy)Úbitcast)Údelay)Úget_barrier_semaphore)Úget_memory_space)Úmake_async_copy)Úmake_async_remote_copy)Úprng_random_bits)Ú	prng_seed)Úrepeat)Úroll)Úwith_memory_space_constraint)Úsample_block)Úto_pallas_key)Ú	semaphore)ÚDeviceIdType)Úsemaphore_read)Úsemaphore_signal)Úsemaphore_waitN)Úassume)Úpretend)Úskip)Údefine_model)r-   r.   r/   r0   )Údeprecation_getattrz<TPUCompilerParams is deprecated, use CompilerParams instead.z6TPUMemorySpace is deprecated, use MemorySpace instead.)ÚTPUCompilerParamsÚTPUMemorySpace)NÚ__doc__Újax._src.pallas.mosaicr   Újax._src.pallas.mosaic.corer   r   r   r   r   r	   r
   r   r   r   Újax._src.pallas.mosaic.helpersr   r   r   Ú jax._src.pallas.mosaic.interpretr   Újax._src.pallas.mosaic.loweringr   Újax._src.pallas.mosaic.pipeliner   r   r   r   r   r   Ú!jax._src.pallas.mosaic.primitivesr   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   Újax._src.pallas.mosaic.randomr&   r'   Újax._src.pallas.corer(   Újax._src.pallas.primitivesr)   r*   r+   r,   ÚtypesÚ#jax._src.pallas.mosaic.verificationr-   r.   r/   r0   ÚSimpleNamespaceÚverificationÚANYÚCMEMÚSMEMÚVMEMÚHBMÚ	SEMAPHOREÚtypingÚ_typingÚTYPE_CHECKINGr2   r3   Újax._src.deprecationsr1   Ú_deprecation_getattrÚ_deprecationsÚ__name__Ú__getattr__© ó    úV/opt/face_recognition/venv/lib/python3.12/site-packages/jax/experimental/pallas/tpu.pyú<module>rT      sX  ðñ #å /Ý >Ý XÝ FÝ XÝ @Ý <Ý XÝ FÝ BÝ HÝ AÝ GÝ QÝ OÝ RÝ FÝ NÝ JÝ lÝ ZÝ bÝ FÝ TÝ @Ý <Ý \Ý RÝ PÝ ^Ý RÝ DÝ >Ý :Ý jÝ FÝ Hõ 8Ý CÝ GÝ KÝ Gã Ý 6Ý 7Ý 4Ý <Ø$ˆu×$Ñ$Ø˜7¨¸Lô€ð 
ˆ67˜D ,à‡oo€Ø×Ñ€Ø×Ñ€Ø×Ñ€Ø‡oo€Ø×!Ñ!€	ã Ø
×ÒØ$ÐØ€.ñ  õ Pð IØ
ðð
 CØ
ðñ
€-ñ % X¨}Ó=€+ØÙrR   