|
1 | 1 | /*
|
2 | 2 | *
|
3 |
| - * Copyright (C) 2019-2023 Intel Corporation |
| 3 | + * Copyright (C) 2019-2024 Intel Corporation |
4 | 4 | *
|
5 | 5 | * SPDX-License-Identifier: MIT
|
6 | 6 | *
|
7 | 7 | */
|
8 | 8 |
|
9 | 9 | #include <boost/interprocess/shared_memory_object.hpp>
|
10 | 10 | #include <boost/interprocess/managed_shared_memory.hpp>
|
11 |
| -#include <chrono> |
12 |
| -#include <thread> |
13 | 11 |
|
14 | 12 | #include "gtest/gtest.h"
|
15 | 13 |
|
@@ -66,11 +64,17 @@ TEST_P(zeDriverAllocDeviceMemAlignmentTests,
|
66 | 64 | }
|
67 | 65 | }
|
68 | 66 |
|
69 |
| -INSTANTIATE_TEST_SUITE_P(zeDriverAllocDeviceMemTestVarySizeAndAlignment, |
70 |
| - zeDriverAllocDeviceMemAlignmentTests, |
71 |
| - ::testing::Combine(::testing::Values(0), |
72 |
| - lzt::memory_allocation_sizes, |
73 |
| - lzt::memory_allocation_alignments)); |
| 67 | +INSTANTIATE_TEST_SUITE_P( |
| 68 | + zeDriverAllocDeviceMemTestVarySizeAndAlignment, |
| 69 | + zeDriverAllocDeviceMemAlignmentTests, |
| 70 | + ::testing::Combine(::testing::Values(0), lzt::memory_allocation_sizes, |
| 71 | + lzt::memory_allocation_alignments_small)); |
| 72 | + |
| 73 | +INSTANTIATE_TEST_SUITE_P( |
| 74 | + zeDriverAllocDeviceMemTestVarySizeAndLargeAlignment, |
| 75 | + zeDriverAllocDeviceMemAlignmentTests, |
| 76 | + ::testing::Combine(::testing::Values(0), lzt::memory_allocation_sizes, |
| 77 | + lzt::memory_allocation_alignments_large)); |
74 | 78 |
|
75 | 79 | class zeMemGetAllocPropertiesTests : public zeDriverAllocDeviceMemTests {};
|
76 | 80 |
|
@@ -266,37 +270,53 @@ class zeDriverAllocSharedMemAlignmentTests
|
266 | 270 | : public ::testing::Test,
|
267 | 271 | public ::testing::WithParamInterface<
|
268 | 272 | std::tuple<ze_device_mem_alloc_flag_t, ze_host_mem_alloc_flag_t,
|
269 |
| - size_t, size_t>> {}; |
| 273 | + size_t, size_t>> { |
| 274 | +protected: |
| 275 | + void SetUp() override { |
| 276 | + const ze_device_mem_alloc_flag_t dev_flags = std::get<0>(GetParam()); |
| 277 | + const ze_host_mem_alloc_flag_t host_flags = std::get<1>(GetParam()); |
| 278 | + size_ = std::get<2>(GetParam()); |
| 279 | + alignment_ = std::get<3>(GetParam()); |
270 | 280 |
|
271 |
| -TEST_P(zeDriverAllocSharedMemAlignmentTests, |
272 |
| - GivenSizeAndAlignmentWhenAllocatingSharedMemoryThenPointerIsAligned) { |
| 281 | + auto driver = lzt::get_default_driver(); |
| 282 | + auto device = lzt::get_default_device(driver); |
| 283 | + context_ = lzt::create_context(); |
| 284 | + memory_ = lzt::allocate_shared_memory(size_, alignment_, dev_flags, |
| 285 | + host_flags, device, context_); |
| 286 | + } |
273 | 287 |
|
274 |
| - const ze_device_mem_alloc_flag_t dev_flags = std::get<0>(GetParam()); |
275 |
| - const ze_host_mem_alloc_flag_t host_flags = std::get<1>(GetParam()); |
276 |
| - const size_t size = std::get<2>(GetParam()); |
277 |
| - const size_t alignment = std::get<3>(GetParam()); |
| 288 | + void TearDown() override { |
| 289 | + lzt::free_memory(context_, memory_); |
| 290 | + lzt::destroy_context(context_); |
| 291 | + } |
278 | 292 |
|
279 |
| - void *memory = nullptr; |
280 |
| - auto driver = lzt::get_default_driver(); |
281 |
| - auto device = lzt::get_default_device(driver); |
282 |
| - auto context = lzt::create_context(); |
| 293 | + size_t size_; |
| 294 | + size_t alignment_; |
| 295 | + void *memory_ = nullptr; |
| 296 | + ze_context_handle_t context_; |
| 297 | +}; |
283 | 298 |
|
284 |
| - memory = lzt::allocate_shared_memory(size, alignment, dev_flags, host_flags, |
285 |
| - device, context); |
286 |
| - EXPECT_NE(nullptr, memory); |
287 |
| - if (alignment != 0) { |
288 |
| - EXPECT_EQ(0u, reinterpret_cast<uintptr_t>(memory) % alignment); |
| 299 | +TEST_P(zeDriverAllocSharedMemAlignmentTests, |
| 300 | + GivenSizeAndAlignmentWhenAllocatingSharedMemoryThenPointerIsAligned) { |
| 301 | + EXPECT_NE(nullptr, memory_); |
| 302 | + if (alignment_ != 0) { |
| 303 | + EXPECT_EQ(0u, reinterpret_cast<uintptr_t>(memory_) % alignment_); |
289 | 304 | }
|
290 |
| - lzt::free_memory(context, memory); |
291 |
| - lzt::destroy_context(context); |
292 | 305 | }
|
293 | 306 |
|
294 |
| -INSTANTIATE_TEST_SUITE_P(zeDriverAllocSharedMemTestVarySizeAndAlignment, |
295 |
| - zeDriverAllocSharedMemAlignmentTests, |
296 |
| - ::testing::Combine(::testing::Values(0), |
297 |
| - ::testing::Values(0), |
298 |
| - lzt::memory_allocation_sizes, |
299 |
| - lzt::memory_allocation_alignments)); |
| 307 | +INSTANTIATE_TEST_SUITE_P( |
| 308 | + zeDriverAllocSharedMemTestVarySizeAndAlignment, |
| 309 | + zeDriverAllocSharedMemAlignmentTests, |
| 310 | + ::testing::Combine(::testing::Values(0), ::testing::Values(0), |
| 311 | + lzt::memory_allocation_sizes, |
| 312 | + lzt::memory_allocation_alignments_small)); |
| 313 | + |
| 314 | +INSTANTIATE_TEST_SUITE_P( |
| 315 | + zeDriverAllocSharedMemTestVarySizeAndLargeAlignment, |
| 316 | + zeDriverAllocSharedMemAlignmentTests, |
| 317 | + ::testing::Combine(::testing::Values(0), ::testing::Values(0), |
| 318 | + lzt::memory_allocation_sizes, |
| 319 | + lzt::memory_allocation_alignments_large)); |
300 | 320 |
|
301 | 321 | class zeSharedMemGetPropertiesTests
|
302 | 322 | : public ::testing::Test,
|
@@ -433,33 +453,42 @@ INSTANTIATE_TEST_SUITE_P(
|
433 | 453 | ZE_HOST_MEM_ALLOC_FLAG_BIAS_WRITE_COMBINED),
|
434 | 454 | lzt::memory_allocation_sizes, lzt::memory_allocation_alignments));
|
435 | 455 |
|
436 |
| -class zeDriverAllocHostMemAlignmentTests : public zeDriverAllocHostMemTests {}; |
437 |
| - |
438 |
| -TEST_P(zeDriverAllocHostMemAlignmentTests, |
439 |
| - GivenSizeAndAlignmentWhenAllocatingHostMemoryThenPointerIsAligned) { |
440 |
| - |
441 |
| - const ze_host_mem_alloc_flag_t flags = std::get<0>(GetParam()); |
| 456 | +class zeDriverAllocHostMemAlignmentTests : public zeDriverAllocHostMemTests { |
| 457 | +protected: |
| 458 | + void SetUp() override { |
| 459 | + const ze_host_mem_alloc_flag_t flags = std::get<0>(GetParam()); |
| 460 | + size_ = std::get<1>(GetParam()); |
| 461 | + alignment_ = std::get<2>(GetParam()); |
| 462 | + memory_ = lzt::allocate_host_memory(size_, alignment_, flags, nullptr, |
| 463 | + lzt::get_default_context()); |
| 464 | + } |
442 | 465 |
|
443 |
| - const size_t size = std::get<1>(GetParam()); |
444 |
| - const size_t alignment = std::get<2>(GetParam()); |
| 466 | + void TearDown() override { lzt::free_memory(memory_); } |
445 | 467 |
|
446 |
| - void *memory = nullptr; |
447 |
| - memory = lzt::allocate_host_memory(size, alignment, flags, nullptr, |
448 |
| - lzt::get_default_context()); |
| 468 | + size_t size_; |
| 469 | + size_t alignment_; |
| 470 | + void *memory_ = nullptr; |
| 471 | +}; |
449 | 472 |
|
450 |
| - EXPECT_NE(nullptr, memory); |
451 |
| - if (alignment != 0) { |
452 |
| - EXPECT_EQ(0u, reinterpret_cast<uintptr_t>(memory) % alignment); |
| 473 | +TEST_P(zeDriverAllocHostMemAlignmentTests, |
| 474 | + GivenSizeAndAlignmentWhenAllocatingHostMemoryThenPointerIsAligned) { |
| 475 | + EXPECT_NE(nullptr, memory_); |
| 476 | + if (alignment_ != 0) { |
| 477 | + EXPECT_EQ(0u, reinterpret_cast<uintptr_t>(memory_) % alignment_); |
453 | 478 | }
|
454 |
| - |
455 |
| - lzt::free_memory(memory); |
456 | 479 | }
|
457 | 480 |
|
458 |
| -INSTANTIATE_TEST_SUITE_P(zeDriverAllocHostMemTestVarySizeAndAlignment, |
459 |
| - zeDriverAllocHostMemAlignmentTests, |
460 |
| - ::testing::Combine(::testing::Values(0), |
461 |
| - lzt::memory_allocation_sizes, |
462 |
| - lzt::memory_allocation_alignments)); |
| 481 | +INSTANTIATE_TEST_SUITE_P( |
| 482 | + zeDriverAllocHostMemTestVarySizeAndAlignment, |
| 483 | + zeDriverAllocHostMemAlignmentTests, |
| 484 | + ::testing::Combine(::testing::Values(0), lzt::memory_allocation_sizes, |
| 485 | + lzt::memory_allocation_alignments_small)); |
| 486 | + |
| 487 | +INSTANTIATE_TEST_SUITE_P( |
| 488 | + zeDriverAllocHostMemTestVarySizeAndLargeAlignment, |
| 489 | + zeDriverAllocHostMemAlignmentTests, |
| 490 | + ::testing::Combine(::testing::Values(0), lzt::memory_allocation_sizes, |
| 491 | + lzt::memory_allocation_alignments_large)); |
463 | 492 |
|
464 | 493 | class zeHostMemPropertiesTests
|
465 | 494 | : public ::testing::Test,
|
|
0 commit comments