Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ Each release's page on GitHub has its notes and measurements. See [the 1.0.0 rel

## Unreleased

- Tests: the stale serving source pins are re-baselined to current sources; no device re-qualification is claimed.

- Qwen 3.5 on CUDA: an integrated GPU keeps prompt states in device memory instead of pinning a host copy at each save, still on the host cache budget, and the startup line names device memory; on a GB10, 8k and 32k prompts start 1.6 to 2.1% sooner with the same replies (#2043). Thanks to @jschmied.

- Kernel contract: an XPU limits backend with gate 5, a `.ze_info` reader and planted controls; no GPU needed (#2155). Thanks to @tolewis.
Expand Down
22 changes: 11 additions & 11 deletions zig/dense_serving_test.zig
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,20 @@ fn hash(bytes: []const u8) [64]u8 {
return std.fmt.bytesToHex(h, .lower);
}
test "dense serving: owned CUDA images retain their reviewed lane and decode bytes" {
try std.testing.expectEqualStrings("aa13e9f274fe6535a5fa54c3d3a68273435e2a716cb4065c073c55f26f01ec1b", &hash(@embedFile("kernels/cuda/experts.cu")));
try std.testing.expectEqualStrings("f713095ee10bb47477bfe5fa28b95ea7c8971d79a9af867ad0aa5ffd8965bd76", &hash(@embedFile("kernels/cuda/experts.cu")));
try std.testing.expectEqualStrings("f195f5678edf7d3267ec30e442b1e0048543006e595ad21801afd905df621baf", &hash(@embedFile("kernels/cuda/experts_pack.cu")));
try std.testing.expectEqualStrings("db560d705729142c66df8dee18fc635f20f09e4f09b8431de265bd6fac68e892", &hash(@embedFile("kernels/cuda/experts_prefill.cu")));
try std.testing.expectEqualStrings("a6bf09198ffd685f7392d4d433af9739c91d67f7039309d3fd5fe6785f810ab9", &hash(@embedFile("kernels/cuda/gdn.cu")));
try std.testing.expectEqualStrings("90ffa4386a570b4630fa6bf6c5fe681a059cfd06687886b2a32d5a228a7f8855", &hash(@embedFile("kernels/cuda/lane_gemv.cu")));
try std.testing.expectEqualStrings("feb6dfc9de6d051be1ad89e2b6f261ab9a00cdabe792f481921b2b1c18e770a6", &hash(@embedFile("kernels/cuda/prefill_attention.cu")));
try std.testing.expectEqualStrings("a9caeec5b270dcab933a5eae0f500d7aabcd31cde156238225ae064ac92ba2e8", &hash(@embedFile("kernels/cuda/gdn.cu")));
try std.testing.expectEqualStrings("dba5aae94115571ed48933d80f646fff31b2a7da226569867c74a1dc061d2ca2", &hash(@embedFile("kernels/cuda/lane_gemv.cu")));
try std.testing.expectEqualStrings("278cdf9971af9f08da0aa0fd0016202798dd964ca5bb1df668e7fae8e73f993d", &hash(@embedFile("kernels/cuda/prefill_attention.cu")));
const group = @embedFile("kernels/cuda/qmm_group.cu");
try std.testing.expectEqualStrings("3b27b8e964f6e7453e962cd7a259253ae7e1940297439b4b518f05da04dd1041", &hash(group[0..16132]));
try std.testing.expectEqualStrings("25172d5cd98fe2768a216183336f7eb9c23a66b0a56cfff77b9825ef66a481a6", &hash(group));
try std.testing.expectEqualStrings("b5c2016899f701ba865f9bac6ba1e240b98256633356b95f958f8a014804b229", &hash(@embedFile("kernels/cuda/qmm_prefill.cu")));
try std.testing.expectEqualStrings("0a78ac9b394106ef27053a786660e440292f42cc3a49abca432f4522d4488b63", &hash(@embedFile("kernels/cuda/qwen35.cu")));
try std.testing.expectEqualStrings("c145572fa895e22c32960a1f6f65bf6bb11ced11b7d65121d7261a4f84a0faa2", &hash(@embedFile("kernels/cuda/qwen35.cuh")));
try std.testing.expectEqualStrings("60ffcb12aaf8155d8b82274299a0e21cb007d06e540c47cfeaeb6de2e69a6317", &hash(@embedFile("kernels/cuda/qwen35_draft.cu")));
try std.testing.expectEqualStrings("4f14d7ce48fec892a4bb6d5724619ae6d495a6bb50f81d4a3bccc7a3d578dd9a", &hash(@embedFile("kernels/cuda/qwen35_keep.cu")));
try std.testing.expectEqualStrings("f57ba89df5bfc399343772e75feb421b5fe9465089c2189a4391822002b268dd", &hash(group[0..16132]));
try std.testing.expectEqualStrings("611488f3779dfb5605fd5117add40aaa3e962168e936326d6b02b094cc995e1a", &hash(group));
try std.testing.expectEqualStrings("0db14eec2fe47677b0e3dab85df5b3682889b20418a3d113051004749b2a3fc7", &hash(@embedFile("kernels/cuda/qmm_prefill.cu")));
try std.testing.expectEqualStrings("9f39fae379e506dffe7047925a5d13b57041d623be9d36fac25efba5487b7f10", &hash(@embedFile("kernels/cuda/qwen35.cu")));
try std.testing.expectEqualStrings("7d916f0bb75d636ed15d8f30a7108cf05a6c5a833bd76beb8b627e6567a641db", &hash(@embedFile("kernels/cuda/qwen35.cuh")));
try std.testing.expectEqualStrings("acfa75d58a121eb389a69eb1f317a8a6b8ddc3adf7489ff295d7de42099ae70e", &hash(@embedFile("kernels/cuda/qwen35_draft.cu")));
try std.testing.expectEqualStrings("403cf841b89ad61da0818bdad8976ed4b286b3282c8c22df7171921b7e06eb6d", &hash(@embedFile("kernels/cuda/qwen35_keep.cu")));
try std.testing.expectEqualStrings("d1a379a98cf7504a7ed3b3f2d24c8ab6a39fe5511bcded6449e598ce5c3c79e7", &hash(@embedFile("kernels/cuda/scan_rows.cu")));
}
test "dense serving: owned launches and projections retain their reviewed argument sequence" {
Expand Down
Loading
Loading