
    wgY              	           d dl Z d dlmZmZmZmZmZ ee ed       ed       G d de                                  Zedk(  r e j                          yy)    N)CUDATestCaseskip_on_cudasimskip_if_cudadevrt_missingskip_unless_cc_60skip_if_mvc_enabledzCG not supported with MVCz4cudasim doesn't support cuda import at non-top-levelc                       e Zd Zd Zy)TestCooperativeGroupsc                   
 ddl m
m} dd l}|d d d d df   f}
j	                  |      
fd       }|j                  d|j                        }d}|j                  d   |z  }|j                  |   j                  |      }||k  r| j                  d        |||f   |       |j                  |j                  d	      d
      j                  }	|j                  j                  ||	       y )Nr   )cudaint32   c                    j                  d      }j                  j                         }| j                  d   }| j                  d   }t	        d|      D ],  }||z
  dz
  }| |dz
  |f   dz   | ||f<   |j                          . y )Nr   r   )gridcg	this_gridshaperangesync)Mcolgrowscolsrowoppositer   s          j/home/mcse/projects/flask/flask-venv/lib/python3.12/site-packages/numba/cuda/tests/doc_examples/test_cg.pysequential_rowsz@TestCooperativeGroups.test_ex_grid_sync.<locals>.sequential_rows   s    ))A,C!!#A771:D771:DQ~ #:>a 12Q6#s(     )   r   )dtype    z0Device does not support a large enough coop gridr   )r   r   )numbar   r   numpyjitzerosr   	overloadsmax_cooperative_grid_blocksskipTesttilearangeTtestingassert_equal)selfr   npsigr   Ablockdimgriddimmb	referencer   s             @r   test_ex_grid_syncz'TestCooperativeGroups.test_ex_grid_sync   s    %QssU|o	#	 
	$ HH\H2 ''!*(
 &&s+GGQ<MMLM 	+)*1- GGBIIdOY799	


9-r   N)__name__
__module____qualname__r6    r   r   r	   r	   
   s    
:.r   r	   __main__)
unittestnumba.cuda.testingr   r   r   r   r   r	   r7   mainr:   r   r   <module>r?      so    5 5
 01GH;.L ;. I 2  ;.| zHMMO r   