oidn-web 0.3.4 → 0.4.0

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.
Files changed (122) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/README.md +140 -4
  3. package/benchmarks/compare.mjs +651 -0
  4. package/benchmarks/leak.mjs +255 -0
  5. package/benchmarks/results/before-spatial.json +391 -0
  6. package/benchmarks/results/before-spatial.md +47 -0
  7. package/benchmarks/results/int8-scan.json +2007 -0
  8. package/benchmarks/results/int8-scan.md +160 -0
  9. package/benchmarks/results/int8-w8a8-scan.json +2007 -0
  10. package/benchmarks/results/int8-w8a8-scan.md +160 -0
  11. package/benchmarks/results/int8-weight-channel.json +1413 -0
  12. package/benchmarks/results/int8-weight-channel.md +118 -0
  13. package/benchmarks/results/int8-weight-only.json +1437 -0
  14. package/benchmarks/results/int8-weight-only.md +118 -0
  15. package/benchmarks/results/kernel-webnn-final.json +1115 -0
  16. package/benchmarks/results/kernel-webnn-final.md +104 -0
  17. package/benchmarks/results/latest-optimized.json +375 -0
  18. package/benchmarks/results/latest-optimized.md +47 -0
  19. package/benchmarks/results/latest.json +391 -0
  20. package/benchmarks/results/latest.md +47 -0
  21. package/benchmarks/results/profile-baseline.json +331 -0
  22. package/benchmarks/results/profile-baseline.md +12 -0
  23. package/benchmarks/results/profile-conv2x.json +331 -0
  24. package/benchmarks/results/profile-conv2x.md +12 -0
  25. package/benchmarks/results/profile-fast-init.json +385 -0
  26. package/benchmarks/results/profile-fast-init.md +47 -0
  27. package/benchmarks/results/profile-fp16-fma.json +369 -0
  28. package/benchmarks/results/profile-fp16-fma.md +47 -0
  29. package/benchmarks/results/profile-fp16-tiled-decoder.json +369 -0
  30. package/benchmarks/results/profile-fp16-tiled-decoder.md +47 -0
  31. package/benchmarks/results/profile-fp16-tiled-encoder.json +369 -0
  32. package/benchmarks/results/profile-fp16-tiled-encoder.md +47 -0
  33. package/benchmarks/results/profile-fp16-unfused-pool.json +385 -0
  34. package/benchmarks/results/profile-fp16-unfused-pool.md +47 -0
  35. package/benchmarks/results/profile-input-major.json +347 -0
  36. package/benchmarks/results/profile-input-major.md +12 -0
  37. package/benchmarks/results/profile-k16.json +347 -0
  38. package/benchmarks/results/profile-k16.md +12 -0
  39. package/benchmarks/results/profile-k4.json +347 -0
  40. package/benchmarks/results/profile-k4.md +12 -0
  41. package/benchmarks/results/profile-pool-reuse.json +331 -0
  42. package/benchmarks/results/profile-pool-reuse.md +12 -0
  43. package/benchmarks/results/profile-precompiled.json +385 -0
  44. package/benchmarks/results/profile-precompiled.md +47 -0
  45. package/benchmarks/results/profile-static-channels.json +385 -0
  46. package/benchmarks/results/profile-static-channels.md +47 -0
  47. package/benchmarks/results/profile-static-io.json +385 -0
  48. package/benchmarks/results/profile-static-io.md +47 -0
  49. package/benchmarks/results/profile-tiled-conv.json +331 -0
  50. package/benchmarks/results/profile-tiled-conv.md +12 -0
  51. package/benchmarks/results/profile-tiled-decoder.json +347 -0
  52. package/benchmarks/results/profile-tiled-decoder.md +12 -0
  53. package/benchmarks/results/profile-tiled-matmul.json +331 -0
  54. package/benchmarks/results/profile-tiled-matmul.md +12 -0
  55. package/benchmarks/results/profile-unfused-decoder.json +379 -0
  56. package/benchmarks/results/profile-unfused-decoder.md +12 -0
  57. package/benchmarks/results/profile-unfused-pool.json +347 -0
  58. package/benchmarks/results/profile-unfused-pool.md +12 -0
  59. package/benchmarks/results/spatial-auto.json +575 -0
  60. package/benchmarks/results/spatial-auto.md +61 -0
  61. package/benchmarks/results/subgroup-smoke.json +1094 -0
  62. package/benchmarks/results/subgroup-smoke.md +104 -0
  63. package/benchmarks/results/webnn-smoke.json +739 -0
  64. package/benchmarks/results/webnn-smoke.md +76 -0
  65. package/dist/oidn.js +4189 -22603
  66. package/dist/oidn.umd.cjs +784 -5807
  67. package/lib/UNet.d.ts +66 -15
  68. package/lib/UNet.js +162 -257
  69. package/lib/UNet.js.map +1 -1
  70. package/lib/WGPUComputePass.d.ts +1 -1
  71. package/lib/WGPUComputePass.js +6 -4
  72. package/lib/WGPUComputePass.js.map +1 -1
  73. package/lib/backend.d.ts +8 -4
  74. package/lib/backend.js +36 -44
  75. package/lib/backend.js.map +1 -1
  76. package/lib/graphOptimizer.d.ts +54 -0
  77. package/lib/graphOptimizer.js +216 -0
  78. package/lib/graphOptimizer.js.map +1 -0
  79. package/lib/main.d.ts +33 -10
  80. package/lib/main.js +5 -0
  81. package/lib/main.js.map +1 -1
  82. package/lib/modelSpec.d.ts +80 -0
  83. package/lib/modelSpec.js +270 -0
  84. package/lib/modelSpec.js.map +1 -0
  85. package/lib/nativeUNet.d.ts +67 -0
  86. package/lib/nativeUNet.js +1735 -0
  87. package/lib/nativeUNet.js.map +1 -0
  88. package/lib/process.js +38 -35
  89. package/lib/process.js.map +1 -1
  90. package/lib/resourceTracker.d.ts +26 -0
  91. package/lib/resourceTracker.js +65 -0
  92. package/lib/resourceTracker.js.map +1 -0
  93. package/lib/tileScheduler.d.ts +33 -0
  94. package/lib/tileScheduler.js +86 -0
  95. package/lib/tileScheduler.js.map +1 -0
  96. package/lib/webnnUNet.d.ts +52 -0
  97. package/lib/webnnUNet.js +535 -0
  98. package/lib/webnnUNet.js.map +1 -0
  99. package/package.json +9 -5
  100. package/scripts/inspect-model.mjs +64 -0
  101. package/src/UNet.ts +236 -339
  102. package/src/WGPUComputePass.ts +6 -4
  103. package/src/backend.ts +42 -55
  104. package/src/graphOptimizer.ts +301 -0
  105. package/src/main.ts +71 -11
  106. package/src/modelSpec.ts +414 -0
  107. package/src/nativeUNet.ts +2256 -0
  108. package/src/process.ts +38 -36
  109. package/src/resourceTracker.ts +94 -0
  110. package/src/tileScheduler.ts +138 -0
  111. package/src/webnnUNet.ts +812 -0
  112. package/tests/modelSpec.test.mjs +128 -0
  113. package/tests/resourceLifecycle.test.mjs +383 -0
  114. package/tests/tileScheduler.test.mjs +90 -0
  115. package/lib/helper.d.ts +0 -4
  116. package/lib/helper.js +0 -33
  117. package/lib/helper.js.map +0 -1
  118. package/lib/kernels.d.ts +0 -1
  119. package/lib/kernels.js +0 -26
  120. package/lib/kernels.js.map +0 -1
  121. package/src/helper.ts +0 -43
  122. package/src/kernels.ts +0 -31
