refactor(jobs, allocator): optimize queues & dependencies
Major refactor of job system and memory allocator: - Replaced threadIndex with preferLocal for scheduling - Switched local queues to SPMCQueue for better performance - Introduced lock-free JobEdge pool for dependencies - Removed remainingBatches; use ref counting for completion - Updated all scheduling APIs and tests to new model - Optimized FreeList struct sizes and block management - Added allocation benchmarks - Disabled OwnershipTransferAnalyzer temporarily - Bumped assembly versions
This commit is contained in:
@@ -36,7 +36,7 @@ public unsafe class SPMDBenchmark
|
||||
height = _SIZE,
|
||||
};
|
||||
|
||||
var handle = _scheduler.ScheduleParallelSPDM<Jobs.NoiseJobMathSPMD, float>(ref job, _SIZE * _SIZE, 64, -1);
|
||||
var handle = _scheduler.ScheduleParallelSPDM<Jobs.NoiseJobMathSPMD, float>(ref job, _SIZE * _SIZE, 64, false);
|
||||
_scheduler.Wait(handle);
|
||||
}
|
||||
|
||||
@@ -50,7 +50,7 @@ public unsafe class SPMDBenchmark
|
||||
height = _SIZE,
|
||||
};
|
||||
|
||||
var handle = _scheduler.ScheduleParallelFor(ref job, _SIZE * _SIZE, 64, -1);
|
||||
var handle = _scheduler.ScheduleParallelFor(ref job, _SIZE * _SIZE, 64);
|
||||
_scheduler.Wait(handle);
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@ public unsafe class SPMDBenchmark
|
||||
height = _SIZE,
|
||||
};
|
||||
|
||||
var handle = _scheduler.ScheduleParallel(ref job, _SIZE * _SIZE, 64, -1);
|
||||
var handle = _scheduler.ScheduleParallel(ref job, _SIZE * _SIZE, 64);
|
||||
_scheduler.Wait(handle);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user