better throughput scheduling
Validate Operations / validate-operations (push) Failing after 3h13m5s

update results_comparison.csv
This commit is contained in:
NiccoloN
2026-10-19 22:11:51 +02:00
parent 034c197260
commit 48e9fb3795
21 changed files with 1636 additions and 259 deletions
+16
View File
@@ -82,6 +82,10 @@ spatial::SchedulingTarget getDefaultPimSchedulingTarget() {
target.matrixInputReadMultiplier = 8;
target.matrixColumns = crossbarSize.getValue();
target.synchronizationRegisterCount = kPimEventRegisterCount;
target.sharedMemoryWidthBytes = 16;
target.sharedMemoryReadLatencyNs = 8;
target.sharedMemoryWriteLatencyNs = 10;
target.zeroSplatUsesSharedMemory = false;
setDefaultPimInterProcessorLatencies(target);
return target;
@@ -266,6 +270,18 @@ spatial::SchedulingTarget getPimSchedulingTarget() {
requireObject(core, "local_memory_config", "chip_config.core_config");
const llvm::json::Object& network =
requireObject(chip, "network_config", "chip_config");
// Older target configurations omit global memory and use adapter defaults.
if (chip.get("global_memory_config")) {
const llvm::json::Object& sharedMemory =
requireObject(chip, "global_memory_config", "chip_config");
Cost memoryPeriod = getConfigCost(sharedMemory, "period", Cost{1});
target.sharedMemoryWidthBytes = getConfigCost(
sharedMemory, "data_width", target.sharedMemoryWidthBytes);
target.sharedMemoryReadLatencyNs = checkedMultiply(memoryPeriod,
getConfigCost(sharedMemory, "read_latency_cycle", Cost{8}, true));
target.sharedMemoryWriteLatencyNs = checkedMultiply(memoryPeriod,
getConfigCost(sharedMemory, "write_latency_cycle", Cost{10}, true));
}
std::optional<int64_t> coreCount = chip.getInteger("core_cnt");
if (!coreCount || *coreCount <= 0)