SPMD API overhaul: gather/scatter, job & packaging updates
- ISPMDLane: add MaskGather, MaskStore, Scatter, MaskScatter; update MaskLoad/Gather signatures for hardware parity - WideLane/ScalarLane: implement new methods with HW/fallback logic - MathV: gather/mask-gather now delegate to lane methods - Vector2/3/4: add CompressStore, Scatter, MaskScatter - SPMD jobs/tests/README: migrate to new APIs for correctness - Use Unsafe.BitCast instead of Unsafe.As/AsRef - Add SPMDUtility for gather index extraction - Job system: add ICustomJob<TSelf>, ScheduleCustom overload - FreeList concurrency obsolete; always thread-safe - NuGet: include LICENSE/README, set license/readme in .csproj - Docs: update SPMD usage, clarify safety notes - Minor: doc fixes, CompressStore test improvements
This commit is contained in:
@@ -102,7 +102,7 @@ public unsafe struct IncrementJob : IJob
|
||||
}
|
||||
}
|
||||
|
||||
public unsafe struct CustomJob
|
||||
public unsafe struct CustomJob : ICustomJob<CustomJob>
|
||||
{
|
||||
public int* value;
|
||||
|
||||
@@ -110,4 +110,9 @@ public unsafe struct CustomJob
|
||||
{
|
||||
*job.value += 1;
|
||||
}
|
||||
|
||||
public static void Free(ref CustomJob job)
|
||||
{
|
||||
// No resources to free in this example.
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user