Skip to content

Commit b54eca4

Browse files
committed
fixed issues with memset and fill operations
1 parent 0950e85 commit b54eca4

File tree

1 file changed

+13
-13
lines changed

1 file changed

+13
-13
lines changed

sycl/test-e2e/VirtualMem/virtual_mem_usm_compatibility.cpp

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ int main() {
1919
int Failed = 0;
2020
constexpr int ValueSetInKernelForCopyToUSM = 111;
2121
constexpr int ValueSetForCopyToVirtualMem = 222;
22-
constexpr int ValueSetInMemSetOperation = 333;
22+
constexpr int ValueSetInMemSetOperationPerByte = 1;
2323
constexpr int ValueSetInFillOperation = 444;
2424
constexpr size_t NumberOfElements = 1000;
2525
size_t BytesRequired = NumberOfElements * sizeof(int);
@@ -86,28 +86,28 @@ int main() {
8686
}
8787
}
8888

89-
// Check that can use memset on virtual memory
90-
Queue.memset(DataPtr, ValueSetInMemSetOperation, AlignedByteSize)
91-
.wait_and_throw();
92-
93-
Queue
94-
.parallel_for(NumberOfElements,
95-
[=](sycl::id<1> Idx) { CopyBack[Idx] = DataPtr[Idx]; })
96-
.wait_and_throw();
89+
//Check that can use memset on virtual memorys
90+
int ExpectedResultAfterMemSetOperation{0};
91+
std::memset(&ExpectedResultAfterMemSetOperation, ValueSetInMemSetOperationPerByte, sizeof(int));
92+
Queue.memset(MappedPtr,ValueSetInMemSetOperationPerByte, AlignedByteSize).wait_and_throw();
93+
94+
Queue.parallel_for(NumberOfElements, [=](sycl::id<1> Idx) {
95+
CopyBack[Idx] = DataPtr[Idx];
96+
}).wait_and_throw();
9797

9898
for (size_t i = 0; i < NumberOfElements; i++) {
99-
if (CopyBack[i] != ValueSetInMemSetOperation) {
99+
if (CopyBack[i] != ExpectedResultAfterMemSetOperation) {
100100
std::cout << "Comparison failed after memset operation on virtual memory "
101101
"at index "
102-
<< i << ": " << CopyBack[i]
103-
<< " != " << ValueSetInMemSetOperation << std::endl;
102+
<< i << ": " << CopyBack[i] << " != " << ExpectedResultAfterMemSetOperation
103+
<< std::endl;
104104
++Failed;
105105
}
106106
}
107107

108108
// Check that can use fill on virtual memory
109109

110-
Queue.fill(DataPtr, ValueSetInFillOperation, AlignedByteSize)
110+
Queue.fill(DataPtr, ValueSetInFillOperation, NumberOfElements)
111111
.wait_and_throw();
112112

113113
Queue

0 commit comments

Comments
 (0)