@@ -93,9 +93,11 @@ def svd_cupy(arr):
9393 cupy .cuda .runtime .deviceSynchronize ()
9494 return x
9595
96+
9697def svd_cupynumeric (arr ):
9798 return cupynumeric .linalg .svd (arr )
9899
100+
99101def qr_np (arr ):
100102 return np .linalg .qr (arr )
101103
@@ -117,9 +119,11 @@ def qr_cupy(arr):
117119 cupy .cuda .runtime .deviceSynchronize ()
118120 return x
119121
122+
120123def qr_cupynumeric (arr ):
121124 return cupynumeric .linalg .qr (arr )
122125
126+
123127def cholesky_np (arr ):
124128 return np .linalg .cholesky (arr )
125129
@@ -140,6 +144,7 @@ def cholesky_cupy(arr):
140144 cupy .cuda .runtime .deviceSynchronize ()
141145 return x
142146
147+
143148def cholesky_cupynumeric (arr ):
144149 return cupynumeric .linalg .cholesky (arr )
145150
@@ -164,9 +169,11 @@ def inv_cupy(arr):
164169 cupy .cuda .runtime .deviceSynchronize ()
165170 return x
166171
172+
167173def inv_cupynumeric (arr ):
168174 return cupynumeric .linalg .inv (arr )
169175
176+
170177def det_np (arr ):
171178 return np .linalg .det (arr )
172179
@@ -186,9 +193,11 @@ def det_cupy(arr):
186193 cupy .cuda .runtime .deviceSynchronize ()
187194 return x
188195
196+
189197def det_cupynumeric (arr ):
190198 return cupynumeric .linalg .det (arr )
191199
200+
192201def norm_np (arr ):
193202 return np .linalg .norm (arr )
194203
@@ -208,9 +217,11 @@ def norm_cupy(arr):
208217 cupy .cuda .runtime .deviceSynchronize ()
209218 return x
210219
220+
211221def norm_cupynumeric (arr ):
212222 return cupynumeric .linalg .norm (arr )
213223
224+
214225@pytest .mark .parametrize ("pkgid" , IDS , ids = IDS )
215226class TestLinalg :
216227 def test_cholesky (self , benchmark , pkgid ):
@@ -220,8 +231,13 @@ def test_cholesky(self, benchmark, pkgid):
220231 benchmark .extra_info ["description" ] = f"{ NSIZE } x{ NSIZE } Matrix"
221232 pkg = PKGDICT [pkgid ]
222233
223- CHOLESKY_FUNCS = {"numpy" : cholesky_np , "cupy" : cholesky_cupy , "arrayfire" : cholesky_af , "dpnp" : cholesky_dpnp ,
224- "cupynumeric" : cholesky_cupynumeric }
234+ CHOLESKY_FUNCS = {
235+ "numpy" : cholesky_np ,
236+ "cupy" : cholesky_cupy ,
237+ "arrayfire" : cholesky_af ,
238+ "dpnp" : cholesky_dpnp ,
239+ "cupynumeric" : cholesky_cupynumeric ,
240+ }
225241 result = benchmark .pedantic (
226242 target = CHOLESKY_FUNCS [pkg .__name__ ], setup = setup , rounds = ROUNDS , iterations = ITERATIONS
227243 )
@@ -233,8 +249,13 @@ def test_svd(self, benchmark, pkgid):
233249 benchmark .extra_info ["description" ] = f"{ NSIZE } x{ NSIZE } Matrix"
234250 pkg = PKGDICT [pkgid ]
235251
236- SVD_FUNCS = {"numpy" : svd_np , "cupy" : svd_cupy , "arrayfire" : svd_af , "dpnp" : svd_dpnp ,
237- "cupynumeric" : svd_cupynumeric }
252+ SVD_FUNCS = {
253+ "numpy" : svd_np ,
254+ "cupy" : svd_cupy ,
255+ "arrayfire" : svd_af ,
256+ "dpnp" : svd_dpnp ,
257+ "cupynumeric" : svd_cupynumeric ,
258+ }
238259 result = benchmark .pedantic (target = SVD_FUNCS [pkg .__name__ ], setup = setup , rounds = ROUNDS , iterations = ITERATIONS )
239260
240261 def test_qr (self , benchmark , pkgid ):
@@ -244,8 +265,13 @@ def test_qr(self, benchmark, pkgid):
244265 benchmark .extra_info ["description" ] = f"{ NSIZE } x{ NSIZE } Matrix"
245266 pkg = PKGDICT [pkgid ]
246267
247- QR_FUNCS = {"numpy" : qr_np , "cupy" : qr_cupy , "arrayfire" : qr_af , "dpnp" : qr_dpnp ,
248- "cupynumeric" : qr_cupynumeric }
268+ QR_FUNCS = {
269+ "numpy" : qr_np ,
270+ "cupy" : qr_cupy ,
271+ "arrayfire" : qr_af ,
272+ "dpnp" : qr_dpnp ,
273+ "cupynumeric" : qr_cupynumeric ,
274+ }
249275 result = benchmark .pedantic (target = QR_FUNCS [pkg .__name__ ], setup = setup , rounds = ROUNDS , iterations = ITERATIONS )
250276
251277 def test_inv (self , benchmark , pkgid ):
@@ -255,8 +281,13 @@ def test_inv(self, benchmark, pkgid):
255281 benchmark .extra_info ["description" ] = f"{ NSIZE } x{ NSIZE } Matrix"
256282 pkg = PKGDICT [pkgid ]
257283
258- INV_FUNCS = {"numpy" : inv_np , "cupy" : inv_cupy , "arrayfire" : inv_af , "dpnp" : inv_dpnp ,
259- "cupynumeric" : inv_cupynumeric }
284+ INV_FUNCS = {
285+ "numpy" : inv_np ,
286+ "cupy" : inv_cupy ,
287+ "arrayfire" : inv_af ,
288+ "dpnp" : inv_dpnp ,
289+ "cupynumeric" : inv_cupynumeric ,
290+ }
260291 result = benchmark .pedantic (target = INV_FUNCS [pkg .__name__ ], setup = setup , rounds = ROUNDS , iterations = ITERATIONS )
261292
262293 def test_det (self , benchmark , pkgid ):
@@ -266,8 +297,13 @@ def test_det(self, benchmark, pkgid):
266297 benchmark .extra_info ["description" ] = f"{ NSIZE } x{ NSIZE } Matrix"
267298 pkg = PKGDICT [pkgid ]
268299
269- DET_FUNCS = {"numpy" : det_np , "cupy" : det_cupy , "arrayfire" : det_af , "dpnp" : det_dpnp ,
270- "cupynumeric" : det_cupynumeric }
300+ DET_FUNCS = {
301+ "numpy" : det_np ,
302+ "cupy" : det_cupy ,
303+ "arrayfire" : det_af ,
304+ "dpnp" : det_dpnp ,
305+ "cupynumeric" : det_cupynumeric ,
306+ }
271307 result = benchmark .pedantic (target = DET_FUNCS [pkg .__name__ ], setup = setup , rounds = ROUNDS , iterations = ITERATIONS )
272308
273309 def test_norm (self , benchmark , pkgid ):
@@ -277,6 +313,11 @@ def test_norm(self, benchmark, pkgid):
277313 benchmark .extra_info ["description" ] = f"{ NSIZE } x{ NSIZE } Matrix"
278314 pkg = PKGDICT [pkgid ]
279315
280- NORM_FUNCS = {"numpy" : norm_np , "cupy" : norm_cupy , "arrayfire" : norm_af , "dpnp" : norm_dpnp ,
281- "cupynumeric" : norm_cupynumeric }
316+ NORM_FUNCS = {
317+ "numpy" : norm_np ,
318+ "cupy" : norm_cupy ,
319+ "arrayfire" : norm_af ,
320+ "dpnp" : norm_dpnp ,
321+ "cupynumeric" : norm_cupynumeric ,
322+ }
282323 result = benchmark .pedantic (target = NORM_FUNCS [pkg .__name__ ], setup = setup , rounds = ROUNDS , iterations = ITERATIONS )
0 commit comments