WebGPU compute
webgpu.compute
Ready · No signal has been run.
Results
Research focus
Selected evidence from this run. Cross-run stability and comparison verdicts require a session comparison.
Full evidence
| Property | Value |
|---|---|
| No results yet. No signal has been run. | |
JSON
Selected signal results for external comparison. Field statuses, controls and exact values are retained.
No run export is available.
Source
Source is not connected yet.
// Test source pending.Reference
Reference is not connected yet.
Definition
Integer, float, subgroup and immediate readback challenges retain outputs and controls. Subgroup lane mapping is investigation evidence.
Find it in the repository
- Collector source
core/signals/webgpu/compute.ts- Export
measurementModule· Signal object- Field definitions
core/definitions/webgpu/compute.ts- Capture membership
- Product capture ·
common/capture/product.ts - Page registration
app/signals/registry.ts- Field projection
core/results/measurement.ts
Execution contract
- Signal
webgpu.compute- Collector
webgpu.compute- API / surface
- core/signals/webgpu/compute.ts
- Timeout
- 2000 ms
- Companion signals
webgpu.capabilities- Fixture inputs
- Inline owned corpora (listed below)
program-integer·sha256:f288b06ff944366ca3c67e56e056d3206a075c9766a6e32a67ae2d51b26e9f2cprogram-float·sha256:49f7ca9f4b21499907e0537b5ae9fce7e99acc0e3985e1edf43993ef6b5482f2program-linear·sha256:427bc6b5c236a7349d9dcad698befb018cee1e1e3537a21db510e6f794408c4bprogram-subgroups·sha256:b364258ceb4e60fb9e0f939b7526ae4ef76a5b03ea44cba9bf617f2d501f60b2program-subgroupIndices·sha256:4cd24e6140d2ee3c369f61b80ac9127242f788fac5283e696f68f7ae06a277d8program-subgroupSize1·sha256:0bab3370c6eaada9225fc8cf20d66fa8f96a5ee7630d582035a290f941c4daf5program-subgroupSize2·sha256:f124b6a8c9dbf41d23f7892c1a23ff5b6443d552ffef455461fb02646a5490b6program-subgroupSize4·sha256:6b174e05ae587c37a87ad8b69eaf79f902ab49755e5f29b8c1d5bf9241577c12program-subgroupSize8·sha256:948c459d98adf3efc7145218dbcc2cb28171a0cb0ceeda68a38e30cc15165d99program-subgroupSize16·sha256:b598e82f17fb377d51ba994cc41c5f3ba5293705411cd467deeb2b18378f19edprogram-subgroupSize32·sha256:d8ce9b60e397baa04ffe2990bb67ca7cba2e25cdb95e4864ee8f13a10c991602program-subgroupSize64·sha256:76d64516cb9cd3c3a906f6ffa9a63e9874a1ebe34c2e0216cd54647cc3544de1program-subgroupSize128·sha256:2634acc9549293a6d79fd6ac1b7db59c79bb22ac8092de2bbe2421db13e7990eprogram-immediates·sha256:d0f027cc732c0d0e3498f1fab0fca7436e00afb97e88c55f3e1d1604144bdbd6
Exact request inputs
[
{
"key": "webgpu.compute.integer-grid",
"inputs": {
"integer-grid": {
"workgroup": [
4,
2,
1
],
"dispatch": [
2,
2,
1
],
"formula": "x + 17*y + 3",
"initial": 4294967295,
"lanes": 32
}
},
"controls": {
"integer-grid": [
{
"relationshipId": "E02.integer-grid",
"class": "required",
"preconditions": [
"advertised feature and successful dispatch; no assumed subgroup lane order"
]
}
]
}
},
{
"key": "webgpu.compute.float-corpus",
"inputs": {
"float-corpus": {
"x": "(index+1)/10",
"expression": "sqrt(x)*sin(x)+x/3",
"lanes": 8,
"dispatch": [
1,
1,
1
],
"initial": 4294967295
}
},
"controls": {
"float-corpus": [
{
"relationshipId": "E02.float-response",
"class": "empirical",
"preconditions": [
"advertised feature and successful dispatch; no assumed subgroup lane order"
]
}
]
}
},
{
"key": "webgpu.compute.linear-indices",
"inputs": {
"linear-indices": {
"workgroup": [
4,
2,
1
],
"dispatch": [
2,
2,
1
],
"lanes": 64,
"initial": 4294967295
}
},
"controls": {
"linear-indices": [
{
"relationshipId": "E02.linear-indices",
"class": "required",
"preconditions": [
"advertised feature and successful dispatch; no assumed subgroup lane order"
]
}
]
}
},
{
"key": "webgpu.compute.subgroups",
"inputs": {
"subgroups": {
"workgroup": [
128,
1,
1
],
"dispatch": [
1,
1,
1
],
"mapping": "size/lane/subgroup/count",
"requestedSize": null,
"lanes": 512,
"initial": 4294967295
}
},
"controls": {
"subgroups": [
{
"relationshipId": "E02.subgroups",
"class": "required",
"preconditions": [
"advertised feature and successful dispatch; no assumed subgroup lane order"
]
},
{
"relationshipId": "webgpu.subgroup-range",
"class": "required",
"preconditions": [
"readable power-of-two bounds from the same adapter"
]
},
{
"relationshipId": "webgpu.requested-subgroup-size",
"class": "required",
"preconditions": [
"explicit subgroup size requested"
]
}
]
}
},
{
"key": "webgpu.compute.subgroup-indices",
"inputs": {
"subgroup-indices": {
"workgroup": [
128,
1,
1
],
"dispatch": [
1,
1,
1
],
"mapping": "size/lane/subgroup/count",
"requestedSize": null,
"lanes": 512,
"initial": 4294967295
}
},
"controls": {
"subgroup-indices": [
{
"relationshipId": "E02.subgroup-indices",
"class": "required",
"preconditions": [
"advertised feature and successful dispatch; no assumed subgroup lane order"
]
},
{
"relationshipId": "webgpu.subgroup-range",
"class": "required",
"preconditions": [
"readable power-of-two bounds from the same adapter"
]
},
{
"relationshipId": "webgpu.requested-subgroup-size",
"class": "required",
"preconditions": [
"explicit subgroup size requested"
]
}
]
}
},
{
"key": "webgpu.compute.subgroup-size",
"inputs": {
"subgroup-size": {
"workgroup": [
128,
1,
1
],
"dispatch": [
1,
1,
1
],
"mapping": "size/lane/subgroup/count",
"requestedSize": "adapter.info.subgroupMinSize",
"lanes": 512,
"initial": 4294967295
}
},
"controls": {
"subgroup-size": [
{
"relationshipId": "E02.subgroup-size",
"class": "required",
"preconditions": [
"advertised feature and successful dispatch; no assumed subgroup lane order"
]
},
{
"relationshipId": "webgpu.subgroup-range",
"class": "required",
"preconditions": [
"readable power-of-two bounds from the same adapter"
]
},
{
"relationshipId": "webgpu.requested-subgroup-size",
"class": "required",
"preconditions": [
"explicit subgroup size requested"
]
}
]
}
},
{
"key": "webgpu.compute.immediate-readback",
"inputs": {
"immediate-readback": {
"data": [
3,
5,
7,
11
],
"rangeOffset": 0,
"expected": [
3,
6,
9,
14
],
"lanes": 4,
"dispatch": [
1,
1,
1
],
"initial": 4294967295
}
},
"controls": {
"immediate-readback": [
{
"relationshipId": "E02.immediate-readback",
"class": "required",
"preconditions": [
"advertised feature and successful dispatch; no assumed subgroup lane order"
]
}
]
}
},
{
"key": "webgpu.compute.immediate-source-error",
"inputs": {
"immediate-source-error": {
"data": [
7
],
"dataOffset": 2,
"rangeOffset": 0,
"size": 1
}
},
"controls": {
"immediate-source-error": [
{
"relationshipId": "E08.immediate-source-error",
"class": "required",
"preconditions": [
"advertised feature and successful dispatch; no assumed subgroup lane order"
]
}
]
}
},
{
"key": "webgpu.compute.immediate-destination-error",
"inputs": {
"immediate-destination-error": {
"data": [
7
],
"dataOffset": 0,
"rangeOffset": 2,
"size": 1
}
},
"controls": {
"immediate-destination-error": [
{
"relationshipId": "E08.immediate-destination-error",
"class": "required",
"preconditions": [
"advertised feature and successful dispatch; no assumed subgroup lane order"
]
}
]
}
},
{
"key": "webgpu.compute.execution-failures",
"inputs": {
"execution-failures": {
"messageLimit": 384,
"phases": "allocation/compile/pipeline/encode/validation/map/device"
}
},
"controls": {}
}
]One collector runs per invocation. Results and JSON select this signal’s fields; any companions execute in the same collector.
Generated source manifest lists runtime files, fixture URLs and content digests for this build. The Source tab provides a copyable console sample.
Run and edit locally
From the repository root, start the Astro app, then open /signals/webgpu.compute. Edit the collector source and reload the page to load its new build.
pnpm run dev:webIn a browser module served by this repository’s Vite graph:
import { createCollector } from "/core/collect"
import { measurementModule } from "/core/signals/webgpu/compute"
const signal = measurementModule
const collector = createCollector()
const suite = { signals: [signal] }
const result = await collector.collect(suite)Reuse the collector owner for repeated calls so collection can enforce cleanup. This returns the collector’s raw result; app/signals/projection.ts selects the retained fields shown on this page.
rg -n 'measurementModule' core app tests
pnpm run check
pnpm run test tests/unit/app/focused-projection.test.ts| Property | Value |
|---|