o
    "Õjà  ã                   @   sD   d dl mZmZmZ d dlmZ ddlmZ g ZG dd„ deƒZ	dS )é   )Úbroadcast_dp_parametersÚbroadcast_sep_parametersÚbroadcast_sharding_parameters)Úloggeré   )ÚMetaParallelBasec                       s$   e Zd Z‡ fdd„Zdd„ Z‡  ZS )ÚSegmentParallelc                    s   t ƒ j||fi |¤Ž d S )N)ÚsuperÚ__init__)ÚselfZlayersZhcgÚkwargs©Ú	__class__© úx/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/paddle/distributed/fleet/meta_parallel/segment_parallel.pyr
      s   zSegmentParallel.__init__c                 C   sl   t  d¡ t| j| jƒ | j ¡ dkrt  d¡ t| j| jƒ | j ¡ dkr4t  d¡ t| j| jƒ d S d S )Nzstart broadcast sep parametersr   z#start broadcast sharding parameterszstart broadcast dp parameters)	r   Úinfor   Z_layersZ_hcgZ get_sharding_parallel_world_sizer   Zget_data_parallel_world_sizer   )r   r   r   r   Ú_prepare_for_model   s   


þz"SegmentParallel._prepare_for_model)Ú__name__Ú
__module__Ú__qualname__r
   r   Ú__classcell__r   r   r   r   r      s    r   N)
Zutils.hybrid_parallel_utilr   r   r   Zutils.log_utilr   Zmeta_parallel_baser   Ú__all__r   r   r   r   r   Ú<module>   s
   