
    J/Ph                         d dl Z d dlZd dlZd dlmZ d dlmZm	Z	 d dl
Z
 eed          Ze j        dk    Zd Z ed           G d d	e	                      Zed
k    r e
j                     dS dS )    N)cuda)skip_on_cudasimCUDATestCaseget_contextposixc                     ddl m} 	 t          j        t	          j        d                     |                     d            d S # |$ r }|                     |           Y d }~d S d }~ww xY w)Nr   )CudaDriverError   )numba.cuda.cudadrv.errorr	   r   	to_devicenparangeput)qr	   es      l/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/numba/cuda/tests/cudapy/test_multiprocessing.py	fork_testr      s    888888ry||$$$ 	
d    	as   &A A*
A%%A*zdisabled for cudasimc                   p    e Zd Z ej        ed           ej        ed          d                         ZdS )TestMultiprocessingzrequires mp.get_contextzrequires Unixc                    t          j                     t          j        d          }|                                }|                    t          |g          }|                                 |                                }|	                                 | 
                    |           |                     dt          |                     dS )z&
        Test fork detection.
        fork)targetargszCUDA initialized before forkingN)r   current_contextmpr   QueueProcessr   startgetjoinassertIsNotNoneassertInstr)selfctxr   procexcs        r   	test_forkzTestMultiprocessing.test_fork   s     	nV$$IIKK{{)1#{66

eegg		S!!!7SBBBBB    N)__name__
__module____qualname__unittest
skipUnlesshas_mp_get_contextis_unixr(    r)   r   r   r      s_        X+-FGGX/22C C 32 HGC C Cr)   r   __main__)osmultiprocessingr   numpyr   numbar   numba.cuda.testingr   r   r-   hasattrr/   namer0   r   r   r*   mainr1   r)   r   <module>r;      s    				               < < < < < < < < WR// 
'W
   '((C C C C C, C C )(C( zHMOOOOO r)   