fix: implicit scaling for hostFunctions

Program StoreData once, using base address
with workloadPartitionOffset bool enabled.
Program SemaphoreWait for each partition as work for each
tile must be synchronized.
HostFunction worker will wait for HostFunctionId on all tiles,
using partition offset for each partition.
HostFunction completion will clear hostFunction Id
for each partition using partition offset.

Related-To: NEO-14577
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
This commit is contained in:
Kamil Kopryk
2025-12-11 16:19:15 +00:00
committed by Compute-Runtime-Automation
parent 8b0a42bff4
commit 6da5f98324
14 changed files with 638 additions and 346 deletions

View File

@@ -110,7 +110,7 @@ void HostFunctionScheduler::registerHostFunctionStreamer(HostFunctionStreamer *s
}
uint64_t HostFunctionScheduler::isHostFunctionReadyToExecute(HostFunctionStreamer *streamer) {
auto id = streamer->isHostFunctionReadyToExecute();
auto id = streamer->getHostFunctionReadyToExecute();
if (id != HostFunctionStatus::completed && semaphore.try_acquire()) {
return id;
}