|
55 | 55 | A = dpt.asarray(Anp, "d", device=api_dev)
|
56 | 56 | b = dpt.asarray(bnp, "d", device=api_dev)
|
57 | 57 |
|
| 58 | +assert A.sycl_queue == b.sycl_queue |
| 59 | + |
| 60 | +# allocate buffers for computation of residual |
| 61 | +r = dpt.empty_like(b) |
| 62 | +delta = dpt.empty_like(b) |
| 63 | + |
58 | 64 | timer = dpctl.SyclTimer(time_scale=1e3)
|
59 | 65 |
|
60 | 66 | iters = []
|
|
64 | 70 |
|
65 | 71 | print(i, "(host_dt, device_dt)=", timer.dt)
|
66 | 72 | iters.append(conv_in)
|
| 73 | + assert x.usm_type == A.usm_type |
| 74 | + assert x.usm_type == b.usm_type |
| 75 | + assert x.sycl_queue == A.sycl_queue |
| 76 | + assert x.sycl_queue == b.sycl_queue |
67 | 77 |
|
68 | 78 | print("Converged in: ", iters)
|
69 | 79 |
|
70 |
| -r = dpt.empty_like(b) |
71 | 80 | hev, ev = sycl_gemm.gemv(q, A, x, r)
|
72 |
| -delta = dpt.empty_like(b) |
73 | 81 | hev2, ev2 = sycl_gemm.sub(q, r, b, delta, [ev])
|
74 | 82 | rs = sycl_gemm.norm_squared_blocking(q, delta)
|
75 | 83 | dpctl.SyclEvent.wait_for([hev, hev2])
|
76 | 84 | print(f"Python solution residual norm squared: {rs}")
|
77 | 85 |
|
| 86 | +assert q == api_dev.sycl_queue |
| 87 | +print("") |
| 88 | + |
78 | 89 | x_cpp = dpt.empty_like(b)
|
79 | 90 | iters = []
|
80 | 91 | for i in range(6):
|
|
0 commit comments