summaryrefslogtreecommitdiffstats
path: root/tools/cuda-ab/victory_saxpy.cu
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-11-09 08:13:13 -0500
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-11-09 08:13:13 -0500
commit80cbbd043ad26c3e35f83fc0165357a1629b7124 (patch)
tree2d5d6c8c702ee89173ff1e0b95a3ea310d22a470 /tools/cuda-ab/victory_saxpy.cu
parent7876ce047d1e60cae04babbdc6ffb4a00042ba38 (diff)
downloadopen-iov-80cbbd043ad26c3e35f83fc0165357a1629b7124.tar.gz
open-iov-80cbbd043ad26c3e35f83fc0165357a1629b7124.zip
vgsp-sema: author the UVM init-push release at the channel's own rank slot
r1645 live proof fixes the channel-pool slot mapping: UVM allocates one tracking semaphore per channel in channel-creation order, so channel rank N owns pool slot N, and channel_init() waits for payload 1 at that slot. The r1642 rank+1 fallback pre-satisfied the next rank before its uvm_gpu_semaphore_alloc() zeroed the slot; the value was lost and the guest spun in uvm_push_end_and_wait (r1644/r1645: manual write of 1 to the rank-1 slot cleared the spin). - pool-tracker apply now targets slot = ce_index and fans the value out to the secondary pool-page candidate, which flaps between the RM memdesc and the guest's VAS walk (r1645: the guest polled the walk page while the boot cache named a stale, reused page). - first-submission authoring no longer requires an unlatched ring. A latch with put=get=0 still needs the release (rank 5, r1646), so every UVM CE pool channel authors its own rank slot once when the work-submit notifier clears; one-shot per rank, forward-only, idempotent. - widen the UVM CE GPFIFO window filter to 0x121800000. Evidence: backups/evidence-20261002-victory/r1645 (channels advanced once the rank slot was written) and r1646 (ranks 0-4 green; rank 5 exposed the latched-but-undecoded gap).
Diffstat (limited to 'tools/cuda-ab/victory_saxpy.cu')
0 files changed, 0 insertions, 0 deletions