@@ -75,6 +75,9 @@ def _cc_to_af_array(in_ptr, ndim, in_shape, in_dtype, is_device=False, copy = Tr
75
75
76
76
try :
77
77
import numpy as np
78
+ except ImportError :
79
+ AF_NUMPY_FOUND = False
80
+ else :
78
81
from numpy import ndarray as NumpyArray
79
82
from .data import reorder
80
83
@@ -112,11 +115,12 @@ def np_to_af_array(np_arr, copy=True):
112
115
return np_to_af_array (np_arr .copy ())
113
116
114
117
from_ndarray = np_to_af_array
115
- except :
116
- AF_NUMPY_FOUND = False
117
118
118
119
try :
119
120
import pycuda .gpuarray
121
+ except ImportError :
122
+ AF_PYCUDA_FOUND = False
123
+ else :
120
124
from pycuda .gpuarray import GPUArray as CudaArray
121
125
AF_PYCUDA_FOUND = True
122
126
@@ -154,11 +158,12 @@ def pycuda_to_af_array(pycu_arr, copy=True):
154
158
return _cc_to_af_array (in_ptr , pycu_arr .ndim , in_shape , in_dtype , True , copy )
155
159
else :
156
160
return pycuda_to_af_array (pycu_arr .copy ())
157
- except :
158
- AF_PYCUDA_FOUND = False
159
161
160
162
try :
161
163
from pyopencl .array import Array as OpenclArray
164
+ except ImportError :
165
+ AF_PYOPENCL_FOUND = False
166
+ else :
162
167
from .opencl import add_device_context as _add_device_context
163
168
from .opencl import set_device_context as _set_device_context
164
169
from .opencl import get_device_id as _get_device_id
@@ -221,11 +226,12 @@ def pyopencl_to_af_array(pycl_arr, copy=True):
221
226
return _cc_to_af_array (in_ptr , pycl_arr .ndim , in_shape , in_dtype , True , copy )
222
227
else :
223
228
return pyopencl_to_af_array (pycl_arr .copy ())
224
- except :
225
- AF_PYOPENCL_FOUND = False
226
229
227
230
try :
228
231
import numba
232
+ except ImportError :
233
+ AF_NUMBA_FOUND = False
234
+ else :
229
235
from numba import cuda
230
236
NumbaCudaArray = cuda .cudadrv .devicearray .DeviceNDArray
231
237
AF_NUMBA_FOUND = True
@@ -264,8 +270,6 @@ def numba_to_af_array(nb_arr, copy=True):
264
270
return _cc_to_af_array (in_ptr , nb_arr .ndim , in_shape , in_dtype , True , copy )
265
271
else :
266
272
return numba_to_af_array (nb_arr .copy ())
267
- except :
268
- AF_NUMBA_FOUND = False
269
273
270
274
def to_array (in_array , copy = True ):
271
275
"""
0 commit comments