Add mfs-gpu: the MFS on WebGPU, and a TypeScript form of the solver interface
build-deploy 2m 5s
Runner
Job build-deploy on ubuntu-latest Checking out concept-collection/fastandaccurate at acdea26b Container started from catthehacker/ubuntu:act-latest ▸ Post actions/setup-node@v4 (node:662) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. (Use `node --trace-deprecation ...` to show where the warning was created) Cleaning up the job container
actions/checkout@v40s
▸ actions/checkout@v4 Using cofferdam's built-in checkout (actions/checkout@v4) concept-collection/fastandaccurate is already checked out at acdea26b (cofferdam checks out before the job starts)
actions/setup-node@v46s
▸ actions/setup-node@v4 Using cached actions/setup-node@v4 (49933ea5288c) Attempting to download 24... (node:56) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. (Use `node --trace-deprecation ...` to show where the warning was created) Bad credentials Falling back to download directly from Node Acquiring 24.19.0 - x64 from https://nodejs.org/dist/v24.19.0/node-v24.19.0-linux-x64.tar.gz Extracting ... [command]/usr/bin/tar xz --strip 1 --warning=no-unknown-keyword --overwrite -C /cofferdam/temp/dd601004-e715-4e28-a93c-52a42f25d1e0 -f /cofferdam/temp/d835dc5f-1837-496d-8138-2c36ebad0982 Adding to the cache ... Done ▾ Environment details node: v24.19.0 npm: 11.17.0 yarn: WARNING: Cache action is only supported on GHES version >= 3.5. If you are on version >=3.5 Please check with GHES admin if Actions cache service is enabled or not.
Run npm ci4s
▸ Run npm ci added 191 packages, and audited 192 packages in 3s 100 packages are looking for funding run `npm fund` for details found 0 vulnerabilities npm warn allow-scripts 4 packages have install scripts not yet covered by allowScripts: npm warn allow-scripts esbuild@0.28.2 (postinstall: node install.js) npm warn allow-scripts koffi@2.16.3 (install: node src/cnoke/cnoke.js -P . -D src/koffi --prebuild) npm warn allow-scripts numbl@0.4.18 (install: true) npm warn allow-scripts webgpu@0.4.0 (postinstall: node build/postinstall.js) npm warn allow-scripts npm warn allow-scripts Run `npm approve-scripts --allow-scripts-pending` to review, or `npm approve-scripts <pkg>` to allow.
Run npm test1m 41s
▸ Run npm test
> fastandaccurate@0.1.0 test
> tsx test/solver-test.ts
== disk-easy / mfs
n relMax relL2 solve(s) cold(s)
[linsolve] using bridge: ts-lapack (TypeScript)
[matmul] using bridge: ts-lapack (TypeScript)
8 1.470e-1 7.510e-2 0.0038 0.0144
12 3.231e-2 1.537e-2 0.0019 0.0088
16 8.949e-3 3.953e-3 0.0016 0.0090
24 1.205e-3 4.144e-4 0.0025 0.0100
32 1.232e-4 3.769e-5 0.0016 0.0102
48 1.070e-6 3.527e-7 0.0027 0.0153
64 2.005e-8 4.914e-9 0.0034 0.0259
96 3.272e-12 7.209e-13 0.0027 0.0193
128 1.353e-15 6.783e-16 0.0042 0.0190
192 1.488e-15 6.155e-16 0.0110 0.0315
256 9.469e-16 6.445e-16 0.0208 0.0367
384 8.252e-15 5.125e-15 0.0441 0.0686
512 3.524e-14 2.361e-14 0.0983 0.1452
768 2.814e-14 1.744e-14 0.2919 0.3633
ok (best relMax 9.47e-16)
== disk-easy / nystrom-dlp
n relMax relL2 solve(s) cold(s)
16 2.013e-1 7.513e-2 0.0015 0.0098
24 1.444e-1 4.815e-2 0.0012 0.0081
32 3.681e-2 1.575e-2 0.0010 0.0090
48 1.246e-2 5.316e-3 0.0121 0.0126
64 1.073e-3 4.568e-4 0.0021 0.0134
96 7.858e-5 3.373e-5 0.0028 0.0125
128 1.636e-6 7.026e-7 0.0041 0.0166
192 3.147e-9 1.350e-9 0.0083 0.0217
256 1.205e-12 5.051e-13 0.0358 0.0407
384 1.488e-15 9.471e-16 0.0630 0.0712
512 2.435e-15 1.349e-15 0.1018 0.1273
768 1.759e-15 1.432e-15 0.2958 0.3545
ok (best relMax 1.49e-15)
== star-medium / mfs
n relMax relL2 solve(s) cold(s)
8 2.611e-1 1.063e-1 0.0018 0.0066
12 6.707e-2 2.744e-2 0.0012 0.0099
16 3.035e-2 9.245e-3 0.0013 0.0114
24 8.779e-3 2.333e-3 0.0014 0.0134
32 7.045e-4 2.085e-4 0.0016 0.0132
48 1.748e-5 5.434e-6 0.0009 0.0116
64 1.885e-6 4.894e-7 0.0021 0.0118
96 2.502e-9 6.906e-10 0.0021 0.0185
128 1.559e-11 3.731e-12 0.0037 0.0166
192 7.650e-16 6.408e-16 0.0075 0.0339
256 1.020e-15 7.520e-16 0.0169 0.0410
384 3.060e-15 1.957e-15 0.0721 0.0955
512 3.379e-15 3.640e-15 0.1091 0.2066
768 7.523e-15 8.217e-15 0.3000 0.3968
ok (best relMax 7.65e-16)
== star-medium / nystrom-dlp
n relMax relL2 solve(s) cold(s)
16 6.686e-1 1.958e-1 0.0006 0.0060
24 2.340e-1 8.341e-2 0.0007 0.0077
32 1.301e-1 4.670e-2 0.0008 0.0080
48 2.602e-2 8.850e-3 0.0011 0.0089
64 6.838e-3 2.041e-3 0.0015 0.0124
96 5.697e-4 1.658e-4 0.0020 0.0129
128 9.047e-5 2.134e-5 0.0035 0.0147
192 6.442e-7 1.551e-7 0.0070 0.0249
256 2.297e-9 7.144e-10 0.0143 0.0351
384 1.797e-13 3.820e-14 0.0439 0.0663
512 1.148e-15 8.493e-16 0.1190 0.1460
768 1.530e-15 1.112e-15 0.3846 0.5196
ok (best relMax 1.15e-15)
== star-hard / mfs
n relMax relL2 solve(s) cold(s)
8 3.538e-1 2.410e-1 0.0005 0.0084
12 5.659e-1 2.363e-1 0.0007 0.0101
16 1.170e-1 4.975e-2 0.0019 0.0096
24 7.110e-2 2.847e-2 0.0017 0.0134
32 3.799e+0 8.382e-1 0.0052 0.0177
48 7.663e-2 2.271e-2 0.0258 0.0311
64 1.435e-1 2.971e-2 0.0060 0.0479
96 1.012e-1 2.109e-2 0.0051 0.0650
128 7.798e-2 2.062e-2 0.0167 0.0576
192 5.808e-4 1.864e-4 0.0313 0.1214
256 7.200e-4 2.217e-4 0.0511 0.1609
384 6.639e-6 4.133e-6 0.1401 0.2703
512 6.969e-6 6.187e-6 0.2455 0.4628
768 3.992e-6 3.781e-6 0.7431 0.9143
ok (best relMax 3.99e-6)
== star-hard / nystrom-dlp
n relMax relL2 solve(s) cold(s)
16 3.948e+0 9.891e-1 0.0020 0.0199
24 1.008e+0 4.109e-1 0.0023 0.0221
32 1.208e+0 3.561e-1 0.0021 0.0240
48 4.846e-1 1.598e-1 0.0033 0.0269
64 1.819e-1 5.760e-2 0.0048 0.0441
96 1.875e-2 7.813e-3 0.0065 0.0391
128 3.755e-2 1.032e-2 0.0205 0.0453
192 8.806e-3 2.496e-3 0.0439 0.1165
256 6.279e-4 1.565e-4 0.0407 0.1252
384 2.178e-5 6.247e-6 0.0677 0.1520
512 5.115e-7 1.042e-7 0.1195 0.2085
768 1.484e-10 3.492e-11 0.3658 0.4276
ok (best relMax 1.48e-10)
== flower-15 / mfs
n relMax relL2 solve(s) cold(s)
8 3.820e-1 1.585e-1 0.0006 0.0079
12 2.831e-1 9.335e-2 0.0007 0.0082
16 4.724e+0 2.148e+0 0.0008 0.0097
24 1.832e-1 4.575e-2 0.0011 0.0168
32 4.478e-2 1.821e-2 0.0022 0.0148
48 3.094e-2 6.683e-3 0.0075 0.0181
64 2.914e-2 7.409e-3 0.0018 0.0202
96 1.632e+0 3.713e-1 0.0028 0.0232
128 5.855e-3 1.507e-3 0.0052 0.0276
192 1.825e-3 6.414e-4 0.0109 0.0374
256 1.078e-4 2.174e-5 0.0226 0.0548
384 1.870e-6 4.209e-7 0.0736 0.1020
512 5.196e-5 1.338e-5 0.1339 0.2272
768 1.199e-3 3.568e-4 0.3505 0.6340
ok (best relMax 1.87e-6)
== flower-15 / nystrom-dlp
n relMax relL2 solve(s) cold(s)
32 2.572e+0 1.347e+0 0.0010 0.0108
48 6.171e-1 4.191e-1 0.0013 0.0115
64 1.711e+0 5.421e-1 0.0017 0.0147
96 3.511e-1 1.655e-1 0.0029 0.0199
128 4.761e-1 1.456e-1 0.0043 0.0191
192 2.117e-1 6.624e-2 0.0096 0.0338
256 1.014e-1 2.889e-2 0.0208 0.0454
384 2.557e-2 6.882e-3 0.0642 0.0980
512 6.711e-3 1.710e-3 0.1182 0.1524
768 4.719e-4 1.053e-4 0.3100 0.4019
1024 3.320e-5 6.875e-6 0.6340 0.7952
1536 1.625e-7 3.328e-8 6.7930 2.2257
ok (best relMax 1.62e-7)
== square-corners / mfs
n relMax relL2 solve(s) cold(s)
8 2.773e-1 1.533e-1 0.0018 0.0177
12 9.503e-2 5.851e-2 0.0026 0.0210
16 6.666e-2 2.156e-2 0.0061 0.0239
24 2.011e-2 6.765e-3 0.0034 0.0310
32 3.227e-3 1.070e-3 0.0033 0.0305
48 7.365e-4 1.831e-4 0.0077 0.0387
64 4.221e-4 1.066e-4 0.0044 0.0568
96 1.819e-5 5.173e-6 0.0136 0.0436
128 2.973e-7 1.414e-7 0.0208 0.0710
192 1.588e-8 6.560e-9 0.0299 0.1108
256 7.072e-10 3.170e-10 0.0850 0.1613
384 2.711e-12 1.563e-12 0.2436 0.3861
512 7.247e-13 6.492e-13 0.2824 0.3903
768 2.260e-13 2.196e-13 0.8755 1.3720
ok (best relMax 2.26e-13)
== square-corners / nystrom-dlp
n relMax relL2 solve(s) cold(s)
64 2.863e+0 6.411e-1 0.0045 0.0337
96 2.189e+0 4.863e-1 0.0084 0.0428
128 1.710e+0 3.762e-1 0.0114 0.0516
192 1.087e+0 2.362e-1 0.0283 0.0624
256 7.165e-1 1.551e-1 0.0469 0.1679
384 3.333e-1 7.144e-2 0.1115 0.2231
512 1.654e-1 3.552e-2 0.3138 0.6136
768 4.554e-2 9.620e-3 0.9495 1.0213
1024 1.337e-2 2.821e-3 1.8595 2.2349
1536 1.203e-3 2.538e-4 7.3222 6.7069
ok (best relMax 1.20e-3)
== star-nearfield / mfs
n relMax relL2 solve(s) cold(s)
8 3.188e-1 2.292e-1 0.0015 0.0178
12 6.479e-1 3.149e-1 0.0020 0.0205
16 1.557e-1 9.011e-2 0.0018 0.0208
24 1.151e-1 6.007e-2 0.0018 0.0256
32 3.423e+0 8.096e-1 0.0021 0.0375
48 1.322e-1 5.823e-2 0.0056 0.0477
64 2.978e-1 9.690e-2 0.0060 0.0451
96 2.053e-1 6.145e-2 0.0106 0.0516
128 4.713e-1 1.618e-1 0.0186 0.0785
192 9.255e-3 2.310e-3 0.0332 0.1079
256 5.171e-2 1.447e-2 0.0739 0.1427
384 5.436e-4 1.418e-4 0.2285 0.3446
512 7.770e-6 6.411e-6 0.2660 0.6578
768 3.873e-6 3.876e-6 0.7941 0.9909
ok (best relMax 3.87e-6)
== star-nearfield / nystrom-dlp
n relMax relL2 solve(s) cold(s)
64 7.733e-1 3.268e-1 0.0034 0.0330
96 1.182e+0 5.205e-1 0.0068 0.0406
128 7.213e-1 2.860e-1 0.0085 0.0452
192 2.713e-1 1.007e-1 0.0260 0.0666
256 2.088e-1 8.063e-2 0.0447 0.1559
384 2.193e-1 6.401e-2 0.1073 0.2820
512 1.590e-1 4.507e-2 0.3392 0.6043
768 1.474e-1 4.153e-2 0.3577 1.0396
1024 6.281e-2 1.755e-2 0.7684 0.8280
1536 1.187e-2 3.414e-3 2.2529 2.8394
ok (best relMax 1.19e-2)
grid ok (40000 values)
all checks passed
Run npm run build10s
▸ Run npm run build > fastandaccurate@0.1.0 build > tsc --noEmit && vite build && npm run build:cli [36mvite v7.3.6 [32mbuilding client environment for production...[36m[39m transforming... [33m[plugin vite:resolve] Module "node:module" has been externalized for browser compatibility, imported by "/cofferdam/workspace/node_modules/qhull-wasm/dist/qhull.mjs". See https://vite.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.[39m [32m✓[39m 54 modules transformed. rendering chunks... computing gzip size... [2mdist/[22m[32mindex.html [39m[1m[2m 0.83 kB[22m[1m[22m[2m │ gzip: 0.52 kB[22m [2mdist/[22m[2massets/[22m[32mqhull-DM50poqF.wasm [39m[1m[2m 388.78 kB[22m[1m[22m[2m │ gzip: 152.23 kB[22m [2mdist/[22m[2massets/[22m[32mworker-3yAfAPtA.js [39m[1m[2m1,592.94 kB[22m[1m[22m [2mdist/[22m[2massets/[22m[35mindex-CKaEFqXb.css [39m[1m[2m 3.73 kB[22m[1m[22m[2m │ gzip: 1.32 kB[22m [2mdist/[22m[2massets/[22m[36mindex-BbyqDeEK.js [39m[1m[2m 275.96 kB[22m[1m[22m[2m │ gzip: 89.02 kB[22m [32m✓ built in 3.13s[39m > fastandaccurate@0.1.0 build:cli > vite build --config vite.cli.config.ts && node scripts/pack-cli.mjs [36mvite v7.3.6 [32mbuilding ssr environment for production...[36m[39m transforming... [32m✓[39m 21 modules transformed. rendering chunks... [2mdist-cli/[22m[36mmain.js [39m[1m[33m3,145.74 kB[39m[22m [32m✓ built in 2.54s[39m dist/cli.tgz (fastandaccurate-cli 0.1.0)
actions/configure-pages@v50s
▸ actions/configure-pages@v5 Using cofferdam's built-in configure-pages (actions/configure-pages@v5) This site will be served at https://vault1.fly.dev/concept-collection/fastandaccurate/site/
actions/upload-pages-artifact@v32s
▸ actions/upload-pages-artifact@v3 Using cached actions/upload-pages-artifact@v3 (56afc609e742) ▸ Archive artifact ▾ Archive artifact ./ ./cli.tgz ./assets/ ./assets/index-CKaEFqXb.css ./assets/qhull-DM50poqF.wasm ./assets/worker-3yAfAPtA.js ./assets/index-BbyqDeEK.js ./index.html ▸ Upload artifact Using cofferdam's built-in upload-artifact (actions/upload-artifact@v4) Uploading artifact github-pages (1 file, 2897920 bytes)
actions/deploy-pages@v40s
▸ actions/deploy-pages@v4 Using cofferdam's built-in deploy-pages (actions/deploy-pages@v4) Deployed 6 files to https://vault1.fly.dev/concept-collection/fastandaccurate/site/
Artifacts
github-pages2.8 MB
Artifacts are tar archives, and are removed when the run is pruned.