Skip to content
This repository was archived by the owner on Mar 28, 2023. It is now read-only.

Commit 2eb7ff3

Browse files
authored
[SYCL][CUDA] Re-enable host-task-dependency test for CUDA (#1064)
This patch re-enables a test that seems not failing anymore. The test has been modified for avoiding deprecation messages and output the content of buffers in case of error.
1 parent 90d7f5a commit 2eb7ff3

File tree

1 file changed

+30
-9
lines changed

1 file changed

+30
-9
lines changed

SYCL/Basic/host-task-dependency.cpp

Lines changed: 30 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
//
66
// TODO: Behaviour is unstable for level zero on Windows. Enable when fixed.
77
// TODO: The test is sporadically fails on CUDA. Enable when fixed.
8-
// UNSUPPORTED: (windows && level_zero) || cuda || hip_nvidia
8+
// UNSUPPORTED: (windows && level_zero) || hip_nvidia
99

1010
#define SYCL2020_DISABLE_DEPRECATION_WARNINGS
1111

@@ -39,7 +39,7 @@ S::event HostTask_CopyBuf1ToBuf2(Context *Ctx) {
3939
CopierDstAcc(Ctx->Buf2, CGH);
4040

4141
auto CopierHostTask = [=] {
42-
for (size_t Idx = 0; Idx < CopierDstAcc.get_count(); ++Idx)
42+
for (size_t Idx = 0; Idx < CopierDstAcc.size(); ++Idx)
4343
CopierDstAcc[Idx] = CopierSrcAcc[Idx];
4444

4545
bool Expected = false;
@@ -63,23 +63,23 @@ void Thread1Fn(Context *Ctx) {
6363
S::accessor<int, 1, S::access::mode::write, S::access::target::host_buffer>
6464
Acc(Ctx->Buf1);
6565

66-
for (size_t Idx = 0; Idx < Acc.get_count(); ++Idx)
66+
for (size_t Idx = 0; Idx < Acc.size(); ++Idx)
6767
Acc[Idx] = -1;
6868
}
6969

7070
{
7171
S::accessor<int, 1, S::access::mode::write, S::access::target::host_buffer>
7272
Acc(Ctx->Buf2);
7373

74-
for (size_t Idx = 0; Idx < Acc.get_count(); ++Idx)
74+
for (size_t Idx = 0; Idx < Acc.size(); ++Idx)
7575
Acc[Idx] = -2;
7676
}
7777

7878
{
7979
S::accessor<int, 1, S::access::mode::write, S::access::target::host_buffer>
8080
Acc(Ctx->Buf3);
8181

82-
for (size_t Idx = 0; Idx < Acc.get_count(); ++Idx)
82+
for (size_t Idx = 0; Idx < Acc.size(); ++Idx)
8383
Acc[Idx] = -3;
8484
}
8585

@@ -89,7 +89,7 @@ void Thread1Fn(Context *Ctx) {
8989
GeneratorAcc(Ctx->Buf1, CGH);
9090

9191
auto GeneratorKernel = [GeneratorAcc] {
92-
for (size_t Idx = 0; Idx < GeneratorAcc.get_count(); ++Idx)
92+
for (size_t Idx = 0; Idx < GeneratorAcc.size(); ++Idx)
9393
GeneratorAcc[Idx] = Idx;
9494
};
9595

@@ -109,7 +109,7 @@ void Thread1Fn(Context *Ctx) {
109109
CGH.depends_on(HostTaskEvent);
110110

111111
auto CopierKernel = [SrcAcc, DstAcc] {
112-
for (size_t Idx = 0; Idx < DstAcc.get_count(); ++Idx)
112+
for (size_t Idx = 0; Idx < DstAcc.size(); ++Idx)
113113
DstAcc[Idx] = SrcAcc[Idx];
114114
};
115115

@@ -123,7 +123,7 @@ void Thread1Fn(Context *Ctx) {
123123

124124
bool Failure = false;
125125

126-
for (size_t Idx = 0; Idx < Acc.get_count(); ++Idx) {
126+
for (size_t Idx = 0; Idx < Acc.size(); ++Idx) {
127127
fprintf(stderr, "Third buffer [%3zu] = %i\n", Idx, Acc[Idx]);
128128

129129
Failure |= (Acc[Idx] != Idx);
@@ -168,7 +168,7 @@ void test() {
168168
ResultAcc(Ctx.Buf2);
169169

170170
bool Failure = false;
171-
for (size_t Idx = 0; Idx < ResultAcc.get_count(); ++Idx) {
171+
for (size_t Idx = 0; Idx < ResultAcc.size(); ++Idx) {
172172
fprintf(stderr, "Second buffer [%3zu] = %i\n", Idx, ResultAcc[Idx]);
173173

174174
Failure |= (ResultAcc[Idx] != Idx);
@@ -195,6 +195,27 @@ int main() {
195195
// CHECK: Copier
196196
// CHECK:---> piEnqueueKernelLaunch(
197197

198+
// CHECK:Third buffer [ 0] = 0
199+
// CHECK:Third buffer [ 1] = 1
200+
// CHECK:Third buffer [ 2] = 2
201+
// CHECK:Third buffer [ 3] = 3
202+
// CHECK:Third buffer [ 4] = 4
203+
// CHECK:Third buffer [ 5] = 5
204+
// CHECK:Third buffer [ 6] = 6
205+
// CHECK:Third buffer [ 7] = 7
206+
// CHECK:Third buffer [ 8] = 8
207+
// CHECK:Third buffer [ 9] = 9
208+
// CHECK:Second buffer [ 0] = 0
209+
// CHECK:Second buffer [ 1] = 1
210+
// CHECK:Second buffer [ 2] = 2
211+
// CHECK:Second buffer [ 3] = 3
212+
// CHECK:Second buffer [ 4] = 4
213+
// CHECK:Second buffer [ 5] = 5
214+
// CHECK:Second buffer [ 6] = 6
215+
// CHECK:Second buffer [ 7] = 7
216+
// CHECK:Second buffer [ 8] = 8
217+
// CHECK:Second buffer [ 9] = 9
218+
198219
// TODO need to check for piEventsWait as "wait on dependencies of host task".
199220
// At the same time this piEventsWait may occur anywhere after
200221
// piEnqueueMemBufferMap ("prepare for host task").

0 commit comments

Comments
 (0)