diff options
Diffstat (limited to 'MPBenchmarks/MemoryTasks.cpp')
-rw-r--r-- | MPBenchmarks/MemoryTasks.cpp | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/MPBenchmarks/MemoryTasks.cpp b/MPBenchmarks/MemoryTasks.cpp index c6c0fb2..e32036d 100644 --- a/MPBenchmarks/MemoryTasks.cpp +++ b/MPBenchmarks/MemoryTasks.cpp @@ -40,9 +40,10 @@ double CopyGPUTask::run(int workgroupSize,size_t sz) // Initialize A and check errors for (size_t i=0;i<sz;i++) buf[i] = (unsigned char)(i & 0xFF); - if (!q->writeBuffer(a,true,0,sz,buf).isValid()) goto END; + if (q->writeBuffer(a,true,0,sz,buf) == CL_FALSE) goto END; for (size_t i=0;i<sz;i++) buf[i] = (unsigned char)0; - if (!q->readBuffer(a,true,0,sz,buf).isValid()) goto END; + if (q->readBuffer(a,true,0,sz,buf) == CL_FALSE) goto END; + ok = true; // check write+read loop @@ -53,11 +54,11 @@ double CopyGPUTask::run(int workgroupSize,size_t sz) if (b != 0) { for (size_t i=0;i<sz;i++) buf[i] = (unsigned char)(i & 0xFF); - if (!q->writeBuffer(a,true,0,sz,buf).isValid()) goto END; + if (q->writeBuffer(a,true,0,sz,buf) == CL_FALSE) goto END; for (size_t i=0;i<sz;i++) buf[i] = (unsigned char)0; - if (!q->writeBuffer(b,true,0,sz,buf).isValid()) goto END; - if (!q->copyBuffer(a,b,0,0,sz).isValid()) goto END; - if (!q->readBuffer(b,true,0,sz,buf).isValid()) goto END; + if (q->writeBuffer(b,true,0,sz,buf) == CL_FALSE) goto END; + if (q->copyBuffer(a,b,0,0,sz) == CL_FALSE) goto END; + if (q->readBuffer(b,true,0,sz,buf) == CL_FALSE) goto END; for (size_t i=0;i<sz;i++) if (buf[i] != (unsigned char)(i & 0xFF)) ok = false; if (!ok) { fprintf(stderr,"write+copy+read failed\n"); goto END; } } @@ -74,11 +75,10 @@ double CopyGPUTask::run(int workgroupSize,size_t sz) case DEVICE_TO_HOST_COPY: for (int i=0;i<nOps;i++) q->readBuffer(a,false,0,sz,buf); break; - case DEVICE_TO_DEVICE_COPY: { + case DEVICE_TO_DEVICE_COPY: for (int i=0;i<nOps;i++) { ncount++; q->copyBuffer(a,b,0,0,sz);} break; } - } q->finish(); double t = (getT() - t0); if (t < MIN_RUNNING_TIME) continue; @@ -95,7 +95,6 @@ END: if (buf != 0) _aligned_free(buf); if (a != 0) delete a; if (b != 0) delete b; - return mbps; } @@ -122,14 +121,14 @@ double ZeroGPUTask::run(int workgroupSize,size_t sz) // Initialize A for (size_t i=0;i<sz;i++) buf[i] = (unsigned char)(i & 0xFF); - if (!q->writeBuffer(a,true,0,sz,buf).isValid()) goto END; + if (q->writeBuffer(a,true,0,sz,buf) == CL_FALSE) goto END; // Run tests, double nOps until min time is reached kernel->setArg(0,a); - if (!q->execKernel1(kernel,n,workgroupSize).isValid()) goto END; + if (q->execKernel1(kernel,n,workgroupSize) == CL_FALSE) goto END; // check write+zero+read - if (!q->readBuffer(a,true,0,sz,buf).isValid()) goto END; + if (q->readBuffer(a,true,0,sz,buf) == CL_FALSE) goto END; ok = true; for (size_t i=0;i<sz;i++) if (buf[i] != (unsigned char)0) ok = false; if (!ok) { fprintf(stderr,"write+zero+read failed\n"); goto END; } |