mirror of
https://github.com/intel/compute-runtime.git
synced 2025-09-15 13:01:45 +08:00

committed by
Compute-Runtime-Automation

parent
0866f235c7
commit
7c538b956a
@ -1457,7 +1457,7 @@ cl_int Kernel::setArgBuffer(uint32_t argIndex,
|
||||
|
||||
auto allocationForCacheFlush = graphicsAllocation;
|
||||
|
||||
//if we make object uncacheable for surface state and there are not stateless accessess , then ther is no need to flush caches
|
||||
// if we make object uncacheable for surface state and there are only stateful accesses, then don't flush caches
|
||||
if (buffer->isMemObjUncacheableForSurfaceState() && argAsPtr.isPureStateful()) {
|
||||
allocationForCacheFlush = nullptr;
|
||||
}
|
||||
|
@ -86,12 +86,12 @@ std::string Program::getInternalOptions() const {
|
||||
CompilerOptions::concatenateAppend(internalOptions, CompilerOptions::bindlessMode);
|
||||
}
|
||||
|
||||
auto enableStatelessToStatefullWithOffset = HwHelper::get(pClDevice->getHardwareInfo().platform.eRenderCoreFamily).isStatelesToStatefullWithOffsetSupported();
|
||||
auto enableStatelessToStatefulWithOffset = HwHelper::get(pClDevice->getHardwareInfo().platform.eRenderCoreFamily).isStatelessToStatefulWithOffsetSupported();
|
||||
if (DebugManager.flags.EnableStatelessToStatefulBufferOffsetOpt.get() != -1) {
|
||||
enableStatelessToStatefullWithOffset = DebugManager.flags.EnableStatelessToStatefulBufferOffsetOpt.get() != 0;
|
||||
enableStatelessToStatefulWithOffset = DebugManager.flags.EnableStatelessToStatefulBufferOffsetOpt.get() != 0;
|
||||
}
|
||||
|
||||
if (enableStatelessToStatefullWithOffset) {
|
||||
if (enableStatelessToStatefulWithOffset) {
|
||||
CompilerOptions::concatenateAppend(internalOptions, CompilerOptions::hasBufferOffsetArg);
|
||||
}
|
||||
|
||||
|
@ -207,7 +207,7 @@ HWCMDTEST_F(IGFX_GEN8_CORE, clMemLocallyUncachedResourceFixture, givenBuffersTha
|
||||
EXPECT_EQ(mocsCacheable, cmdQueueMocs<FamilyType>(pCmdQ));
|
||||
}
|
||||
|
||||
HWCMDTEST_F(IGFX_GEN8_CORE, clMemLocallyUncachedResourceFixture, givenBuffersThatAreUncachedButKernelDoesntHaveAnyStatelessAccessessThenSurfacesAreNotRecordedAsUncacheable) {
|
||||
HWCMDTEST_F(IGFX_GEN8_CORE, clMemLocallyUncachedResourceFixture, givenBuffersThatAreUncachedButKernelDoesntHaveAnyStatelessAccessesThenSurfacesAreNotRecordedAsUncacheable) {
|
||||
cl_int retVal = CL_SUCCESS;
|
||||
|
||||
MockKernelWithInternals mockKernel(*this->pClDevice, context, true);
|
||||
|
@ -117,7 +117,7 @@ struct CommandQueueStateful : public CommandQueueHw<FamilyType> {
|
||||
auto kernel = dispatchInfo.begin()->getKernel();
|
||||
EXPECT_FALSE(kernel->getKernelInfo().kernelDescriptor.kernelAttributes.supportsBuffersBiggerThan4Gb());
|
||||
|
||||
if (HwHelperHw<FamilyType>::get().isStatelesToStatefullWithOffsetSupported()) {
|
||||
if (HwHelperHw<FamilyType>::get().isStatelessToStatefulWithOffsetSupported()) {
|
||||
EXPECT_TRUE(kernel->allBufferArgsStateful);
|
||||
}
|
||||
}
|
||||
|
@ -562,9 +562,9 @@ HWTEST_F(EnqueueFillBufferStatelessTest, givenBuffersWhenFillingBufferStatelessT
|
||||
ASSERT_EQ(CL_SUCCESS, retVal);
|
||||
}
|
||||
|
||||
using EnqueueFillBufferStatefullTest = EnqueueFillBufferHw;
|
||||
using EnqueueFillBufferStatefulTest = EnqueueFillBufferHw;
|
||||
|
||||
HWTEST_F(EnqueueFillBufferStatefullTest, givenBuffersWhenFillingBufferStatefullThenSuccessIsReturned) {
|
||||
HWTEST_F(EnqueueFillBufferStatefulTest, givenBuffersWhenFillingBufferStatefulThenSuccessIsReturned) {
|
||||
auto pCmdQ = std::make_unique<CommandQueueStateful<FamilyType>>(context.get(), device.get());
|
||||
dstBuffer.size = static_cast<size_t>(smallSize);
|
||||
auto retVal = pCmdQ->enqueueFillBuffer(
|
||||
|
@ -19,7 +19,7 @@ namespace NEO {
|
||||
|
||||
using MockOfflineCompilerSklTests = ::testing::Test;
|
||||
|
||||
SKLTEST_F(MockOfflineCompilerSklTests, GivenSklWhenParseDebugSettingsThenStatelessToStatefullOptimizationIsEnabled) {
|
||||
SKLTEST_F(MockOfflineCompilerSklTests, GivenSklWhenParseDebugSettingsThenStatelessToStatefulOptimizationIsEnabled) {
|
||||
MockOfflineCompiler mockOfflineCompiler;
|
||||
mockOfflineCompiler.deviceName = "skl";
|
||||
mockOfflineCompiler.initHardwareInfo(mockOfflineCompiler.deviceName);
|
||||
@ -29,13 +29,13 @@ SKLTEST_F(MockOfflineCompilerSklTests, GivenSklWhenParseDebugSettingsThenStatele
|
||||
EXPECT_NE(std::string::npos, found);
|
||||
}
|
||||
|
||||
SKLTEST_F(MockOfflineCompilerSklTests, GivenSklAndDisabledViaDebugThenStatelessToStatefullOptimizationDisabled) {
|
||||
SKLTEST_F(MockOfflineCompilerSklTests, GivenSklAndDisabledViaDebugThenStatelessToStatefulOptimizationDisabled) {
|
||||
DebugManagerStateRestore stateRestore;
|
||||
MockOfflineCompiler mockOfflineCompiler;
|
||||
mockOfflineCompiler.deviceName = "skl";
|
||||
DebugManager.flags.EnableStatelessToStatefulBufferOffsetOpt.set(0);
|
||||
mockOfflineCompiler.initHardwareInfo(mockOfflineCompiler.deviceName);
|
||||
mockOfflineCompiler.setStatelessToStatefullBufferOffsetFlag();
|
||||
mockOfflineCompiler.setStatelessToStatefulBufferOffsetFlag();
|
||||
std::string internalOptions = mockOfflineCompiler.internalOptions;
|
||||
size_t found = internalOptions.find(NEO::CompilerOptions::hasBufferOffsetArg.data());
|
||||
EXPECT_EQ(std::string::npos, found);
|
||||
|
@ -53,7 +53,7 @@ class MockOfflineCompiler : public OfflineCompiler {
|
||||
using OfflineCompiler::parseCommandLine;
|
||||
using OfflineCompiler::parseDebugSettings;
|
||||
using OfflineCompiler::revisionId;
|
||||
using OfflineCompiler::setStatelessToStatefullBufferOffsetFlag;
|
||||
using OfflineCompiler::setStatelessToStatefulBufferOffsetFlag;
|
||||
using OfflineCompiler::sourceCode;
|
||||
using OfflineCompiler::storeBinary;
|
||||
using OfflineCompiler::updateBuildLog;
|
||||
|
@ -1966,7 +1966,7 @@ TEST(OfflineCompilerTest, GivenUnsupportedDeviceConfigWhenInitHardwareInfoThenIn
|
||||
EXPECT_STREQ(output.c_str(), resString.str().c_str());
|
||||
}
|
||||
|
||||
TEST(OfflineCompilerTest, givenStatelessToStatefullOptimizationEnabledWhenDebugSettingsAreParsedThenOptimizationStringIsPresent) {
|
||||
TEST(OfflineCompilerTest, givenStatelessToStatefulOptimizationEnabledWhenDebugSettingsAreParsedThenOptimizationStringIsPresent) {
|
||||
DebugManagerStateRestore stateRestore;
|
||||
MockOfflineCompiler mockOfflineCompiler;
|
||||
DebugManager.flags.EnableStatelessToStatefulBufferOffsetOpt.set(1);
|
||||
@ -3161,13 +3161,13 @@ TEST(OclocCompile, givenFormatFlagWithUnknownFormatPassedThenPrintWarning) {
|
||||
EXPECT_EQ(expectedOutput, output);
|
||||
}
|
||||
|
||||
TEST(OfflineCompilerTest, GivenDebugFlagWhenSetStatelessToStatefullBufferOffsetFlagThenStatelessToStatefullOptimizationIsSetCorrectly) {
|
||||
TEST(OfflineCompilerTest, GivenDebugFlagWhenSetStatelessToStatefulBufferOffsetFlagThenStatelessToStatefullOptimizationIsSetCorrectly) {
|
||||
DebugManagerStateRestore stateRestore;
|
||||
MockOfflineCompiler mockOfflineCompiler;
|
||||
{
|
||||
DebugManager.flags.EnableStatelessToStatefulBufferOffsetOpt.set(0);
|
||||
mockOfflineCompiler.initHardwareInfo(gEnvironment->devicePrefix.c_str());
|
||||
mockOfflineCompiler.setStatelessToStatefullBufferOffsetFlag();
|
||||
mockOfflineCompiler.setStatelessToStatefulBufferOffsetFlag();
|
||||
std::string internalOptions = mockOfflineCompiler.internalOptions;
|
||||
size_t found = internalOptions.find(NEO::CompilerOptions::hasBufferOffsetArg.data());
|
||||
EXPECT_EQ(std::string::npos, found);
|
||||
@ -3175,7 +3175,7 @@ TEST(OfflineCompilerTest, GivenDebugFlagWhenSetStatelessToStatefullBufferOffsetF
|
||||
{
|
||||
DebugManager.flags.EnableStatelessToStatefulBufferOffsetOpt.set(1);
|
||||
mockOfflineCompiler.initHardwareInfo(gEnvironment->devicePrefix.c_str());
|
||||
mockOfflineCompiler.setStatelessToStatefullBufferOffsetFlag();
|
||||
mockOfflineCompiler.setStatelessToStatefulBufferOffsetFlag();
|
||||
std::string internalOptions = mockOfflineCompiler.internalOptions;
|
||||
size_t found = internalOptions.find(NEO::CompilerOptions::hasBufferOffsetArg.data());
|
||||
EXPECT_NE(std::string::npos, found);
|
||||
|
@ -1951,7 +1951,7 @@ TEST_F(ProgramTests, GivenStatelessToStatefulBufferOffsetOptimizationWhenProgram
|
||||
EXPECT_TRUE(CompilerOptions::contains(internalOptions, CompilerOptions::hasBufferOffsetArg)) << internalOptions;
|
||||
}
|
||||
|
||||
TEST_F(ProgramTests, givenStatelessToStatefullOptimizationOffWHenProgramIsCreatedThenOptimizationStringIsNotPresent) {
|
||||
TEST_F(ProgramTests, givenStatelessToStatefulOptimizationOffWHenProgramIsCreatedThenOptimizationStringIsNotPresent) {
|
||||
DebugManagerStateRestore dbgRestorer;
|
||||
DebugManager.flags.EnableStatelessToStatefulBufferOffsetOpt.set(0);
|
||||
cl_int errorCode = CL_SUCCESS;
|
||||
@ -2318,7 +2318,7 @@ HWTEST_F(ProgramTests, givenNewProgramThenStatelessToStatefulBufferOffsetOptimiz
|
||||
MockProgram program(pContext, false, toClDeviceVector(*pClDevice));
|
||||
auto internalOptions = program.getInternalOptions();
|
||||
|
||||
if (HwHelperHw<FamilyType>::get().isStatelesToStatefullWithOffsetSupported()) {
|
||||
if (HwHelperHw<FamilyType>::get().isStatelessToStatefulWithOffsetSupported()) {
|
||||
EXPECT_TRUE(CompilerOptions::contains(internalOptions, CompilerOptions::hasBufferOffsetArg));
|
||||
} else {
|
||||
EXPECT_FALSE(CompilerOptions::contains(internalOptions, CompilerOptions::hasBufferOffsetArg));
|
||||
|
@ -42,7 +42,7 @@ HWTEST_EXCLUDE_PRODUCT(EnqueueReadBufferRectStatefulTest, WhenReadingBufferRectS
|
||||
HWTEST_EXCLUDE_PRODUCT(EnqueueCopyBufferRectStateful, GivenValidParametersWhenCopyingBufferRectStatefulThenSuccessIsReturned, IGFX_XE_HPC_CORE);
|
||||
HWTEST_EXCLUDE_PRODUCT(EnqueueSvmMemCopyHwTest, givenEnqueueSVMMemCopyWhenUsingCopyBufferToBufferStatefulBuilderThenSuccessIsReturned, IGFX_XE_HPC_CORE);
|
||||
HWTEST_EXCLUDE_PRODUCT(EnqueueSvmMemFillHwTest, givenEnqueueSVMMemFillWhenUsingCopyBufferToBufferStatefulBuilderThenSuccessIsReturned, IGFX_XE_HPC_CORE);
|
||||
HWTEST_EXCLUDE_PRODUCT(EnqueueFillBufferStatefullTest, givenBuffersWhenFillingBufferStatefullThenSuccessIsReturned, IGFX_XE_HPC_CORE);
|
||||
HWTEST_EXCLUDE_PRODUCT(EnqueueFillBufferStatefulTest, givenBuffersWhenFillingBufferStatefulThenSuccessIsReturned, IGFX_XE_HPC_CORE);
|
||||
HWTEST_EXCLUDE_PRODUCT(EnqueueCopyBufferStatefulTest, givenBuffersWhenCopyingBufferStatefulThenSuccessIsReturned, IGFX_XE_HPC_CORE);
|
||||
HWTEST_EXCLUDE_PRODUCT(EnqueueWriteBufferStatefulTest, WhenWritingBufferStatefulThenSuccessIsReturned, IGFX_XE_HPC_CORE);
|
||||
HWTEST_EXCLUDE_PRODUCT(EnqueueReadBufferStatefulTest, WhenReadingBufferStatefulThenSuccessIsReturned, IGFX_XE_HPC_CORE);
|
||||
|
Reference in New Issue
Block a user