mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-03 23:03:02 +08:00
Fix heap size programming.
- In various scenarios code was not programming the max heap size correctly - It was possible for SSH to overcome the limit - Size was programmed smaller then it really was, which resulted in smaller reuse, which led to SBA reprogramming which led to lower performance in ooq scenarios - This change fixes the heap size programming by always utilizing full allocation size and always limiting SSH at proper value Change-Id: Ib703d2b0709ed8227a293def3a454bf1bb516dfd
This commit is contained in:
committed by
sys_ocldev
parent
285ecbd9cb
commit
37c7e27276
@@ -467,7 +467,7 @@ TEST_F(InternalsEventTest, resizeCmdQueueHeapsWhenKernelOparationHeapsAreBigger)
|
||||
auto dsh = createFullHeap(requestedSize);
|
||||
auto ish = createFullHeap(requestedSize);
|
||||
auto ioh = createFullHeap(requestedSize);
|
||||
auto ssh = createFullHeap(requestedSize);
|
||||
auto ssh = createFullHeap(maxSshSize);
|
||||
|
||||
using UniqueIH = std::unique_ptr<IndirectHeap>;
|
||||
auto kernelOperation = new KernelOperation(std::unique_ptr<LinearStream>(cmdStream), UniqueIH(dsh),
|
||||
@@ -482,7 +482,7 @@ TEST_F(InternalsEventTest, resizeCmdQueueHeapsWhenKernelOparationHeapsAreBigger)
|
||||
EXPECT_LT(cmdQueueDsh.getMaxAvailableSpace(), dsh->getMaxAvailableSpace());
|
||||
EXPECT_LT(cmdQueueIsh.getMaxAvailableSpace(), ish->getMaxAvailableSpace());
|
||||
EXPECT_LT(cmdQueueIoh.getMaxAvailableSpace(), ioh->getMaxAvailableSpace());
|
||||
EXPECT_LT(cmdQueueSsh.getMaxAvailableSpace(), ssh->getMaxAvailableSpace());
|
||||
EXPECT_EQ(cmdQueueSsh.getMaxAvailableSpace(), ssh->getMaxAvailableSpace());
|
||||
|
||||
cmdComputeKernel->submit(0, false);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user