U
    h                     @   s:   d dl mZmZmZ G dd dedZG dd deZdS )    )ABCMetaabstractmethodabstractclassmethodc                   @   s2   e Zd Zedd Zedd ZddddZdS )	
DriverBasec                 C   s   d S N selfr   r   H/var/www/html/venv/lib/python3.8/site-packages/triton/backends/driver.py	is_active   s    zDriverBase.is_activec                 C   s   d S r   r   r   r   r   r
   get_current_target
   s    zDriverBase.get_current_targetN)returnc                 C   s   d S r   r   r   r   r   r
   __init__   s    zDriverBase.__init__)__name__
__module____qualname__r   r   r   r   r   r   r   r   r
   r      s
   

r   )	metaclassc                   @   s   e Zd Zdd Zdd ZdS )	GPUDriverc                    sd   dd l   jj| _zddlm} || _W n" tk
rJ    fdd| _Y nX  jj| _ jj	| _
d S )Nr   )_cuda_getCurrentRawStreamc                    s    j | jS r   )cudaZcurrent_streamZcuda_stream)idxtorchr   r
   <lambda>       z$GPUDriver.__init__.<locals>.<lambda>)r   r   Zget_device_capabilityZtorch._Cr   Zget_current_streamImportErrorZcurrent_deviceZget_current_deviceZ
set_deviceZset_current_device)r	   r   r   r   r
   r      s    


zGPUDriver.__init__c                 C   s   |S r   r   )r	   Ztensormaps_infoargsr   r   r
   assemble_tensormap_to_arg!   s    z#GPUDriver.assemble_tensormap_to_argN)r   r   r   r   r   r   r   r   r
   r      s   r   N)abcr   r   r   r   r   r   r   r   r
   <module>   s   