tensorgrad 0.0.12 → 0.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/buffers.js +1 -6
- package/dist/buffers.js.map +1 -1
- package/dist/codegen.js +30 -28
- package/dist/codegen.js.map +1 -1
- package/dist/compile.js +39 -68
- package/dist/compile.js.map +1 -1
- package/dist/grad.js +1 -14
- package/dist/grad.js.map +1 -1
- package/dist/index.d.ts +740 -14
- package/dist/runtime.js +6 -9
- package/dist/runtime.js.map +1 -1
- package/dist/trace.js +8 -13
- package/dist/trace.js.map +1 -1
- package/package.json +9 -3
- package/src/buffers.ts +1 -6
- package/src/codegen.ts +31 -28
- package/src/compile.ts +312 -358
- package/src/grad.ts +1 -11
- package/src/runtime.ts +6 -9
- package/src/trace.ts +12 -9
- package/dist/adam.d.ts +0 -65
- package/dist/adam.d.ts.map +0 -1
- package/dist/buffers.d.ts +0 -57
- package/dist/buffers.d.ts.map +0 -1
- package/dist/capture.d.ts +0 -3
- package/dist/capture.d.ts.map +0 -1
- package/dist/codegen.d.ts +0 -23
- package/dist/codegen.d.ts.map +0 -1
- package/dist/compile.d.ts +0 -130
- package/dist/compile.d.ts.map +0 -1
- package/dist/grad.d.ts +0 -8
- package/dist/grad.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/ir.d.ts +0 -207
- package/dist/ir.d.ts.map +0 -1
- package/dist/module.d.ts +0 -55
- package/dist/module.d.ts.map +0 -1
- package/dist/nn.d.ts +0 -42
- package/dist/nn.d.ts.map +0 -1
- package/dist/ops.d.ts +0 -48
- package/dist/ops.d.ts.map +0 -1
- package/dist/runtime.d.ts +0 -115
- package/dist/runtime.d.ts.map +0 -1
- package/dist/shape.d.ts +0 -24
- package/dist/shape.d.ts.map +0 -1
- package/dist/trace.d.ts +0 -9
- package/dist/trace.d.ts.map +0 -1
package/dist/runtime.js
CHANGED
|
@@ -51,11 +51,14 @@ export async function createRuntime(plan, kernels, lossBufferId, opts = {}) {
|
|
|
51
51
|
// Param buffers may be supplied externally via opts.sharedParams; in that
|
|
52
52
|
// case we reuse the provided GPUBuffer instead of allocating, and the
|
|
53
53
|
// sibling compile that owns it is responsible for upload + lifetime.
|
|
54
|
+
// ownedBufferIds tracks which buffers we allocated ourselves (and so must
|
|
55
|
+
// destroy on .destroy()) vs which were handed in by a sibling compile.
|
|
54
56
|
const buffers = new Map();
|
|
57
|
+
const ownedBufferIds = new Set();
|
|
55
58
|
const sharedParams = opts.sharedParams;
|
|
56
59
|
for (const spec of plan.buffers) {
|
|
57
|
-
|
|
58
|
-
|
|
60
|
+
const shared = spec.kind === 'param' ? sharedParams?.get(spec.name) : undefined;
|
|
61
|
+
if (shared) {
|
|
59
62
|
if (shared.size !== spec.byteSize) {
|
|
60
63
|
throw new Error(`sharedParams: size mismatch for '${spec.name}' — supplied ${shared.size} bytes, ` +
|
|
61
64
|
`compiled graph expects ${spec.byteSize}.`);
|
|
@@ -69,16 +72,10 @@ export async function createRuntime(plan, kernels, lossBufferId, opts = {}) {
|
|
|
69
72
|
label: spec.name ?? `t${spec.id}-${spec.kind}`,
|
|
70
73
|
});
|
|
71
74
|
buffers.set(spec.id, buf);
|
|
75
|
+
ownedBufferIds.add(spec.id);
|
|
72
76
|
if (spec.kind === 'state')
|
|
73
77
|
fillStateBuffer(spec, buf);
|
|
74
78
|
}
|
|
75
|
-
// Track which params are externally owned — those are skipped on destroy().
|
|
76
|
-
const ownedBufferIds = new Set();
|
|
77
|
-
for (const spec of plan.buffers) {
|
|
78
|
-
if (!(spec.kind === 'param' && sharedParams?.has(spec.name))) {
|
|
79
|
-
ownedBufferIds.add(spec.id);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
79
|
// ---- Compile pipelines per kernel; cache by WGSL source -------------------
|
|
83
80
|
// Push an error scope around each shader+pipeline creation so we can surface
|
|
84
81
|
// the actual compile error rather than the cryptic "previous error" that
|
package/dist/runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/trace.js
CHANGED
|
@@ -72,23 +72,20 @@ export function traceInto(g, fn) {
|
|
|
72
72
|
_current = null;
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
75
|
+
function assertNameUnused(g, name, kinds, label) {
|
|
76
|
+
if (g.ops.some(op => kinds.includes(op.kind) && op.name === name)) {
|
|
77
|
+
throw new Error(`tensorgrad: ${label} name '${name}' already used in this trace`);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
79
80
|
export function paramInput(name, shape, dtype = 'f32') {
|
|
80
81
|
const g = currentGraph();
|
|
81
|
-
|
|
82
|
-
throw new Error(`tensorgrad: input name '${name}' already used in this trace`);
|
|
83
|
-
}
|
|
82
|
+
assertNameUnused(g, name, ['param_input', 'tensor_input'], 'input');
|
|
84
83
|
const site = captureSite('paramInput');
|
|
85
84
|
return addOp(g, 'param_input', shape, dtype, site, { name });
|
|
86
85
|
}
|
|
87
86
|
export function tensorInput(name, shape, dtype = 'f32') {
|
|
88
87
|
const g = currentGraph();
|
|
89
|
-
|
|
90
|
-
throw new Error(`tensorgrad: input name '${name}' already used in this trace`);
|
|
91
|
-
}
|
|
88
|
+
assertNameUnused(g, name, ['param_input', 'tensor_input'], 'input');
|
|
92
89
|
const site = captureSite('tensorInput');
|
|
93
90
|
return addOp(g, 'tensor_input', shape, dtype, site, { name });
|
|
94
91
|
}
|
|
@@ -96,9 +93,7 @@ export function tensorInput(name, shape, dtype = 'f32') {
|
|
|
96
93
|
// and updated across step() calls via writebacks declared by the optimizer helper.
|
|
97
94
|
export function stateInput(name, shape, dtype = 'f32', initValue = 0) {
|
|
98
95
|
const g = currentGraph();
|
|
99
|
-
|
|
100
|
-
throw new Error(`tensorgrad: state name '${name}' already used in this trace`);
|
|
101
|
-
}
|
|
96
|
+
assertNameUnused(g, name, ['state_input'], 'state');
|
|
102
97
|
const site = captureSite('stateInput');
|
|
103
98
|
return addOp(g, 'state_input', shape, dtype, site, { name, initValue });
|
|
104
99
|
}
|
package/dist/trace.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace.js","sourceRoot":"","sources":["../src/trace.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,2EAA2E;AAC3E,EAAE;AACF,SAAS;AACT,EAAE;AACF,gCAAgC;AAChC,gDAAgD;AAChD,+CAA+C;AAC/C,mDAAmD;AACnD,6BAA6B;AAC7B,OAAO;AACP,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,+CAA+C;AAG/C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEvD,gFAAgF;AAChF,IAAI,QAAQ,GAAiB,IAAI,CAAA;AACjC,gFAAgF;AAChF,6EAA6E;AAC7E,8EAA8E;AAC9E,IAAI,eAAe,GAAG,KAAK,CAAA;AAE3B,MAAM,UAAU,YAAY;IAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,qDAAqD;YACrD,2CAA2C,CAC5C,CAAA;IACH,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,eAAe,CAAA;AACxB,CAAC;AAED,gFAAgF;AAChF,8EAA8E;AAC9E,MAAM,UAAU,KAAK,CAAC,EAA2B;IAC/C,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IAChE,CAAC;IACD,MAAM,CAAC,GAAG,SAAS,EAAE,CAAA;IACrB,QAAQ,GAAG,CAAC,CAAA;IACZ,eAAe,GAAG,IAAI,CAAA;IACtB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,EAAE,EAAE,CAAA;QACnB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;QACzD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,CAAC;YAAC,CAAC,CAAC,OAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;YAAS,CAAC;QACT,QAAQ,GAAG,IAAI,CAAA;QACf,eAAe,GAAG,KAAK,CAAA;IACzB,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AAED,yEAAyE;AACzE,yEAAyE;AACzE,4EAA4E;AAC5E,sEAAsE;AACtE,4DAA4D;AAC5D,iCAAiC;AACjC,MAAM,UAAU,SAAS,CAAI,CAAQ,EAAE,EAAW;IAChD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;IACjF,CAAC;IACD,QAAQ,GAAG,CAAC,CAAA;IACZ,qEAAqE;IACrE,IAAI,CAAC;QACH,OAAO,EAAE,EAAE,CAAA;IACb,CAAC;YAAS,CAAC;QACT,QAAQ,GAAG,IAAI,CAAA;IACjB,CAAC;AACH,CAAC;
|
|
1
|
+
{"version":3,"file":"trace.js","sourceRoot":"","sources":["../src/trace.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,2EAA2E;AAC3E,EAAE;AACF,SAAS;AACT,EAAE;AACF,gCAAgC;AAChC,gDAAgD;AAChD,+CAA+C;AAC/C,mDAAmD;AACnD,6BAA6B;AAC7B,OAAO;AACP,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,+CAA+C;AAG/C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEvD,gFAAgF;AAChF,IAAI,QAAQ,GAAiB,IAAI,CAAA;AACjC,gFAAgF;AAChF,6EAA6E;AAC7E,8EAA8E;AAC9E,IAAI,eAAe,GAAG,KAAK,CAAA;AAE3B,MAAM,UAAU,YAAY;IAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,qDAAqD;YACrD,2CAA2C,CAC5C,CAAA;IACH,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,eAAe,CAAA;AACxB,CAAC;AAED,gFAAgF;AAChF,8EAA8E;AAC9E,MAAM,UAAU,KAAK,CAAC,EAA2B;IAC/C,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IAChE,CAAC;IACD,MAAM,CAAC,GAAG,SAAS,EAAE,CAAA;IACrB,QAAQ,GAAG,CAAC,CAAA;IACZ,eAAe,GAAG,IAAI,CAAA;IACtB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,EAAE,EAAE,CAAA;QACnB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;QACzD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,CAAC;YAAC,CAAC,CAAC,OAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;YAAS,CAAC;QACT,QAAQ,GAAG,IAAI,CAAA;QACf,eAAe,GAAG,KAAK,CAAA;IACzB,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AAED,yEAAyE;AACzE,yEAAyE;AACzE,4EAA4E;AAC5E,sEAAsE;AACtE,4DAA4D;AAC5D,iCAAiC;AACjC,MAAM,UAAU,SAAS,CAAI,CAAQ,EAAE,EAAW;IAChD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;IACjF,CAAC;IACD,QAAQ,GAAG,CAAC,CAAA;IACZ,qEAAqE;IACrE,IAAI,CAAC;QACH,OAAO,EAAE,EAAE,CAAA;IACb,CAAC;YAAS,CAAC;QACT,QAAQ,GAAG,IAAI,CAAA;IACjB,CAAC;AACH,CAAC;AAUD,SAAS,gBAAgB,CAAC,CAAQ,EAAE,IAAY,EAAE,KAAuB,EAAE,KAAa;IACtF,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAsB,CAAC,IAAK,EAAwB,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC3G,MAAM,IAAI,KAAK,CAAC,eAAe,KAAK,UAAU,IAAI,8BAA8B,CAAC,CAAA;IACnF,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,KAAY,EAAE,QAAe,KAAK;IACzE,MAAM,CAAC,GAAG,YAAY,EAAE,CAAA;IACxB,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAA;IACnE,MAAM,IAAI,GAAG,WAAW,CAAC,YAAY,CAAC,CAAA;IACtC,OAAO,KAAK,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,IAAI,EAAS,CAAC,CAAA;AACrE,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,KAAY,EAAE,QAAe,KAAK;IAC1E,MAAM,CAAC,GAAG,YAAY,EAAE,CAAA;IACxB,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAA;IACnE,MAAM,IAAI,GAAG,WAAW,CAAC,aAAa,CAAC,CAAA;IACvC,OAAO,KAAK,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,IAAI,EAAS,CAAC,CAAA;AACtE,CAAC;AAED,uFAAuF;AACvF,mFAAmF;AACnF,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,KAAY,EAAE,QAAe,KAAK,EAAE,SAAS,GAAG,CAAC;IACxF,MAAM,CAAC,GAAG,YAAY,EAAE,CAAA;IACxB,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,CAAA;IACnD,MAAM,IAAI,GAAG,WAAW,CAAC,YAAY,CAAC,CAAA;IACtC,OAAO,KAAK,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAS,CAAC,CAAA;AAChF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tensorgrad",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.13",
|
|
4
4
|
"description": "Tiny TypeScript-native tensor library with autograd, compiling to WebGPU. Train small models in the browser without hand-writing kernels.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Ben Albahari",
|
|
@@ -49,12 +49,18 @@
|
|
|
49
49
|
"LICENSE"
|
|
50
50
|
],
|
|
51
51
|
"scripts": {
|
|
52
|
-
"build": "tsc -p tsconfig.json",
|
|
52
|
+
"build:js": "tsc -p tsconfig.json",
|
|
53
|
+
"build:types": "tsc -p tsconfig.types.json && rollup -c rollup.dts.config.mjs && rimraf dist/types-temp",
|
|
54
|
+
"build": "pnpm run build:js && pnpm run build:types",
|
|
55
|
+
"clean": "rimraf dist",
|
|
53
56
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
54
57
|
"test": "tsx test/smoke.ts",
|
|
55
|
-
"prepublishOnly": "
|
|
58
|
+
"prepublishOnly": "pnpm run clean && pnpm run build"
|
|
56
59
|
},
|
|
57
60
|
"devDependencies": {
|
|
61
|
+
"rimraf": "^6.0.1",
|
|
62
|
+
"rollup": "^4.0.0",
|
|
63
|
+
"rollup-plugin-dts": "^6.2.0",
|
|
58
64
|
"tsx": "*",
|
|
59
65
|
"typescript": "*"
|
|
60
66
|
}
|
package/src/buffers.ts
CHANGED
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
// * output — special intermediate that should be made readable (loss)
|
|
14
14
|
|
|
15
15
|
import type { Graph, Tensor, Dtype, Shape, OpNode } from './ir.js'
|
|
16
|
+
import { shapeSize } from './shape.js'
|
|
16
17
|
|
|
17
18
|
export interface BufferSpec {
|
|
18
19
|
/** Matches tensor.id. */
|
|
@@ -55,12 +56,6 @@ export interface BufferPlan {
|
|
|
55
56
|
|
|
56
57
|
const dtypeBytes: Record<Dtype, number> = { f32: 4, i32: 4, bool: 4 }
|
|
57
58
|
|
|
58
|
-
function shapeSize(shape: Shape): number {
|
|
59
|
-
let n = 1
|
|
60
|
-
for (const d of shape) n *= d
|
|
61
|
-
return n
|
|
62
|
-
}
|
|
63
|
-
|
|
64
59
|
/**
|
|
65
60
|
* Caller-supplied writeback declarations: "after each step, copy this Tensor's
|
|
66
61
|
* buffer into the persistent home of this param/state."
|
package/src/codegen.ts
CHANGED
|
@@ -12,12 +12,21 @@
|
|
|
12
12
|
|
|
13
13
|
import type { Graph, OpNode, Tensor, Shape } from './ir.js'
|
|
14
14
|
import type { BufferPlan } from './buffers.js'
|
|
15
|
+
import { shapeSize } from './shape.js'
|
|
15
16
|
|
|
16
17
|
// Workgroup size of 256 means even our biggest kernel (~8M threads in
|
|
17
18
|
// matmul_bwd_dW) needs only ~32K workgroups, well under WebGPU's 65535-per-dim
|
|
18
19
|
// dispatch cap. Smaller WG_SIZE forced 2D dispatch with significant over-dispatch.
|
|
19
20
|
const WG_SIZE = 256
|
|
20
21
|
|
|
22
|
+
// Global thread index, packed across the 2D dispatch grid that lets us route
|
|
23
|
+
// past WebGPU's 65535-per-dim cap. Every kernel uses this exact line — keep
|
|
24
|
+
// the formula consistent with the dispatch-stride math in runtime.ts (MAX_X
|
|
25
|
+
// = 65535, so per-row stride = 65535 * WG_SIZE = 16776960). Inlined into
|
|
26
|
+
// each WGSL string via interpolation rather than a function so the WGSL
|
|
27
|
+
// compiler still sees a literal constant.
|
|
28
|
+
const GID_LINE = 'let i = gid.x + gid.y * 16776960u;'
|
|
29
|
+
|
|
21
30
|
export interface KernelSpec {
|
|
22
31
|
/** Index into graph.ops. */
|
|
23
32
|
opIndex: number
|
|
@@ -52,12 +61,6 @@ export function emitKernels(graph: Graph, plan: BufferPlan): KernelSpec[] {
|
|
|
52
61
|
return out
|
|
53
62
|
}
|
|
54
63
|
|
|
55
|
-
function shapeSize(shape: Shape): number {
|
|
56
|
-
let n = 1
|
|
57
|
-
for (const d of shape) n *= d
|
|
58
|
-
return n
|
|
59
|
-
}
|
|
60
|
-
|
|
61
64
|
function emitKernel(op: OpNode, graph: Graph, plan: BufferPlan, opIndex: number): KernelSpec {
|
|
62
65
|
const tof = (id: number) => graph.tensors[id]!
|
|
63
66
|
const buf = (tensorId: number) => plan.tensorToBuffer.get(tensorId)!
|
|
@@ -77,7 +80,7 @@ function emitKernel(op: OpNode, graph: Graph, plan: BufferPlan, opIndex: number)
|
|
|
77
80
|
@group(0) @binding(0) var<storage, read_write> buf : array<${wgslDtype(out.dtype)}>;
|
|
78
81
|
@compute @workgroup_size(${WG_SIZE})
|
|
79
82
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
80
|
-
|
|
83
|
+
${GID_LINE}
|
|
81
84
|
if (i >= ${op.n}u) { return; }
|
|
82
85
|
buf[i] = ${castFromI32('i32(i)', out.dtype)};
|
|
83
86
|
}`.trim()
|
|
@@ -109,7 +112,7 @@ fn main() {
|
|
|
109
112
|
@group(0) @binding(2) var<storage, read_write> out : array<${wgslDtype(out.dtype)}>;
|
|
110
113
|
@compute @workgroup_size(${WG_SIZE})
|
|
111
114
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
112
|
-
|
|
115
|
+
${GID_LINE}
|
|
113
116
|
if (i >= ${total}u) { return; }
|
|
114
117
|
${broadcastIndexBlock('i', out.shape, a.shape, 'aIdx')}
|
|
115
118
|
${broadcastIndexBlock('i', out.shape, b.shape, 'bIdx')}
|
|
@@ -131,7 +134,7 @@ ${broadcastIndexBlock('i', out.shape, b.shape, 'bIdx')}
|
|
|
131
134
|
@group(0) @binding(1) var<storage, read_write> out : array<${wgslDtype(out.dtype)}>;
|
|
132
135
|
@compute @workgroup_size(${WG_SIZE})
|
|
133
136
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
134
|
-
|
|
137
|
+
${GID_LINE}
|
|
135
138
|
if (i >= ${total}u) { return; }
|
|
136
139
|
out[i] = a[i] ${opStr} ${lit};
|
|
137
140
|
}`.trim()
|
|
@@ -158,7 +161,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
158
161
|
@group(0) @binding(1) var<storage, read_write> out : array<${wgslDtype(out.dtype)}>;
|
|
159
162
|
@compute @workgroup_size(${WG_SIZE})
|
|
160
163
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
161
|
-
|
|
164
|
+
${GID_LINE}
|
|
162
165
|
if (i >= ${total}u) { return; }
|
|
163
166
|
let x = a[i];
|
|
164
167
|
out[i] = ${expr};
|
|
@@ -181,7 +184,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
181
184
|
@group(0) @binding(2) var<storage, read_write> out : array<u32>;
|
|
182
185
|
@compute @workgroup_size(${WG_SIZE})
|
|
183
186
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
184
|
-
|
|
187
|
+
${GID_LINE}
|
|
185
188
|
if (i >= ${total}u) { return; }
|
|
186
189
|
${broadcastIndexBlock('i', out.shape, a.shape, 'aIdx')}
|
|
187
190
|
${broadcastIndexBlock('i', out.shape, b.shape, 'bIdx')}
|
|
@@ -202,7 +205,7 @@ ${broadcastIndexBlock('i', out.shape, b.shape, 'bIdx')}
|
|
|
202
205
|
@group(0) @binding(3) var<storage, read_write> out : array<${wgslDtype(out.dtype)}>;
|
|
203
206
|
@compute @workgroup_size(${WG_SIZE})
|
|
204
207
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
205
|
-
|
|
208
|
+
${GID_LINE}
|
|
206
209
|
if (i >= ${total}u) { return; }
|
|
207
210
|
${broadcastIndexBlock('i', out.shape, cond.shape, 'cIdx')}
|
|
208
211
|
${broadcastIndexBlock('i', out.shape, a.shape, 'aIdx')}
|
|
@@ -221,7 +224,7 @@ ${broadcastIndexBlock('i', out.shape, b.shape, 'bIdx')}
|
|
|
221
224
|
@group(0) @binding(2) var<storage, read_write> out : array<f32>;
|
|
222
225
|
@compute @workgroup_size(${WG_SIZE})
|
|
223
226
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
224
|
-
|
|
227
|
+
${GID_LINE}
|
|
225
228
|
if (i >= ${total}u) { return; }
|
|
226
229
|
out[i] = select(0.0, dy[i], x[i] > 0.0);
|
|
227
230
|
}`.trim()
|
|
@@ -240,7 +243,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
240
243
|
@group(0) @binding(1) var<storage, read_write> out : array<f32>;
|
|
241
244
|
@compute @workgroup_size(${WG_SIZE})
|
|
242
245
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
243
|
-
|
|
246
|
+
${GID_LINE}
|
|
244
247
|
if (i >= ${outerSize}u) { return; }
|
|
245
248
|
let base = i * ${D}u;
|
|
246
249
|
var s : f32 = 0.0;
|
|
@@ -265,7 +268,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
265
268
|
@group(0) @binding(1) var<storage, read_write> out : array<${wgslDtype(out.dtype)}>;
|
|
266
269
|
@compute @workgroup_size(${WG_SIZE})
|
|
267
270
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
268
|
-
|
|
271
|
+
${GID_LINE}
|
|
269
272
|
if (i >= ${total}u) { return; }
|
|
270
273
|
out[i] = a[i];
|
|
271
274
|
}`.trim()
|
|
@@ -291,7 +294,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
291
294
|
@group(0) @binding(1) var<storage, read_write> out : array<${wgslDtype(out.dtype)}>;
|
|
292
295
|
@compute @workgroup_size(${WG_SIZE})
|
|
293
296
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
294
|
-
|
|
297
|
+
${GID_LINE}
|
|
295
298
|
if (i >= ${total}u) { return; }
|
|
296
299
|
${outDimDecls}
|
|
297
300
|
let srcIdx = ${srcExpr.join(' + ')};
|
|
@@ -317,7 +320,7 @@ ${outDimDecls}
|
|
|
317
320
|
@group(0) @binding(2) var<storage, read_write> c : array<f32>;
|
|
318
321
|
@compute @workgroup_size(${WG_SIZE})
|
|
319
322
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
320
|
-
|
|
323
|
+
${GID_LINE}
|
|
321
324
|
if (i >= ${total}u) { return; }
|
|
322
325
|
let bi = i / ${M * N}u; // batch index
|
|
323
326
|
let mn = i % ${M * N}u;
|
|
@@ -348,7 +351,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
348
351
|
@group(0) @binding(2) var<storage, read_write> c : array<f32>;
|
|
349
352
|
@compute @workgroup_size(${WG_SIZE})
|
|
350
353
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
351
|
-
|
|
354
|
+
${GID_LINE}
|
|
352
355
|
if (i >= ${total}u) { return; }
|
|
353
356
|
let bi = i / ${M * N}u;
|
|
354
357
|
let mn = i % ${M * N}u;
|
|
@@ -378,7 +381,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
378
381
|
@group(0) @binding(1) var<storage, read_write> out : array<${wgslDtype(out.dtype)}>;
|
|
379
382
|
@compute @workgroup_size(${WG_SIZE})
|
|
380
383
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
381
|
-
|
|
384
|
+
${GID_LINE}
|
|
382
385
|
if (i >= ${total}u) { return; }
|
|
383
386
|
let outerIdx = i / ${depth}u;
|
|
384
387
|
let depthIdx = i % ${depth}u;
|
|
@@ -398,7 +401,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
398
401
|
@group(0) @binding(1) var<storage, read_write> out : array<f32>;
|
|
399
402
|
@compute @workgroup_size(${WG_SIZE})
|
|
400
403
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
401
|
-
|
|
404
|
+
${GID_LINE}
|
|
402
405
|
if (i >= ${outerSize}u) { return; }
|
|
403
406
|
let base = i * ${D}u;
|
|
404
407
|
var m : f32 = -1.0e30;
|
|
@@ -429,7 +432,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
429
432
|
@compute @workgroup_size(${WG_SIZE})
|
|
430
433
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
431
434
|
// Each thread handles one (..., qpos)-row, softmaxing over kpos∈[0..qpos].
|
|
432
|
-
|
|
435
|
+
${GID_LINE}
|
|
433
436
|
if (i >= ${outerSize}u) { return; }
|
|
434
437
|
let qpos = i % ${T}u;
|
|
435
438
|
let base = i * ${T}u;
|
|
@@ -464,7 +467,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
464
467
|
@group(0) @binding(1) var<storage, read_write> out : array<f32>;
|
|
465
468
|
@compute @workgroup_size(${WG_SIZE})
|
|
466
469
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
467
|
-
|
|
470
|
+
${GID_LINE}
|
|
468
471
|
if (i >= ${total}u) { return; }
|
|
469
472
|
let kpos = i % ${T}u;
|
|
470
473
|
let qpos = (i / ${T}u) % ${T}u;
|
|
@@ -489,7 +492,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
489
492
|
@group(0) @binding(1) var<storage, read_write> out : array<${wgslDtype(out.dtype)}>;
|
|
490
493
|
@compute @workgroup_size(${WG_SIZE})
|
|
491
494
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
492
|
-
|
|
495
|
+
${GID_LINE}
|
|
493
496
|
if (i >= ${total}u) { return; }
|
|
494
497
|
let outer = i / ${D_out}u;
|
|
495
498
|
let inner = i % ${D_out}u;
|
|
@@ -508,7 +511,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
508
511
|
@group(0) @binding(1) var<storage, read_write> out : array<${wgslDtype(out.dtype)}>;
|
|
509
512
|
@compute @workgroup_size(${WG_SIZE})
|
|
510
513
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
511
|
-
|
|
514
|
+
${GID_LINE}
|
|
512
515
|
if (i >= ${total}u) { return; }
|
|
513
516
|
${broadcastIndexBlock('i', out.shape, a.shape, 'srcIdx')}
|
|
514
517
|
out[i] = a[srcIdx];
|
|
@@ -529,7 +532,7 @@ ${broadcastIndexBlock('i', out.shape, a.shape, 'srcIdx')}
|
|
|
529
532
|
@group(0) @binding(2) var<storage, read_write> out : array<f32>;
|
|
530
533
|
@compute @workgroup_size(${WG_SIZE})
|
|
531
534
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
532
|
-
|
|
535
|
+
${GID_LINE}
|
|
533
536
|
if (i >= ${total}u) { return; }
|
|
534
537
|
out[i] = ${wgslLiteral(b1, 'f32')} * m[i] + ${wgslLiteral(oneMinusB1, 'f32')} * g[i];
|
|
535
538
|
}`.trim()
|
|
@@ -547,7 +550,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
547
550
|
@group(0) @binding(2) var<storage, read_write> out : array<f32>;
|
|
548
551
|
@compute @workgroup_size(${WG_SIZE})
|
|
549
552
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
550
|
-
|
|
553
|
+
${GID_LINE}
|
|
551
554
|
if (i >= ${total}u) { return; }
|
|
552
555
|
let gv = g[i];
|
|
553
556
|
out[i] = ${wgslLiteral(b2, 'f32')} * v[i] + ${wgslLiteral(oneMinusB2, 'f32')} * gv * gv;
|
|
@@ -577,7 +580,7 @@ fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
|
577
580
|
${shrinkBinding}
|
|
578
581
|
@compute @workgroup_size(${WG_SIZE})
|
|
579
582
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
580
|
-
|
|
583
|
+
${GID_LINE}
|
|
581
584
|
if (i >= ${total}u) { return; }
|
|
582
585
|
out[i] = ${shrinkExpr} * p[i] - lrt[0] * mNew[i] / (sqrt(vNew[i]) + ${wgslLiteral(op.eps, 'f32')});
|
|
583
586
|
}`.trim()
|
|
@@ -761,7 +764,7 @@ function emitSumToShape(srcShape: Shape, tgtShape: Shape, dtype: 'f32' | 'i32' |
|
|
|
761
764
|
@group(0) @binding(1) var<storage, read_write> out : array<${wgslDtype(dtype)}>;
|
|
762
765
|
@compute @workgroup_size(${WG_SIZE})
|
|
763
766
|
fn main(@builtin(global_invocation_id) gid : vec3<u32>) {
|
|
764
|
-
|
|
767
|
+
${GID_LINE}
|
|
765
768
|
if (i >= ${total}u) { return; }
|
|
766
769
|
${decompose}
|
|
767
770
|
var s : ${wgslDtype(dtype)} = ${dtype === 'f32' ? '0.0f' : (dtype === 'i32' ? '0i' : '0u')};
|