o
    TiF                     @   s    d dl mZ G dd deZdS )   )CUDAOpBuilderc                       sF   e Zd ZdZdZd fdd	Zdd Zdd	 Zd
d Zdd Z	  Z
S )TransformerBuilderDS_BUILD_TRANSFORMERtransformerNc                    s$   |d u r| j n|}t j|d d S )N)name)NAMEsuper__init__)selfr   	__class__ X/home/ubuntu/.local/lib/python3.10/site-packages/deepspeed/ops/op_builder/transformer.pyr	      s   zTransformerBuilder.__init__c                 C   s   d| j  dS )Nzdeepspeed.ops.transformer._op)r   r
   r   r   r   absolute_name   s   z TransformerBuilder.absolute_namec                 C   s   |   sdgS g S )Nz-lcurand)is_rocm_pytorchr   r   r   r   extra_ldflags   s   z TransformerBuilder.extra_ldflagsc                 C   s   g dS )N)z(csrc/transformer/ds_transformer_cuda.cppz#csrc/transformer/cublas_wrappers.cuz%csrc/transformer/transform_kernels.cuz csrc/transformer/gelu_kernels.cuz#csrc/transformer/dropout_kernels.cuz%csrc/transformer/normalize_kernels.cuz#csrc/transformer/softmax_kernels.cuz#csrc/transformer/general_kernels.cur   r   r   r   r   sources   s   zTransformerBuilder.sourcesc                 C   s
   dg}|S )Nzcsrc/includesr   )r
   includesr   r   r   include_paths"   s   z TransformerBuilder.include_paths)N)__name__
__module____qualname__	BUILD_VARr   r	   r   r   r   r   __classcell__r   r   r   r   r   	   s    r   N)builderr   r   r   r   r   r   <module>   s   