|
6 | 6 | */ |
7 | 7 |
|
8 | 8 | #include "shared/source/gmm_helper/gmm_helper.h" |
| 9 | +#include "shared/source/helpers/surface_format_info.h" |
9 | 10 | #include "shared/source/os_interface/hw_info_config.h" |
10 | 11 | #include "shared/source/os_interface/linux/os_time_linux.h" |
11 | 12 | #include "shared/source/os_interface/os_interface.h" |
|
17 | 18 | #include "shared/source/os_interface/windows/wddm_memory_manager.h" |
18 | 19 | #include "shared/test/common/helpers/default_hw_info.h" |
19 | 20 | #include "shared/test/common/mocks/mock_execution_environment.h" |
| 21 | +#include "shared/test/common/mocks/mock_gmm.h" |
20 | 22 | #include "shared/test/common/mocks/mock_gmm_client_context.h" |
21 | 23 | #include "shared/test/common/test_macros/test.h" |
22 | 24 |
|
@@ -239,11 +241,34 @@ using GmmTestsDG2 = WddmLinuxTest; |
239 | 241 |
|
240 | 242 | HWTEST_EXCLUDE_PRODUCT(GmmTests, givenGmmWithForceLocalMemThenNonLocalIsSetToFalse, IGFX_XE_HPG_CORE); |
241 | 243 |
|
242 | | -DG2TEST_F(GmmTestsDG2, givenGmmWithForceLocalMemThenNonLocalIsSetToTrue) { |
| 244 | +HWTEST2_F(GmmTestsDG2, givenGmmForBufferWithForceLocalMemThenNonLocalIsSetToTrue, IsDG2) { |
243 | 245 | void *pSysMem = nullptr; |
244 | 246 | std::unique_ptr<NEO::Gmm> gmm(new NEO::Gmm(mockExecEnv.rootDeviceEnvironments[0]->getGmmClientContext(), pSysMem, 4096, 0, false, false, false, {})); |
245 | 247 |
|
246 | 248 | EXPECT_EQ(gmm->resourceParams.Flags.Info.NonLocalOnly, 1u); |
| 249 | + EXPECT_EQ(gmm->resourceParams.Flags.Info.LocalOnly, 0u); |
| 250 | +} |
| 251 | + |
| 252 | +HWTEST2_F(GmmTestsDG2, givenGmmForImageWithForceLocalMemThenNonLocalIsSetToFalseAndoLocalOnlyIsSetToTrue, IsDG2) { |
| 253 | + const_cast<NEO::HardwareInfo *>(mockExecEnv.rootDeviceEnvironments[0]->getHardwareInfo())->featureTable.flags.ftrLocalMemory = 1u; |
| 254 | + |
| 255 | + NEO::ImageDescriptor imgDesc = {}; |
| 256 | + imgDesc.imageType = NEO::ImageType::Image2DArray; |
| 257 | + imgDesc.imageWidth = 60; |
| 258 | + imgDesc.imageHeight = 1; |
| 259 | + imgDesc.imageDepth = 1; |
| 260 | + imgDesc.imageArraySize = 10; |
| 261 | + |
| 262 | + NEO::ImageInfo imgInfo = NEO::MockGmm::initImgInfo(imgDesc, 0, nullptr); |
| 263 | + imgInfo.useLocalMemory = true; |
| 264 | + |
| 265 | + NEO::StorageInfo storageInfo = {}; |
| 266 | + storageInfo.localOnlyRequired = true; |
| 267 | + |
| 268 | + std::unique_ptr<NEO::Gmm> gmm(new NEO::Gmm(mockExecEnv.rootDeviceEnvironments[0]->getGmmClientContext(), imgInfo, storageInfo, false)); |
| 269 | + |
| 270 | + EXPECT_EQ(gmm->resourceParams.Flags.Info.NonLocalOnly, 0u); |
| 271 | + EXPECT_EQ(gmm->resourceParams.Flags.Info.LocalOnly, 1u); |
247 | 272 | } |
248 | 273 |
|
249 | 274 | using WddmLinuxConfigureDeviceAddressSpaceTest = WddmLinuxTest; |
|
0 commit comments