@@ -0,0 +1,1437 @@
1
+ {
2
+ "generatedAt": "2026-08-20T06:20:10.614Z",
3
+ "currentCommit": "4dc1797b24c64aa0d647eada0cb3389fb0d24705",
4
+ "baselineCommit": "136c00c34aa5cf4561b4137034dbd643177f0a5f",
5
+ "settings": {
6
+ "width": 512,
7
+ "height": 512,
8
+ "tileSize": 512,
9
+ "warmup": 1,
10
+ "runs": 5,
11
+ "model": "rt_hdr_calb_cnrm_large.tza",
12
+ "gpuQueueCompletionIncluded": true
13
+ },
14
+ "browser": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome",
15
+ "adapter": {
16
+ "vendor": "apple",
17
+ "architecture": "metal-3",
18
+ "device": "",
19
+ "description": ""
20
+ },
21
+ "results": [
22
+ {
23
+ "label": "TFJS (136c00c)",
24
+ "bundle": "baseline",
25
+ "baseline": true,
26
+ "initializationMs": 9.299999997019768,
27
+ "timesMs": [
28
+ 36.70000000298023,
29
+ 37.099999994039536,
30
+ 37.100000001490116,
31
+ 36.600000001490116,
32
+ 36.600000001490116
33
+ ],
34
+ "supportsFP16": true,
35
+ "adapter": {
36
+ "vendor": "apple",
37
+ "architecture": "metal-3",
38
+ "device": "",
39
+ "description": ""
40
+ },
41
+ "summary": {
42
+ "minMs": 36.600000001490116,
43
+ "medianMs": 36.70000000298023,
44
+ "meanMs": 36.82000000029802,
45
+ "p95Ms": 37.100000001490116,
46
+ "maxMs": 37.100000001490116
47
+ },
48
+ "messages": []
49
+ },
50
+ {
51
+ "label": "WGSL FP32 Auto",
52
+ "bundle": "current",
53
+ "baseline": false,
54
+ "precision": "fp32",
55
+ "initializationMs": 38.600000001490116,
56
+ "timesMs": [
57
+ 37.70000000298023,
58
+ 37.69999999552965,
59
+ 37.80000000447035,
60
+ 37.599999994039536,
61
+ 37.600000001490116
62
+ ],
63
+ "executionProfile": {
64
+ "totalMs": 37.100024999999995,
65
+ "layers": [
66
+ {
67
+ "id": "input-pack",
68
+ "durationMs": 0.05158
69
+ },
70
+ {
71
+ "id": "enc_conv1a",
72
+ "durationMs": 0.840865
73
+ },
74
+ {
75
+ "id": "enc_conv1b",
76
+ "durationMs": 4.250948
77
+ },
78
+ {
79
+ "id": "pool1",
80
+ "durationMs": 0.424724
81
+ },
82
+ {
83
+ "id": "enc_conv2a",
84
+ "durationMs": 1.74906
85
+ },
86
+ {
87
+ "id": "enc_conv2b",
88
+ "durationMs": 2.385146
89
+ },
90
+ {
91
+ "id": "pool2",
92
+ "durationMs": 0.055079
93
+ },
94
+ {
95
+ "id": "enc_conv3a",
96
+ "durationMs": 0.767161
97
+ },
98
+ {
99
+ "id": "enc_conv3b",
100
+ "durationMs": 0.98669
101
+ },
102
+ {
103
+ "id": "pool3",
104
+ "durationMs": 0.018082
105
+ },
106
+ {
107
+ "id": "enc_conv4a",
108
+ "durationMs": 0.397601
109
+ },
110
+ {
111
+ "id": "enc_conv4b",
112
+ "durationMs": 0.60867
113
+ },
114
+ {
115
+ "id": "pool4",
116
+ "durationMs": 0.008459
117
+ },
118
+ {
119
+ "id": "enc_conv5a",
120
+ "durationMs": 0.260443
121
+ },
122
+ {
123
+ "id": "enc_conv5b",
124
+ "durationMs": 0.338688
125
+ },
126
+ {
127
+ "id": "dec_conv4a",
128
+ "durationMs": 1.245799
129
+ },
130
+ {
131
+ "id": "dec_conv4b",
132
+ "durationMs": 0.750121
133
+ },
134
+ {
135
+ "id": "dec_conv3a",
136
+ "durationMs": 2.597466
137
+ },
138
+ {
139
+ "id": "dec_conv3b",
140
+ "durationMs": 0.990106
141
+ },
142
+ {
143
+ "id": "dec_conv2a",
144
+ "durationMs": 4.586345
145
+ },
146
+ {
147
+ "id": "dec_conv2b",
148
+ "durationMs": 2.353356
149
+ },
150
+ {
151
+ "id": "dec_conv1a",
152
+ "durationMs": 7.13494
153
+ },
154
+ {
155
+ "id": "dec_conv1b",
156
+ "durationMs": 3.803018
157
+ },
158
+ {
159
+ "id": "dec_conv1c",
160
+ "durationMs": 0.495678
161
+ }
162
+ ]
163
+ },
164
+ "runtimeInfo": {
165
+ "configuredEngine": "wgsl",
166
+ "gpuEngine": "wgsl",
167
+ "precision": "fp32",
168
+ "kernel": {
169
+ "configured": "auto",
170
+ "maxSpatialInputBlocks": 0,
171
+ "subgroupsAvailable": false
172
+ },
173
+ "resources": {
174
+ "live": 68,
175
+ "created": 71,
176
+ "destroyed": 3,
177
+ "peakLive": 71,
178
+ "pending": 0,
179
+ "byKind": {
180
+ "gpu-buffer": {
181
+ "created": 70,
182
+ "destroyed": 2,
183
+ "live": 68,
184
+ "peakLive": 70
185
+ },
186
+ "gpu-query-set": {
187
+ "created": 1,
188
+ "destroyed": 1,
189
+ "live": 0,
190
+ "peakLive": 1
191
+ }
192
+ }
193
+ },
194
+ "model": "oidn-unet-large-v1",
195
+ "modelFamily": "oidn-unet-large",
196
+ "inputChannels": 9,
197
+ "dynamicTile": {
198
+ "enabled": false,
199
+ "currentTileSize": 512,
200
+ "minTileSize": 256,
201
+ "maxTileSize": 512,
202
+ "targetTileTimeMs": 16
203
+ },
204
+ "lastExecution": {
205
+ "width": 512,
206
+ "height": 512,
207
+ "tileWidth": 512,
208
+ "tileHeight": 512,
209
+ "tileCount": 1,
210
+ "durationMs": 38.899999998509884,
211
+ "tileTimeMs": {
212
+ "min": 38.79999999701977,
213
+ "median": 38.79999999701977,
214
+ "mean": 38.79999999701977,
215
+ "max": 38.79999999701977
216
+ }
217
+ }
218
+ },
219
+ "supportsFP16": true,
220
+ "adapter": {
221
+ "vendor": "apple",
222
+ "architecture": "metal-3",
223
+ "device": "",
224
+ "description": ""
225
+ },
226
+ "summary": {
227
+ "minMs": 37.599999994039536,
228
+ "medianMs": 37.69999999552965,
229
+ "meanMs": 37.67999999970198,
230
+ "p95Ms": 37.80000000447035,
231
+ "maxMs": 37.80000000447035
232
+ },
233
+ "messages": [],
234
+ "validation": {
235
+ "sampleCount": 6144,
236
+ "meanAbsoluteError": 0.0000011096847932397698,
237
+ "rootMeanSquaredError": 0.0000018071588418628667,
238
+ "maxAbsoluteError": 0.000013589859008789062,
239
+ "passed": true,
240
+ "thresholds": {
241
+ "maxMeanError": 0.0001,
242
+ "maxAbsoluteError": 0.001
243
+ }
244
+ }
245
+ },
246
+ {
247
+ "label": "WGSL FP32 Direct",
248
+ "bundle": "current",
249
+ "baseline": false,
250
+ "precision": "fp32",
251
+ "kernel": "direct",
252
+ "initializationMs": 37.600000001490116,
253
+ "timesMs": [
254
+ 66.39999999850988,
255
+ 66.5,
256
+ 65.70000000298023,
257
+ 67.19999999552965,
258
+ 66.80000000447035
259
+ ],
260
+ "executionProfile": {
261
+ "totalMs": 65.767493,
262
+ "layers": [
263
+ {
264
+ "id": "input-pack",
265
+ "durationMs": 0.05004
266
+ },
267
+ {
268
+ "id": "enc_conv1a",
269
+ "durationMs": 1.239505
270
+ },
271
+ {
272
+ "id": "enc_conv1b",
273
+ "durationMs": 9.255425
274
+ },
275
+ {
276
+ "id": "pool1",
277
+ "durationMs": 0.679563
278
+ },
279
+ {
280
+ "id": "enc_conv2a",
281
+ "durationMs": 3.605849
282
+ },
283
+ {
284
+ "id": "enc_conv2b",
285
+ "durationMs": 5.619703
286
+ },
287
+ {
288
+ "id": "pool2",
289
+ "durationMs": 0.068457
290
+ },
291
+ {
292
+ "id": "enc_conv3a",
293
+ "durationMs": 1.090884
294
+ },
295
+ {
296
+ "id": "enc_conv3b",
297
+ "durationMs": 2.077019
298
+ },
299
+ {
300
+ "id": "pool3",
301
+ "durationMs": 0.020291
302
+ },
303
+ {
304
+ "id": "enc_conv4a",
305
+ "durationMs": 0.567025
306
+ },
307
+ {
308
+ "id": "enc_conv4b",
309
+ "durationMs": 0.902722
310
+ },
311
+ {
312
+ "id": "pool4",
313
+ "durationMs": 0.011125
314
+ },
315
+ {
316
+ "id": "enc_conv5a",
317
+ "durationMs": 0.32849
318
+ },
319
+ {
320
+ "id": "enc_conv5b",
321
+ "durationMs": 0.431112
322
+ },
323
+ {
324
+ "id": "dec_conv4a",
325
+ "durationMs": 1.65745
326
+ },
327
+ {
328
+ "id": "dec_conv4b",
329
+ "durationMs": 0.845515
330
+ },
331
+ {
332
+ "id": "dec_conv3a",
333
+ "durationMs": 3.539392
334
+ },
335
+ {
336
+ "id": "dec_conv3b",
337
+ "durationMs": 1.685241
338
+ },
339
+ {
340
+ "id": "dec_conv2a",
341
+ "durationMs": 6.988786
342
+ },
343
+ {
344
+ "id": "dec_conv2b",
345
+ "durationMs": 5.390918
346
+ },
347
+ {
348
+ "id": "dec_conv1a",
349
+ "durationMs": 10.509637
350
+ },
351
+ {
352
+ "id": "dec_conv1b",
353
+ "durationMs": 8.709234
354
+ },
355
+ {
356
+ "id": "dec_conv1c",
357
+ "durationMs": 0.49411
358
+ }
359
+ ]
360
+ },
361
+ "runtimeInfo": {
362
+ "configuredEngine": "wgsl",
363
+ "gpuEngine": "wgsl",
364
+ "precision": "fp32",
365
+ "kernel": {
366
+ "configured": "direct",
367
+ "maxSpatialInputBlocks": 0,
368
+ "subgroupsAvailable": false
369
+ },
370
+ "resources": {
371
+ "live": 68,
372
+ "created": 71,
373
+ "destroyed": 3,
374
+ "peakLive": 71,
375
+ "pending": 0,
376
+ "byKind": {
377
+ "gpu-buffer": {
378
+ "created": 70,
379
+ "destroyed": 2,
380
+ "live": 68,
381
+ "peakLive": 70
382
+ },
383
+ "gpu-query-set": {
384
+ "created": 1,
385
+ "destroyed": 1,
386
+ "live": 0,
387
+ "peakLive": 1
388
+ }
389
+ }
390
+ },
391
+ "model": "oidn-unet-large-v1",
392
+ "modelFamily": "oidn-unet-large",
393
+ "inputChannels": 9,
394
+ "dynamicTile": {
395
+ "enabled": false,
396
+ "currentTileSize": 512,
397
+ "minTileSize": 256,
398
+ "maxTileSize": 512,
399
+ "targetTileTimeMs": 16
400
+ },
401
+ "lastExecution": {
402
+ "width": 512,
403
+ "height": 512,
404
+ "tileWidth": 512,
405
+ "tileHeight": 512,
406
+ "tileCount": 1,
407
+ "durationMs": 67.5,
408
+ "tileTimeMs": {
409
+ "min": 67.5,
410
+ "median": 67.5,
411
+ "mean": 67.5,
412
+ "max": 67.5
413
+ }
414
+ }
415
+ },
416
+ "supportsFP16": true,
417
+ "adapter": {
418
+ "vendor": "apple",
419
+ "architecture": "metal-3",
420
+ "device": "",
421
+ "description": ""
422
+ },
423
+ "summary": {
424
+ "minMs": 65.70000000298023,
425
+ "medianMs": 66.5,
426
+ "meanMs": 66.52000000029803,
427
+ "p95Ms": 67.19999999552965,
428
+ "maxMs": 67.19999999552965
429
+ },
430
+ "messages": [],
431
+ "validation": {
432
+ "sampleCount": 6144,
433
+ "meanAbsoluteError": 0.0000011096847932397698,
434
+ "rootMeanSquaredError": 0.0000018071588418628667,
435
+ "maxAbsoluteError": 0.000013589859008789062,
436
+ "passed": true,
437
+ "thresholds": {
438
+ "maxMeanError": 0.0001,
439
+ "maxAbsoluteError": 0.001
440
+ }
441
+ }
442
+ },
443
+ {
444
+ "label": "WGSL FP16 Direct",
445
+ "bundle": "current",
446
+ "baseline": false,
447
+ "precision": "fp16",
448
+ "kernel": "direct",
449
+ "initializationMs": 26.899999998509884,
450
+ "timesMs": [
451
+ 30.19999999552965,
452
+ 29.700000002980232,
453
+ 30.200000002980232,
454
+ 29.599999994039536,
455
+ 30.100000001490116
456
+ ],
457
+ "executionProfile": {
458
+ "totalMs": 29.505953,
459
+ "layers": [
460
+ {
461
+ "id": "input-pack",
462
+ "durationMs": 0.044663
463
+ },
464
+ {
465
+ "id": "enc_conv1a",
466
+ "durationMs": 0.616797
467
+ },
468
+ {
469
+ "id": "enc_conv1b",
470
+ "durationMs": 3.117518
471
+ },
472
+ {
473
+ "id": "pool1",
474
+ "durationMs": 0.340979
475
+ },
476
+ {
477
+ "id": "enc_conv2a",
478
+ "durationMs": 1.164512
479
+ },
480
+ {
481
+ "id": "enc_conv2b",
482
+ "durationMs": 2.594217
483
+ },
484
+ {
485
+ "id": "pool2",
486
+ "durationMs": 0.058788
487
+ },
488
+ {
489
+ "id": "enc_conv3a",
490
+ "durationMs": 0.677751
491
+ },
492
+ {
493
+ "id": "enc_conv3b",
494
+ "durationMs": 0.839866
495
+ },
496
+ {
497
+ "id": "pool3",
498
+ "durationMs": 0.016083
499
+ },
500
+ {
501
+ "id": "enc_conv4a",
502
+ "durationMs": 0.339812
503
+ },
504
+ {
505
+ "id": "enc_conv4b",
506
+ "durationMs": 0.531635
507
+ },
508
+ {
509
+ "id": "pool4",
510
+ "durationMs": 0.010999
511
+ },
512
+ {
513
+ "id": "enc_conv5a",
514
+ "durationMs": 0.185948
515
+ },
516
+ {
517
+ "id": "enc_conv5b",
518
+ "durationMs": 0.242861
519
+ },
520
+ {
521
+ "id": "dec_conv4a",
522
+ "durationMs": 1.505283
523
+ },
524
+ {
525
+ "id": "dec_conv4b",
526
+ "durationMs": 0.546009
527
+ },
528
+ {
529
+ "id": "dec_conv3a",
530
+ "durationMs": 1.76535
531
+ },
532
+ {
533
+ "id": "dec_conv3b",
534
+ "durationMs": 0.842491
535
+ },
536
+ {
537
+ "id": "dec_conv2a",
538
+ "durationMs": 2.973485
539
+ },
540
+ {
541
+ "id": "dec_conv2b",
542
+ "durationMs": 2.655171
543
+ },
544
+ {
545
+ "id": "dec_conv1a",
546
+ "durationMs": 4.420606
547
+ },
548
+ {
549
+ "id": "dec_conv1b",
550
+ "durationMs": 3.81935
551
+ },
552
+ {
553
+ "id": "dec_conv1c",
554
+ "durationMs": 0.195779
555
+ }
556
+ ]
557
+ },
558
+ "runtimeInfo": {
559
+ "configuredEngine": "wgsl",
560
+ "gpuEngine": "wgsl",
561
+ "precision": "fp16",
562
+ "kernel": {
563
+ "configured": "direct",
564
+ "maxSpatialInputBlocks": 40,
565
+ "subgroupsAvailable": false
566
+ },
567
+ "resources": {
568
+ "live": 68,
569
+ "created": 71,
570
+ "destroyed": 3,
571
+ "peakLive": 71,
572
+ "pending": 0,
573
+ "byKind": {
574
+ "gpu-buffer": {
575
+ "created": 70,
576
+ "destroyed": 2,
577
+ "live": 68,
578
+ "peakLive": 70
579
+ },
580
+ "gpu-query-set": {
581
+ "created": 1,
582
+ "destroyed": 1,
583
+ "live": 0,
584
+ "peakLive": 1
585
+ }
586
+ }
587
+ },
588
+ "model": "oidn-unet-large-v1",
589
+ "modelFamily": "oidn-unet-large",
590
+ "inputChannels": 9,
591
+ "dynamicTile": {
592
+ "enabled": false,
593
+ "currentTileSize": 512,
594
+ "minTileSize": 256,
595
+ "maxTileSize": 512,
596
+ "targetTileTimeMs": 16
597
+ },
598
+ "lastExecution": {
599
+ "width": 512,
600
+ "height": 512,
601
+ "tileWidth": 512,
602
+ "tileHeight": 512,
603
+ "tileCount": 1,
604
+ "durationMs": 31.200000002980232,
605
+ "tileTimeMs": {
606
+ "min": 31.100000001490116,
607
+ "median": 31.100000001490116,
608
+ "mean": 31.100000001490116,
609
+ "max": 31.100000001490116
610
+ }
611
+ }
612
+ },
613
+ "supportsFP16": true,
614
+ "adapter": {
615
+ "vendor": "apple",
616
+ "architecture": "metal-3",
617
+ "device": "",
618
+ "description": ""
619
+ },
620
+ "summary": {
621
+ "minMs": 29.599999994039536,
622
+ "medianMs": 30.100000001490116,
623
+ "meanMs": 29.959999999403955,
624
+ "p95Ms": 30.200000002980232,
625
+ "maxMs": 30.200000002980232
626
+ },
627
+ "messages": [],
628
+ "validation": {
629
+ "sampleCount": 6144,
630
+ "meanAbsoluteError": 0.0010210334021394374,
631
+ "rootMeanSquaredError": 0.001609680379854656,
632
+ "maxAbsoluteError": 0.012395620346069336,
633
+ "passed": true,
634
+ "thresholds": {
635
+ "maxMeanError": 0.005,
636
+ "maxAbsoluteError": 0.05
637
+ }
638
+ }
639
+ },
640
+ {
641
+ "label": "WGSL FP16 Implicit GEMM",
642
+ "bundle": "current",
643
+ "baseline": false,
644
+ "precision": "fp16",
645
+ "kernel": "implicit-gemm",
646
+ "initializationMs": 31.19999999552965,
647
+ "timesMs": [
648
+ 31,
649
+ 30.80000000447035,
650
+ 30.399999998509884,
651
+ 31,
652
+ 30.799999997019768
653
+ ],
654
+ "executionProfile": {
655
+ "totalMs": 29.739644999999996,
656
+ "layers": [
657
+ {
658
+ "id": "input-pack",
659
+ "durationMs": 0.044414
660
+ },
661
+ {
662
+ "id": "enc_conv1a",
663
+ "durationMs": 0.685583
664
+ },
665
+ {
666
+ "id": "enc_conv1b",
667
+ "durationMs": 2.941654
668
+ },
669
+ {
670
+ "id": "pool1",
671
+ "durationMs": 0.331104
672
+ },
673
+ {
674
+ "id": "enc_conv2a",
675
+ "durationMs": 1.121099
676
+ },
677
+ {
678
+ "id": "enc_conv2b",
679
+ "durationMs": 1.828846
680
+ },
681
+ {
682
+ "id": "pool2",
683
+ "durationMs": 0.395185
684
+ },
685
+ {
686
+ "id": "enc_conv3a",
687
+ "durationMs": 0.742038
688
+ },
689
+ {
690
+ "id": "enc_conv3b",
691
+ "durationMs": 0.79341
692
+ },
693
+ {
694
+ "id": "pool3",
695
+ "durationMs": 0.016958
696
+ },
697
+ {
698
+ "id": "enc_conv4a",
699
+ "durationMs": 0.328063
700
+ },
701
+ {
702
+ "id": "enc_conv4b",
703
+ "durationMs": 0.509761
704
+ },
705
+ {
706
+ "id": "pool4",
707
+ "durationMs": 0.011457
708
+ },
709
+ {
710
+ "id": "enc_conv5a",
711
+ "durationMs": 0.230986
712
+ },
713
+ {
714
+ "id": "enc_conv5b",
715
+ "durationMs": 0.300357
716
+ },
717
+ {
718
+ "id": "dec_conv4a",
719
+ "durationMs": 1.044936
720
+ },
721
+ {
722
+ "id": "dec_conv4b",
723
+ "durationMs": 0.509386
724
+ },
725
+ {
726
+ "id": "dec_conv3a",
727
+ "durationMs": 1.902801
728
+ },
729
+ {
730
+ "id": "dec_conv3b",
731
+ "durationMs": 0.826533
732
+ },
733
+ {
734
+ "id": "dec_conv2a",
735
+ "durationMs": 4.068877
736
+ },
737
+ {
738
+ "id": "dec_conv2b",
739
+ "durationMs": 1.751018
740
+ },
741
+ {
742
+ "id": "dec_conv1a",
743
+ "durationMs": 6.221871
744
+ },
745
+ {
746
+ "id": "dec_conv1b",
747
+ "durationMs": 2.941778
748
+ },
749
+ {
750
+ "id": "dec_conv1c",
751
+ "durationMs": 0.19153
752
+ }
753
+ ]
754
+ },
755
+ "runtimeInfo": {
756
+ "configuredEngine": "wgsl",
757
+ "gpuEngine": "wgsl",
758
+ "precision": "fp16",
759
+ "kernel": {
760
+ "configured": "implicit-gemm",
761
+ "maxSpatialInputBlocks": 40,
762
+ "subgroupsAvailable": false
763
+ },
764
+ "resources": {
765
+ "live": 68,
766
+ "created": 71,
767
+ "destroyed": 3,
768
+ "peakLive": 71,
769
+ "pending": 0,
770
+ "byKind": {
771
+ "gpu-buffer": {
772
+ "created": 70,
773
+ "destroyed": 2,
774
+ "live": 68,
775
+ "peakLive": 70
776
+ },
777
+ "gpu-query-set": {
778
+ "created": 1,
779
+ "destroyed": 1,
780
+ "live": 0,
781
+ "peakLive": 1
782
+ }
783
+ }
784
+ },
785
+ "model": "oidn-unet-large-v1",
786
+ "modelFamily": "oidn-unet-large",
787
+ "inputChannels": 9,
788
+ "dynamicTile": {
789
+ "enabled": false,
790
+ "currentTileSize": 512,
791
+ "minTileSize": 256,
792
+ "maxTileSize": 512,
793
+ "targetTileTimeMs": 16
794
+ },
795
+ "lastExecution": {
796
+ "width": 512,
797
+ "height": 512,
798
+ "tileWidth": 512,
799
+ "tileHeight": 512,
800
+ "tileCount": 1,
801
+ "durationMs": 31.400000005960464,
802
+ "tileTimeMs": {
803
+ "min": 31.400000005960464,
804
+ "median": 31.400000005960464,
805
+ "mean": 31.400000005960464,
806
+ "max": 31.400000005960464
807
+ }
808
+ }
809
+ },
810
+ "supportsFP16": true,
811
+ "adapter": {
812
+ "vendor": "apple",
813
+ "architecture": "metal-3",
814
+ "device": "",
815
+ "description": ""
816
+ },
817
+ "summary": {
818
+ "minMs": 30.399999998509884,
819
+ "medianMs": 30.80000000447035,
820
+ "meanMs": 30.8,
821
+ "p95Ms": 31,
822
+ "maxMs": 31
823
+ },
824
+ "messages": [],
825
+ "validation": {
826
+ "sampleCount": 6144,
827
+ "meanAbsoluteError": 0.001559715069864372,
828
+ "rootMeanSquaredError": 0.0025477948380839928,
829
+ "maxAbsoluteError": 0.04479837417602539,
830
+ "passed": true,
831
+ "thresholds": {
832
+ "maxMeanError": 0.005,
833
+ "maxAbsoluteError": 0.05
834
+ }
835
+ }
836
+ },
837
+ {
838
+ "label": "WGSL FP16 Spatial (experimental)",
839
+ "bundle": "current",
840
+ "baseline": false,
841
+ "precision": "fp16",
842
+ "kernel": "spatial",
843
+ "initializationMs": 28.600000001490116,
844
+ "timesMs": [
845
+ 65.29999999701977,
846
+ 64.70000000298023,
847
+ 65.69999999552965,
848
+ 64.40000000596046,
849
+ 65.09999999403954
850
+ ],
851
+ "executionProfile": {
852
+ "totalMs": 64.84497800000001,
853
+ "layers": [
854
+ {
855
+ "id": "input-pack",
856
+ "durationMs": 0.04479
857
+ },
858
+ {
859
+ "id": "enc_conv1a",
860
+ "durationMs": 1.407457
861
+ },
862
+ {
863
+ "id": "enc_conv1b",
864
+ "durationMs": 5.439209
865
+ },
866
+ {
867
+ "id": "pool1",
868
+ "durationMs": 0.34049
869
+ },
870
+ {
871
+ "id": "enc_conv2a",
872
+ "durationMs": 2.165518
873
+ },
874
+ {
875
+ "id": "enc_conv2b",
876
+ "durationMs": 4.759813
877
+ },
878
+ {
879
+ "id": "pool2",
880
+ "durationMs": 0.05404
881
+ },
882
+ {
883
+ "id": "enc_conv3a",
884
+ "durationMs": 1.429998
885
+ },
886
+ {
887
+ "id": "enc_conv3b",
888
+ "durationMs": 3.246526
889
+ },
890
+ {
891
+ "id": "pool3",
892
+ "durationMs": 0.039874
893
+ },
894
+ {
895
+ "id": "enc_conv4a",
896
+ "durationMs": 1.374624
897
+ },
898
+ {
899
+ "id": "enc_conv4b",
900
+ "durationMs": 0.536858
901
+ },
902
+ {
903
+ "id": "pool4",
904
+ "durationMs": 0.011416
905
+ },
906
+ {
907
+ "id": "enc_conv5a",
908
+ "durationMs": 0.185911
909
+ },
910
+ {
911
+ "id": "enc_conv5b",
912
+ "durationMs": 0.234451
913
+ },
914
+ {
915
+ "id": "dec_conv4a",
916
+ "durationMs": 0.951971
917
+ },
918
+ {
919
+ "id": "dec_conv4b",
920
+ "durationMs": 0.531068
921
+ },
922
+ {
923
+ "id": "dec_conv3a",
924
+ "durationMs": 1.70224
925
+ },
926
+ {
927
+ "id": "dec_conv3b",
928
+ "durationMs": 3.232443
929
+ },
930
+ {
931
+ "id": "dec_conv2a",
932
+ "durationMs": 3.041115
933
+ },
934
+ {
935
+ "id": "dec_conv2b",
936
+ "durationMs": 4.29991
937
+ },
938
+ {
939
+ "id": "dec_conv1a",
940
+ "durationMs": 23.729359
941
+ },
942
+ {
943
+ "id": "dec_conv1b",
944
+ "durationMs": 5.720616
945
+ },
946
+ {
947
+ "id": "dec_conv1c",
948
+ "durationMs": 0.365281
949
+ }
950
+ ]
951
+ },
952
+ "runtimeInfo": {
953
+ "configuredEngine": "wgsl",
954
+ "gpuEngine": "wgsl",
955
+ "precision": "fp16",
956
+ "kernel": {
957
+ "configured": "spatial",
958
+ "maxSpatialInputBlocks": 40,
959
+ "subgroupsAvailable": false
960
+ },
961
+ "resources": {
962
+ "live": 68,
963
+ "created": 71,
964
+ "destroyed": 3,
965
+ "peakLive": 71,
966
+ "pending": 0,
967
+ "byKind": {
968
+ "gpu-buffer": {
969
+ "created": 70,
970
+ "destroyed": 2,
971
+ "live": 68,
972
+ "peakLive": 70
973
+ },
974
+ "gpu-query-set": {
975
+ "created": 1,
976
+ "destroyed": 1,
977
+ "live": 0,
978
+ "peakLive": 1
979
+ }
980
+ }
981
+ },
982
+ "model": "oidn-unet-large-v1",
983
+ "modelFamily": "oidn-unet-large",
984
+ "inputChannels": 9,
985
+ "dynamicTile": {
986
+ "enabled": false,
987
+ "currentTileSize": 512,
988
+ "minTileSize": 256,
989
+ "maxTileSize": 512,
990
+ "targetTileTimeMs": 16
991
+ },
992
+ "lastExecution": {
993
+ "width": 512,
994
+ "height": 512,
995
+ "tileWidth": 512,
996
+ "tileHeight": 512,
997
+ "tileCount": 1,
998
+ "durationMs": 66.60000000149012,
999
+ "tileTimeMs": {
1000
+ "min": 66.60000000149012,
1001
+ "median": 66.60000000149012,
1002
+ "mean": 66.60000000149012,
1003
+ "max": 66.60000000149012
1004
+ }
1005
+ }
1006
+ },
1007
+ "supportsFP16": true,
1008
+ "adapter": {
1009
+ "vendor": "apple",
1010
+ "architecture": "metal-3",
1011
+ "device": "",
1012
+ "description": ""
1013
+ },
1014
+ "summary": {
1015
+ "minMs": 64.40000000596046,
1016
+ "medianMs": 65.09999999403954,
1017
+ "meanMs": 65.03999999910593,
1018
+ "p95Ms": 65.69999999552965,
1019
+ "maxMs": 65.69999999552965
1020
+ },
1021
+ "messages": [],
1022
+ "validation": {
1023
+ "sampleCount": 6144,
1024
+ "meanAbsoluteError": 0.0010210334021394374,
1025
+ "rootMeanSquaredError": 0.001609680379854656,
1026
+ "maxAbsoluteError": 0.012395620346069336,
1027
+ "passed": true,
1028
+ "thresholds": {
1029
+ "maxMeanError": 0.005,
1030
+ "maxAbsoluteError": 0.05
1031
+ }
1032
+ }
1033
+ },
1034
+ {
1035
+ "label": "WGSL FP16 Subgroup (experimental)",
1036
+ "bundle": "current",
1037
+ "baseline": false,
1038
+ "precision": "fp16",
1039
+ "kernel": "subgroup",
1040
+ "initializationMs": 28.5,
1041
+ "timesMs": [
1042
+ 31.5,
1043
+ 31.30000000447035,
1044
+ 30.69999999552965,
1045
+ 31,
1046
+ 31.5
1047
+ ],
1048
+ "executionProfile": {
1049
+ "totalMs": 30.593169999999997,
1050
+ "layers": [
1051
+ {
1052
+ "id": "input-pack",
1053
+ "durationMs": 0.044663
1054
+ },
1055
+ {
1056
+ "id": "enc_conv1a",
1057
+ "durationMs": 0.739289
1058
+ },
1059
+ {
1060
+ "id": "enc_conv1b",
1061
+ "durationMs": 4.020546
1062
+ },
1063
+ {
1064
+ "id": "pool1",
1065
+ "durationMs": 0.37531
1066
+ },
1067
+ {
1068
+ "id": "enc_conv2a",
1069
+ "durationMs": 1.267255
1070
+ },
1071
+ {
1072
+ "id": "enc_conv2b",
1073
+ "durationMs": 2.030917
1074
+ },
1075
+ {
1076
+ "id": "pool2",
1077
+ "durationMs": 0.049705
1078
+ },
1079
+ {
1080
+ "id": "enc_conv3a",
1081
+ "durationMs": 0.714916
1082
+ },
1083
+ {
1084
+ "id": "enc_conv3b",
1085
+ "durationMs": 0.921901
1086
+ },
1087
+ {
1088
+ "id": "pool3",
1089
+ "durationMs": 0.015707
1090
+ },
1091
+ {
1092
+ "id": "enc_conv4a",
1093
+ "durationMs": 0.376727
1094
+ },
1095
+ {
1096
+ "id": "enc_conv4b",
1097
+ "durationMs": 0.747746
1098
+ },
1099
+ {
1100
+ "id": "pool4",
1101
+ "durationMs": 0.160656
1102
+ },
1103
+ {
1104
+ "id": "enc_conv5a",
1105
+ "durationMs": 0.354812
1106
+ },
1107
+ {
1108
+ "id": "enc_conv5b",
1109
+ "durationMs": 0.342604
1110
+ },
1111
+ {
1112
+ "id": "dec_conv4a",
1113
+ "durationMs": 0.971108
1114
+ },
1115
+ {
1116
+ "id": "dec_conv4b",
1117
+ "durationMs": 0.576215
1118
+ },
1119
+ {
1120
+ "id": "dec_conv3a",
1121
+ "durationMs": 1.702979
1122
+ },
1123
+ {
1124
+ "id": "dec_conv3b",
1125
+ "durationMs": 0.919527
1126
+ },
1127
+ {
1128
+ "id": "dec_conv2a",
1129
+ "durationMs": 3.035607
1130
+ },
1131
+ {
1132
+ "id": "dec_conv2b",
1133
+ "durationMs": 2.547219
1134
+ },
1135
+ {
1136
+ "id": "dec_conv1a",
1137
+ "durationMs": 4.382815
1138
+ },
1139
+ {
1140
+ "id": "dec_conv1b",
1141
+ "durationMs": 4.068585
1142
+ },
1143
+ {
1144
+ "id": "dec_conv1c",
1145
+ "durationMs": 0.226361
1146
+ }
1147
+ ]
1148
+ },
1149
+ "runtimeInfo": {
1150
+ "configuredEngine": "wgsl",
1151
+ "gpuEngine": "wgsl",
1152
+ "precision": "fp16",
1153
+ "kernel": {
1154
+ "configured": "subgroup",
1155
+ "maxSpatialInputBlocks": 40,
1156
+ "subgroupsAvailable": true
1157
+ },
1158
+ "resources": {
1159
+ "live": 68,
1160
+ "created": 71,
1161
+ "destroyed": 3,
1162
+ "peakLive": 71,
1163
+ "pending": 0,
1164
+ "byKind": {
1165
+ "gpu-buffer": {
1166
+ "created": 70,
1167
+ "destroyed": 2,
1168
+ "live": 68,
1169
+ "peakLive": 70
1170
+ },
1171
+ "gpu-query-set": {
1172
+ "created": 1,
1173
+ "destroyed": 1,
1174
+ "live": 0,
1175
+ "peakLive": 1
1176
+ }
1177
+ }
1178
+ },
1179
+ "model": "oidn-unet-large-v1",
1180
+ "modelFamily": "oidn-unet-large",
1181
+ "inputChannels": 9,
1182
+ "dynamicTile": {
1183
+ "enabled": false,
1184
+ "currentTileSize": 512,
1185
+ "minTileSize": 256,
1186
+ "maxTileSize": 512,
1187
+ "targetTileTimeMs": 16
1188
+ },
1189
+ "lastExecution": {
1190
+ "width": 512,
1191
+ "height": 512,
1192
+ "tileWidth": 512,
1193
+ "tileHeight": 512,
1194
+ "tileCount": 1,
1195
+ "durationMs": 32.30000000447035,
1196
+ "tileTimeMs": {
1197
+ "min": 32.30000000447035,
1198
+ "median": 32.30000000447035,
1199
+ "mean": 32.30000000447035,
1200
+ "max": 32.30000000447035
1201
+ }
1202
+ }
1203
+ },
1204
+ "supportsFP16": true,
1205
+ "adapter": {
1206
+ "vendor": "apple",
1207
+ "architecture": "metal-3",
1208
+ "device": "",
1209
+ "description": ""
1210
+ },
1211
+ "summary": {
1212
+ "minMs": 30.69999999552965,
1213
+ "medianMs": 31.30000000447035,
1214
+ "meanMs": 31.2,
1215
+ "p95Ms": 31.5,
1216
+ "maxMs": 31.5
1217
+ },
1218
+ "messages": [],
1219
+ "validation": {
1220
+ "sampleCount": 6144,
1221
+ "meanAbsoluteError": 0.0010210334021394374,
1222
+ "rootMeanSquaredError": 0.001609680379854656,
1223
+ "maxAbsoluteError": 0.012395620346069336,
1224
+ "passed": true,
1225
+ "thresholds": {
1226
+ "maxMeanError": 0.005,
1227
+ "maxAbsoluteError": 0.05
1228
+ }
1229
+ }
1230
+ },
1231
+ {
1232
+ "label": "WGSL INT8 weights / FP16 activations (experimental)",
1233
+ "bundle": "current",
1234
+ "baseline": false,
1235
+ "precision": "int8",
1236
+ "initializationMs": 152.10000000149012,
1237
+ "timesMs": [
1238
+ 100.89999999850988,
1239
+ 101.60000000149012,
1240
+ 100.79999999701977,
1241
+ 101.29999999701977,
1242
+ 101.40000000596046
1243
+ ],
1244
+ "executionProfile": {
1245
+ "totalMs": 100.739128,
1246
+ "layers": [
1247
+ {
1248
+ "id": "input-pack",
1249
+ "durationMs": 0.044541
1250
+ },
1251
+ {
1252
+ "id": "enc_conv1a",
1253
+ "durationMs": 2.051302
1254
+ },
1255
+ {
1256
+ "id": "enc_conv1b",
1257
+ "durationMs": 11.634822
1258
+ },
1259
+ {
1260
+ "id": "pool1",
1261
+ "durationMs": 0.882987
1262
+ },
1263
+ {
1264
+ "id": "enc_conv2a",
1265
+ "durationMs": 4.188561
1266
+ },
1267
+ {
1268
+ "id": "enc_conv2b",
1269
+ "durationMs": 6.229197
1270
+ },
1271
+ {
1272
+ "id": "pool2",
1273
+ "durationMs": 0.370161
1274
+ },
1275
+ {
1276
+ "id": "enc_conv3a",
1277
+ "durationMs": 2.324798
1278
+ },
1279
+ {
1280
+ "id": "enc_conv3b",
1281
+ "durationMs": 2.912372
1282
+ },
1283
+ {
1284
+ "id": "pool3",
1285
+ "durationMs": 0.359952
1286
+ },
1287
+ {
1288
+ "id": "enc_conv4a",
1289
+ "durationMs": 1.120942
1290
+ },
1291
+ {
1292
+ "id": "enc_conv4b",
1293
+ "durationMs": 1.556143
1294
+ },
1295
+ {
1296
+ "id": "pool4",
1297
+ "durationMs": 0.013334
1298
+ },
1299
+ {
1300
+ "id": "enc_conv5a",
1301
+ "durationMs": 0.539534
1302
+ },
1303
+ {
1304
+ "id": "enc_conv5b",
1305
+ "durationMs": 0.720364
1306
+ },
1307
+ {
1308
+ "id": "dec_conv4a",
1309
+ "durationMs": 3.162035
1310
+ },
1311
+ {
1312
+ "id": "dec_conv4b",
1313
+ "durationMs": 1.864638
1314
+ },
1315
+ {
1316
+ "id": "dec_conv3a",
1317
+ "durationMs": 6.274571
1318
+ },
1319
+ {
1320
+ "id": "dec_conv3b",
1321
+ "durationMs": 3.106827
1322
+ },
1323
+ {
1324
+ "id": "dec_conv2a",
1325
+ "durationMs": 12.723222
1326
+ },
1327
+ {
1328
+ "id": "dec_conv2b",
1329
+ "durationMs": 6.588774
1330
+ },
1331
+ {
1332
+ "id": "dec_conv1a",
1333
+ "durationMs": 19.512118
1334
+ },
1335
+ {
1336
+ "id": "dec_conv1b",
1337
+ "durationMs": 11.858111
1338
+ },
1339
+ {
1340
+ "id": "dec_conv1c",
1341
+ "durationMs": 0.699822
1342
+ }
1343
+ ]
1344
+ },
1345
+ "runtimeInfo": {
1346
+ "configuredEngine": "wgsl",
1347
+ "gpuEngine": "wgsl",
1348
+ "precision": "int8",
1349
+ "kernel": {
1350
+ "configured": "auto",
1351
+ "maxSpatialInputBlocks": 0,
1352
+ "subgroupsAvailable": false
1353
+ },
1354
+ "resources": {
1355
+ "live": 87,
1356
+ "created": 90,
1357
+ "destroyed": 3,
1358
+ "peakLive": 90,
1359
+ "pending": 0,
1360
+ "byKind": {
1361
+ "gpu-buffer": {
1362
+ "created": 89,
1363
+ "destroyed": 2,
1364
+ "live": 87,
1365
+ "peakLive": 89
1366
+ },
1367
+ "gpu-query-set": {
1368
+ "created": 1,
1369
+ "destroyed": 1,
1370
+ "live": 0,
1371
+ "peakLive": 1
1372
+ }
1373
+ }
1374
+ },
1375
+ "model": "oidn-unet-large-v1",
1376
+ "modelFamily": "oidn-unet-large",
1377
+ "inputChannels": 9,
1378
+ "dynamicTile": {
1379
+ "enabled": false,
1380
+ "currentTileSize": 512,
1381
+ "minTileSize": 256,
1382
+ "maxTileSize": 512,
1383
+ "targetTileTimeMs": 16
1384
+ },
1385
+ "lastExecution": {
1386
+ "width": 512,
1387
+ "height": 512,
1388
+ "tileWidth": 512,
1389
+ "tileHeight": 512,
1390
+ "tileCount": 1,
1391
+ "durationMs": 102.5,
1392
+ "tileTimeMs": {
1393
+ "min": 102.5,
1394
+ "median": 102.5,
1395
+ "mean": 102.5,
1396
+ "max": 102.5
1397
+ }
1398
+ }
1399
+ },
1400
+ "supportsFP16": true,
1401
+ "adapter": {
1402
+ "vendor": "apple",
1403
+ "architecture": "metal-3",
1404
+ "device": "",
1405
+ "description": ""
1406
+ },
1407
+ "summary": {
1408
+ "minMs": 100.79999999701977,
1409
+ "medianMs": 101.29999999701977,
1410
+ "meanMs": 101.2,
1411
+ "p95Ms": 101.60000000149012,
1412
+ "maxMs": 101.60000000149012
1413
+ },
1414
+ "messages": [],
1415
+ "validation": {
1416
+ "sampleCount": 6144,
1417
+ "meanAbsoluteError": 0.525755935792707,
1418
+ "rootMeanSquaredError": 0.7734487394187427,
1419
+ "maxAbsoluteError": 2.5758755207061768,
1420
+ "passed": false,
1421
+ "thresholds": {
1422
+ "maxMeanError": 0.1,
1423
+ "maxAbsoluteError": 1
1424
+ }
1425
+ }
1426
+ },
1427
+ {
1428
+ "label": "WebNN FP16 (experimental)",
1429
+ "bundle": "current",
1430
+ "baseline": false,
1431
+ "precision": "fp16",
1432
+ "engine": "webnn",
1433
+ "skipped": "Error: WebNN FP16 WebGPU interop failed: NotSupportedError: Failed to execute 'createExportableTensor' on 'MLContext': WebGPU Interop is not supported.",
1434
+ "messages": []
1435
+ }
1436
+ ]
1437
+ }