
    )`i                         d dl mZ d dlZd dlmZmZ dej        fdZdej        fdZdej        dej        fd	Z		 dd
eej                 dee
         dee
         fdZdS )    )ListN)get_compute_capabilityGPUArchitectureErrorxc                     | j         sJ t          |            d            |                                 sJ t          |            d            d S )Nz must be a CUDA Tensorz must be contiguous)is_cudastris_contiguous)r   s    k/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/flashinfer/triton/utils.pycheck_inputr      sY    977Q777779??<<Q<<<<<<<    c                 p    |                                 | k    sJ t          |           d|  d            d S )Nz must be a zD tensor)dimr	   )dr   s     r   	check_dimr      s8    5577a<<<CFF::q:::<<<<<r   abc                 v   |                                  |                                 k    s
J d            t          |                                            D ]b}|                     |          |                    |          k    s4J d|                                  d|                                             cd S )Nztensors should have same dimztensors shape mismatch,  and )r   rangesize)r   r   is      r   check_shaper      s    5577aeegg=15577^^ 
 
vvayyAFF1II%%%@qvvxx@@affhh@@ &%%%
 
r   tensorsmajorminorc                 
   | d         j         }| D ]"}|j         |k    sJ d| d|j                      #||Ht          |          \  }}|||vrt          d| d|           |||vrt          d| d|           d S d S d S )Nr   z2All tensors should be on the same device, but got r   zDevice major should be in z
, but got zDevice minor should be in )devicer   r   )r   r   r   r   tactual_majoractual_minors          r   check_devicer"      s     QZF 
 
x6!!!XXXahXX "!!! E-%;F%C%C"lU!:!:&LULLlLL   U!:!:&LULLlLL   .- !:!:r   )NN)typingr   torchflashinfer.utilsr   r   Tensorr   r   r   intr"    r   r   <module>r)      s           I I I I I I I I=5< = = = =
;EL ; ; ; ;
5< 
EL 
 
 
 
 NR %,(,S	AEc     r   