
\K]c           @` s   d  d l  m Z m Z m Z d  d l Z d  d l m Z d  d l m	 Z	 m
 Z
 d Z d e
 f d     YZ e d k r e	 j   n  d S(	   i    (   t   print_functiont   divisiont   absolute_importN(   t   cuda(   t   unittestt   CUDATestCasei   t
   TestPinnedc           B` s#   e  Z d    Z d   Z d   Z RS(   c         C` s   t  j |  } t j   } t j | d t d | } | j | d | | j | d | | j   |  j	 t  j
 | |   d  S(   Nt   copyt   stream(   t   npR   R   R   t	   to_devicet   Falset   copy_to_devicet   copy_to_hostt   synchronizet
   assertTruet   allclose(   t   selft   At   A0R   t   ptr(    (    sC   lib/python2.7/site-packages/numba/cuda/tests/cudadrv/test_pinned.pyt   _run_copies   s    
c         C` s6   t  j d  } t j |   |  j |  Wd  QXd  S(   Ni   i   i   i    (   R	   t   arangeR   t   pinnedR   (   R   R   (    (    sC   lib/python2.7/site-packages/numba/cuda/tests/cudadrv/test_pinned.pyt   test_pinned   s    c         C` s    t  j d  } |  j |  d  S(   Ni   i   i   i    (   R	   R   R   (   R   R   (    (    sC   lib/python2.7/site-packages/numba/cuda/tests/cudadrv/test_pinned.pyt   test_unpinned   s    (   t   __name__t
   __module__R   R   R   (    (    (    sC   lib/python2.7/site-packages/numba/cuda/tests/cudadrv/test_pinned.pyR      s   		t   __main__(   t
   __future__R    R   R   t   numpyR	   t   numbaR   t   numba.cuda.testingR   R   t   REPEATR   R   t   main(    (    (    sC   lib/python2.7/site-packages/numba/cuda/tests/cudadrv/test_pinned.pyt   <module>   s   