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,2007 @@
1
+ {
2
+ "generatedAt": "2026-08-20T06:15:27.882Z",
3
+ "currentCommit": "4dc1797b24c64aa0d647eada0cb3389fb0d24705",
4
+ "baselineCommit": "136c00c34aa5cf4561b4137034dbd643177f0a5f",
5
+ "settings": {
6
+ "width": 512,
7
+ "height": 512,
8
+ "tileSize": 512,
9
+ "warmup": 1,
10
+ "runs": 3,
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.799999997019768,
27
+ "timesMs": [
28
+ 35,
29
+ 34.80000000447035,
30
+ 35
31
+ ],
32
+ "supportsFP16": true,
33
+ "adapter": {
34
+ "vendor": "apple",
35
+ "architecture": "metal-3",
36
+ "device": "",
37
+ "description": ""
38
+ },
39
+ "summary": {
40
+ "minMs": 34.80000000447035,
41
+ "medianMs": 35,
42
+ "meanMs": 34.93333333482345,
43
+ "p95Ms": 35,
44
+ "maxMs": 35
45
+ },
46
+ "messages": []
47
+ },
48
+ {
49
+ "label": "WGSL FP32 Auto",
50
+ "bundle": "current",
51
+ "baseline": false,
52
+ "precision": "fp32",
53
+ "initializationMs": 39.600000001490116,
54
+ "timesMs": [
55
+ 35.70000000298023,
56
+ 35.899999998509884,
57
+ 35.899999998509884
58
+ ],
59
+ "executionProfile": {
60
+ "totalMs": 35.224907,
61
+ "layers": [
62
+ {
63
+ "id": "input-pack",
64
+ "durationMs": 0.050828
65
+ },
66
+ {
67
+ "id": "enc_conv1a",
68
+ "durationMs": 0.839285
69
+ },
70
+ {
71
+ "id": "enc_conv1b",
72
+ "durationMs": 3.693815
73
+ },
74
+ {
75
+ "id": "pool1",
76
+ "durationMs": 0.505613
77
+ },
78
+ {
79
+ "id": "enc_conv2a",
80
+ "durationMs": 1.404267
81
+ },
82
+ {
83
+ "id": "enc_conv2b",
84
+ "durationMs": 2.29263
85
+ },
86
+ {
87
+ "id": "pool2",
88
+ "durationMs": 0.05441
89
+ },
90
+ {
91
+ "id": "enc_conv3a",
92
+ "durationMs": 0.768168
93
+ },
94
+ {
95
+ "id": "enc_conv3b",
96
+ "durationMs": 0.989478
97
+ },
98
+ {
99
+ "id": "pool3",
100
+ "durationMs": 0.017998
101
+ },
102
+ {
103
+ "id": "enc_conv4a",
104
+ "durationMs": 0.400582
105
+ },
106
+ {
107
+ "id": "enc_conv4b",
108
+ "durationMs": 0.611477
109
+ },
110
+ {
111
+ "id": "pool4",
112
+ "durationMs": 0.008457
113
+ },
114
+ {
115
+ "id": "enc_conv5a",
116
+ "durationMs": 0.259555
117
+ },
118
+ {
119
+ "id": "enc_conv5b",
120
+ "durationMs": 0.338631
121
+ },
122
+ {
123
+ "id": "dec_conv4a",
124
+ "durationMs": 1.293946
125
+ },
126
+ {
127
+ "id": "dec_conv4b",
128
+ "durationMs": 0.610893
129
+ },
130
+ {
131
+ "id": "dec_conv3a",
132
+ "durationMs": 2.376496
133
+ },
134
+ {
135
+ "id": "dec_conv3b",
136
+ "durationMs": 0.988269
137
+ },
138
+ {
139
+ "id": "dec_conv2a",
140
+ "durationMs": 4.377408
141
+ },
142
+ {
143
+ "id": "dec_conv2b",
144
+ "durationMs": 2.156103
145
+ },
146
+ {
147
+ "id": "dec_conv1a",
148
+ "durationMs": 6.943801
149
+ },
150
+ {
151
+ "id": "dec_conv1b",
152
+ "durationMs": 3.754516
153
+ },
154
+ {
155
+ "id": "dec_conv1c",
156
+ "durationMs": 0.488281
157
+ }
158
+ ]
159
+ },
160
+ "runtimeInfo": {
161
+ "configuredEngine": "wgsl",
162
+ "gpuEngine": "wgsl",
163
+ "precision": "fp32",
164
+ "kernel": {
165
+ "configured": "auto",
166
+ "maxSpatialInputBlocks": 0,
167
+ "subgroupsAvailable": false
168
+ },
169
+ "resources": {
170
+ "live": 68,
171
+ "created": 71,
172
+ "destroyed": 3,
173
+ "peakLive": 71,
174
+ "pending": 0,
175
+ "byKind": {
176
+ "gpu-buffer": {
177
+ "created": 70,
178
+ "destroyed": 2,
179
+ "live": 68,
180
+ "peakLive": 70
181
+ },
182
+ "gpu-query-set": {
183
+ "created": 1,
184
+ "destroyed": 1,
185
+ "live": 0,
186
+ "peakLive": 1
187
+ }
188
+ }
189
+ },
190
+ "model": "oidn-unet-large-v1",
191
+ "modelFamily": "oidn-unet-large",
192
+ "inputChannels": 9,
193
+ "dynamicTile": {
194
+ "enabled": false,
195
+ "currentTileSize": 512,
196
+ "minTileSize": 256,
197
+ "maxTileSize": 512,
198
+ "targetTileTimeMs": 16
199
+ },
200
+ "lastExecution": {
201
+ "width": 512,
202
+ "height": 512,
203
+ "tileWidth": 512,
204
+ "tileHeight": 512,
205
+ "tileCount": 1,
206
+ "durationMs": 37.20000000298023,
207
+ "tileTimeMs": {
208
+ "min": 37.20000000298023,
209
+ "median": 37.20000000298023,
210
+ "mean": 37.20000000298023,
211
+ "max": 37.20000000298023
212
+ }
213
+ }
214
+ },
215
+ "supportsFP16": true,
216
+ "adapter": {
217
+ "vendor": "apple",
218
+ "architecture": "metal-3",
219
+ "device": "",
220
+ "description": ""
221
+ },
222
+ "summary": {
223
+ "minMs": 35.70000000298023,
224
+ "medianMs": 35.899999998509884,
225
+ "meanMs": 35.833333333333336,
226
+ "p95Ms": 35.899999998509884,
227
+ "maxMs": 35.899999998509884
228
+ },
229
+ "messages": [],
230
+ "validation": {
231
+ "sampleCount": 6144,
232
+ "meanAbsoluteError": 0.0000011096847932397698,
233
+ "rootMeanSquaredError": 0.0000018071588418628667,
234
+ "maxAbsoluteError": 0.000013589859008789062,
235
+ "passed": true,
236
+ "thresholds": {
237
+ "maxMeanError": 0.0001,
238
+ "maxAbsoluteError": 0.001
239
+ }
240
+ }
241
+ },
242
+ {
243
+ "label": "WGSL FP32 Direct",
244
+ "bundle": "current",
245
+ "baseline": false,
246
+ "precision": "fp32",
247
+ "kernel": "direct",
248
+ "initializationMs": 35.70000000298023,
249
+ "timesMs": [
250
+ 62.899999998509884,
251
+ 63.100000001490116,
252
+ 63.100000001490116
253
+ ],
254
+ "executionProfile": {
255
+ "totalMs": 62.36885199999999,
256
+ "layers": [
257
+ {
258
+ "id": "input-pack",
259
+ "durationMs": 0.051039
260
+ },
261
+ {
262
+ "id": "enc_conv1a",
263
+ "durationMs": 1.240484
264
+ },
265
+ {
266
+ "id": "enc_conv1b",
267
+ "durationMs": 8.886259
268
+ },
269
+ {
270
+ "id": "pool1",
271
+ "durationMs": 0.482895
272
+ },
273
+ {
274
+ "id": "enc_conv2a",
275
+ "durationMs": 3.242144
276
+ },
277
+ {
278
+ "id": "enc_conv2b",
279
+ "durationMs": 5.459001
280
+ },
281
+ {
282
+ "id": "pool2",
283
+ "durationMs": 0.074621
284
+ },
285
+ {
286
+ "id": "enc_conv3a",
287
+ "durationMs": 1.07891
288
+ },
289
+ {
290
+ "id": "enc_conv3b",
291
+ "durationMs": 1.525388
292
+ },
293
+ {
294
+ "id": "pool3",
295
+ "durationMs": 0.018582
296
+ },
297
+ {
298
+ "id": "enc_conv4a",
299
+ "durationMs": 0.568057
300
+ },
301
+ {
302
+ "id": "enc_conv4b",
303
+ "durationMs": 0.839252
304
+ },
305
+ {
306
+ "id": "pool4",
307
+ "durationMs": 0.012417
308
+ },
309
+ {
310
+ "id": "enc_conv5a",
311
+ "durationMs": 0.323944
312
+ },
313
+ {
314
+ "id": "enc_conv5b",
315
+ "durationMs": 0.437897
316
+ },
317
+ {
318
+ "id": "dec_conv4a",
319
+ "durationMs": 1.662174
320
+ },
321
+ {
322
+ "id": "dec_conv4b",
323
+ "durationMs": 0.842002
324
+ },
325
+ {
326
+ "id": "dec_conv3a",
327
+ "durationMs": 3.374387
328
+ },
329
+ {
330
+ "id": "dec_conv3b",
331
+ "durationMs": 1.438726
332
+ },
333
+ {
334
+ "id": "dec_conv2a",
335
+ "durationMs": 6.656528
336
+ },
337
+ {
338
+ "id": "dec_conv2b",
339
+ "durationMs": 5.382087
340
+ },
341
+ {
342
+ "id": "dec_conv1a",
343
+ "durationMs": 9.641309
344
+ },
345
+ {
346
+ "id": "dec_conv1b",
347
+ "durationMs": 8.629605
348
+ },
349
+ {
350
+ "id": "dec_conv1c",
351
+ "durationMs": 0.501144
352
+ }
353
+ ]
354
+ },
355
+ "runtimeInfo": {
356
+ "configuredEngine": "wgsl",
357
+ "gpuEngine": "wgsl",
358
+ "precision": "fp32",
359
+ "kernel": {
360
+ "configured": "direct",
361
+ "maxSpatialInputBlocks": 0,
362
+ "subgroupsAvailable": false
363
+ },
364
+ "resources": {
365
+ "live": 68,
366
+ "created": 71,
367
+ "destroyed": 3,
368
+ "peakLive": 71,
369
+ "pending": 0,
370
+ "byKind": {
371
+ "gpu-buffer": {
372
+ "created": 70,
373
+ "destroyed": 2,
374
+ "live": 68,
375
+ "peakLive": 70
376
+ },
377
+ "gpu-query-set": {
378
+ "created": 1,
379
+ "destroyed": 1,
380
+ "live": 0,
381
+ "peakLive": 1
382
+ }
383
+ }
384
+ },
385
+ "model": "oidn-unet-large-v1",
386
+ "modelFamily": "oidn-unet-large",
387
+ "inputChannels": 9,
388
+ "dynamicTile": {
389
+ "enabled": false,
390
+ "currentTileSize": 512,
391
+ "minTileSize": 256,
392
+ "maxTileSize": 512,
393
+ "targetTileTimeMs": 16
394
+ },
395
+ "lastExecution": {
396
+ "width": 512,
397
+ "height": 512,
398
+ "tileWidth": 512,
399
+ "tileHeight": 512,
400
+ "tileCount": 1,
401
+ "durationMs": 64.19999999552965,
402
+ "tileTimeMs": {
403
+ "min": 64.19999999552965,
404
+ "median": 64.19999999552965,
405
+ "mean": 64.19999999552965,
406
+ "max": 64.19999999552965
407
+ }
408
+ }
409
+ },
410
+ "supportsFP16": true,
411
+ "adapter": {
412
+ "vendor": "apple",
413
+ "architecture": "metal-3",
414
+ "device": "",
415
+ "description": ""
416
+ },
417
+ "summary": {
418
+ "minMs": 62.899999998509884,
419
+ "medianMs": 63.100000001490116,
420
+ "meanMs": 63.033333333830036,
421
+ "p95Ms": 63.100000001490116,
422
+ "maxMs": 63.100000001490116
423
+ },
424
+ "messages": [],
425
+ "validation": {
426
+ "sampleCount": 6144,
427
+ "meanAbsoluteError": 0.0000011096847932397698,
428
+ "rootMeanSquaredError": 0.0000018071588418628667,
429
+ "maxAbsoluteError": 0.000013589859008789062,
430
+ "passed": true,
431
+ "thresholds": {
432
+ "maxMeanError": 0.0001,
433
+ "maxAbsoluteError": 0.001
434
+ }
435
+ }
436
+ },
437
+ {
438
+ "label": "WGSL FP16 Direct",
439
+ "bundle": "current",
440
+ "baseline": false,
441
+ "precision": "fp16",
442
+ "kernel": "direct",
443
+ "initializationMs": 27.5,
444
+ "timesMs": [
445
+ 27.600000001490116,
446
+ 27.5,
447
+ 27.69999999552965
448
+ ],
449
+ "executionProfile": {
450
+ "totalMs": 26.923126000000003,
451
+ "layers": [
452
+ {
453
+ "id": "input-pack",
454
+ "durationMs": 0.044537
455
+ },
456
+ {
457
+ "id": "enc_conv1a",
458
+ "durationMs": 0.618559
459
+ },
460
+ {
461
+ "id": "enc_conv1b",
462
+ "durationMs": 3.109085
463
+ },
464
+ {
465
+ "id": "pool1",
466
+ "durationMs": 0.352795
467
+ },
468
+ {
469
+ "id": "enc_conv2a",
470
+ "durationMs": 1.165668
471
+ },
472
+ {
473
+ "id": "enc_conv2b",
474
+ "durationMs": 2.060113
475
+ },
476
+ {
477
+ "id": "pool2",
478
+ "durationMs": 0.050662
479
+ },
480
+ {
481
+ "id": "enc_conv3a",
482
+ "durationMs": 0.679886
483
+ },
484
+ {
485
+ "id": "enc_conv3b",
486
+ "durationMs": 0.84191
487
+ },
488
+ {
489
+ "id": "pool3",
490
+ "durationMs": 0.019039
491
+ },
492
+ {
493
+ "id": "enc_conv4a",
494
+ "durationMs": 0.339756
495
+ },
496
+ {
497
+ "id": "enc_conv4b",
498
+ "durationMs": 0.527485
499
+ },
500
+ {
501
+ "id": "pool4",
502
+ "durationMs": 0.011249
503
+ },
504
+ {
505
+ "id": "enc_conv5a",
506
+ "durationMs": 0.185647
507
+ },
508
+ {
509
+ "id": "enc_conv5b",
510
+ "durationMs": 0.231891
511
+ },
512
+ {
513
+ "id": "dec_conv4a",
514
+ "durationMs": 0.942942
515
+ },
516
+ {
517
+ "id": "dec_conv4b",
518
+ "durationMs": 0.53311
519
+ },
520
+ {
521
+ "id": "dec_conv3a",
522
+ "durationMs": 1.695652
523
+ },
524
+ {
525
+ "id": "dec_conv3b",
526
+ "durationMs": 0.834535
527
+ },
528
+ {
529
+ "id": "dec_conv2a",
530
+ "durationMs": 2.9746
531
+ },
532
+ {
533
+ "id": "dec_conv2b",
534
+ "durationMs": 1.970497
535
+ },
536
+ {
537
+ "id": "dec_conv1a",
538
+ "durationMs": 4.414903
539
+ },
540
+ {
541
+ "id": "dec_conv1b",
542
+ "durationMs": 3.124834
543
+ },
544
+ {
545
+ "id": "dec_conv1c",
546
+ "durationMs": 0.193771
547
+ }
548
+ ]
549
+ },
550
+ "runtimeInfo": {
551
+ "configuredEngine": "wgsl",
552
+ "gpuEngine": "wgsl",
553
+ "precision": "fp16",
554
+ "kernel": {
555
+ "configured": "direct",
556
+ "maxSpatialInputBlocks": 40,
557
+ "subgroupsAvailable": false
558
+ },
559
+ "resources": {
560
+ "live": 68,
561
+ "created": 71,
562
+ "destroyed": 3,
563
+ "peakLive": 71,
564
+ "pending": 0,
565
+ "byKind": {
566
+ "gpu-buffer": {
567
+ "created": 70,
568
+ "destroyed": 2,
569
+ "live": 68,
570
+ "peakLive": 70
571
+ },
572
+ "gpu-query-set": {
573
+ "created": 1,
574
+ "destroyed": 1,
575
+ "live": 0,
576
+ "peakLive": 1
577
+ }
578
+ }
579
+ },
580
+ "model": "oidn-unet-large-v1",
581
+ "modelFamily": "oidn-unet-large",
582
+ "inputChannels": 9,
583
+ "dynamicTile": {
584
+ "enabled": false,
585
+ "currentTileSize": 512,
586
+ "minTileSize": 256,
587
+ "maxTileSize": 512,
588
+ "targetTileTimeMs": 16
589
+ },
590
+ "lastExecution": {
591
+ "width": 512,
592
+ "height": 512,
593
+ "tileWidth": 512,
594
+ "tileHeight": 512,
595
+ "tileCount": 1,
596
+ "durationMs": 28.600000001490116,
597
+ "tileTimeMs": {
598
+ "min": 28.600000001490116,
599
+ "median": 28.600000001490116,
600
+ "mean": 28.600000001490116,
601
+ "max": 28.600000001490116
602
+ }
603
+ }
604
+ },
605
+ "supportsFP16": true,
606
+ "adapter": {
607
+ "vendor": "apple",
608
+ "architecture": "metal-3",
609
+ "device": "",
610
+ "description": ""
611
+ },
612
+ "summary": {
613
+ "minMs": 27.5,
614
+ "medianMs": 27.600000001490116,
615
+ "meanMs": 27.599999999006588,
616
+ "p95Ms": 27.69999999552965,
617
+ "maxMs": 27.69999999552965
618
+ },
619
+ "messages": [],
620
+ "validation": {
621
+ "sampleCount": 6144,
622
+ "meanAbsoluteError": 0.0010210334021394374,
623
+ "rootMeanSquaredError": 0.001609680379854656,
624
+ "maxAbsoluteError": 0.012395620346069336,
625
+ "passed": true,
626
+ "thresholds": {
627
+ "maxMeanError": 0.005,
628
+ "maxAbsoluteError": 0.05
629
+ }
630
+ }
631
+ },
632
+ {
633
+ "label": "WGSL FP16 Implicit GEMM",
634
+ "bundle": "current",
635
+ "baseline": false,
636
+ "precision": "fp16",
637
+ "kernel": "implicit-gemm",
638
+ "initializationMs": 30.5,
639
+ "timesMs": [
640
+ 28.900000005960464,
641
+ 28.899999998509884,
642
+ 28.899999998509884
643
+ ],
644
+ "executionProfile": {
645
+ "totalMs": 28.369258,
646
+ "layers": [
647
+ {
648
+ "id": "input-pack",
649
+ "durationMs": 0.044245
650
+ },
651
+ {
652
+ "id": "enc_conv1a",
653
+ "durationMs": 0.712049
654
+ },
655
+ {
656
+ "id": "enc_conv1b",
657
+ "durationMs": 2.937436
658
+ },
659
+ {
660
+ "id": "pool1",
661
+ "durationMs": 0.347213
662
+ },
663
+ {
664
+ "id": "enc_conv2a",
665
+ "durationMs": 1.121547
666
+ },
667
+ {
668
+ "id": "enc_conv2b",
669
+ "durationMs": 1.751438
670
+ },
671
+ {
672
+ "id": "pool2",
673
+ "durationMs": 0.049495
674
+ },
675
+ {
676
+ "id": "enc_conv3a",
677
+ "durationMs": 0.619142
678
+ },
679
+ {
680
+ "id": "enc_conv3b",
681
+ "durationMs": 0.791998
682
+ },
683
+ {
684
+ "id": "pool3",
685
+ "durationMs": 0.017206
686
+ },
687
+ {
688
+ "id": "enc_conv4a",
689
+ "durationMs": 0.326465
690
+ },
691
+ {
692
+ "id": "enc_conv4b",
693
+ "durationMs": 0.508862
694
+ },
695
+ {
696
+ "id": "pool4",
697
+ "durationMs": 0.008374
698
+ },
699
+ {
700
+ "id": "enc_conv5a",
701
+ "durationMs": 0.230975
702
+ },
703
+ {
704
+ "id": "enc_conv5b",
705
+ "durationMs": 0.301135
706
+ },
707
+ {
708
+ "id": "dec_conv4a",
709
+ "durationMs": 1.044555
710
+ },
711
+ {
712
+ "id": "dec_conv4b",
713
+ "durationMs": 0.510362
714
+ },
715
+ {
716
+ "id": "dec_conv3a",
717
+ "durationMs": 1.977539
718
+ },
719
+ {
720
+ "id": "dec_conv3b",
721
+ "durationMs": 0.795374
722
+ },
723
+ {
724
+ "id": "dec_conv2a",
725
+ "durationMs": 3.639153
726
+ },
727
+ {
728
+ "id": "dec_conv2b",
729
+ "durationMs": 1.752229
730
+ },
731
+ {
732
+ "id": "dec_conv1a",
733
+ "durationMs": 5.73222
734
+ },
735
+ {
736
+ "id": "dec_conv1b",
737
+ "durationMs": 2.955392
738
+ },
739
+ {
740
+ "id": "dec_conv1c",
741
+ "durationMs": 0.194854
742
+ }
743
+ ]
744
+ },
745
+ "runtimeInfo": {
746
+ "configuredEngine": "wgsl",
747
+ "gpuEngine": "wgsl",
748
+ "precision": "fp16",
749
+ "kernel": {
750
+ "configured": "implicit-gemm",
751
+ "maxSpatialInputBlocks": 40,
752
+ "subgroupsAvailable": false
753
+ },
754
+ "resources": {
755
+ "live": 68,
756
+ "created": 71,
757
+ "destroyed": 3,
758
+ "peakLive": 71,
759
+ "pending": 0,
760
+ "byKind": {
761
+ "gpu-buffer": {
762
+ "created": 70,
763
+ "destroyed": 2,
764
+ "live": 68,
765
+ "peakLive": 70
766
+ },
767
+ "gpu-query-set": {
768
+ "created": 1,
769
+ "destroyed": 1,
770
+ "live": 0,
771
+ "peakLive": 1
772
+ }
773
+ }
774
+ },
775
+ "model": "oidn-unet-large-v1",
776
+ "modelFamily": "oidn-unet-large",
777
+ "inputChannels": 9,
778
+ "dynamicTile": {
779
+ "enabled": false,
780
+ "currentTileSize": 512,
781
+ "minTileSize": 256,
782
+ "maxTileSize": 512,
783
+ "targetTileTimeMs": 16
784
+ },
785
+ "lastExecution": {
786
+ "width": 512,
787
+ "height": 512,
788
+ "tileWidth": 512,
789
+ "tileHeight": 512,
790
+ "tileCount": 1,
791
+ "durationMs": 30,
792
+ "tileTimeMs": {
793
+ "min": 30,
794
+ "median": 30,
795
+ "mean": 30,
796
+ "max": 30
797
+ }
798
+ }
799
+ },
800
+ "supportsFP16": true,
801
+ "adapter": {
802
+ "vendor": "apple",
803
+ "architecture": "metal-3",
804
+ "device": "",
805
+ "description": ""
806
+ },
807
+ "summary": {
808
+ "minMs": 28.899999998509884,
809
+ "medianMs": 28.899999998509884,
810
+ "meanMs": 28.900000000993412,
811
+ "p95Ms": 28.900000005960464,
812
+ "maxMs": 28.900000005960464
813
+ },
814
+ "messages": [],
815
+ "validation": {
816
+ "sampleCount": 6144,
817
+ "meanAbsoluteError": 0.001559715069864372,
818
+ "rootMeanSquaredError": 0.0025477948380839928,
819
+ "maxAbsoluteError": 0.04479837417602539,
820
+ "passed": true,
821
+ "thresholds": {
822
+ "maxMeanError": 0.005,
823
+ "maxAbsoluteError": 0.05
824
+ }
825
+ }
826
+ },
827
+ {
828
+ "label": "WGSL FP16 Spatial (experimental)",
829
+ "bundle": "current",
830
+ "baseline": false,
831
+ "precision": "fp16",
832
+ "kernel": "spatial",
833
+ "initializationMs": 28.299999997019768,
834
+ "timesMs": [
835
+ 61.19999999552965,
836
+ 61.20000000298023,
837
+ 61.20000000298023
838
+ ],
839
+ "executionProfile": {
840
+ "totalMs": 60.833828999999994,
841
+ "layers": [
842
+ {
843
+ "id": "input-pack",
844
+ "durationMs": 0.044582
845
+ },
846
+ {
847
+ "id": "enc_conv1a",
848
+ "durationMs": 0.717831
849
+ },
850
+ {
851
+ "id": "enc_conv1b",
852
+ "durationMs": 5.413128
853
+ },
854
+ {
855
+ "id": "pool1",
856
+ "durationMs": 0.353854
857
+ },
858
+ {
859
+ "id": "enc_conv2a",
860
+ "durationMs": 2.043917
861
+ },
862
+ {
863
+ "id": "enc_conv2b",
864
+ "durationMs": 4.440104
865
+ },
866
+ {
867
+ "id": "pool2",
868
+ "durationMs": 0.050289
869
+ },
870
+ {
871
+ "id": "enc_conv3a",
872
+ "durationMs": 1.424705
873
+ },
874
+ {
875
+ "id": "enc_conv3b",
876
+ "durationMs": 2.61684
877
+ },
878
+ {
879
+ "id": "pool3",
880
+ "durationMs": 0.018041
881
+ },
882
+ {
883
+ "id": "enc_conv4a",
884
+ "durationMs": 1.32746
885
+ },
886
+ {
887
+ "id": "enc_conv4b",
888
+ "durationMs": 0.579298
889
+ },
890
+ {
891
+ "id": "pool4",
892
+ "durationMs": 0.011041
893
+ },
894
+ {
895
+ "id": "enc_conv5a",
896
+ "durationMs": 0.184322
897
+ },
898
+ {
899
+ "id": "enc_conv5b",
900
+ "durationMs": 0.232902
901
+ },
902
+ {
903
+ "id": "dec_conv4a",
904
+ "durationMs": 0.946026
905
+ },
906
+ {
907
+ "id": "dec_conv4b",
908
+ "durationMs": 0.527508
909
+ },
910
+ {
911
+ "id": "dec_conv3a",
912
+ "durationMs": 1.678981
913
+ },
914
+ {
915
+ "id": "dec_conv3b",
916
+ "durationMs": 2.90449
917
+ },
918
+ {
919
+ "id": "dec_conv2a",
920
+ "durationMs": 3.013358
921
+ },
922
+ {
923
+ "id": "dec_conv2b",
924
+ "durationMs": 4.395356
925
+ },
926
+ {
927
+ "id": "dec_conv1a",
928
+ "durationMs": 22.194978
929
+ },
930
+ {
931
+ "id": "dec_conv1b",
932
+ "durationMs": 5.352465
933
+ },
934
+ {
935
+ "id": "dec_conv1c",
936
+ "durationMs": 0.362353
937
+ }
938
+ ]
939
+ },
940
+ "runtimeInfo": {
941
+ "configuredEngine": "wgsl",
942
+ "gpuEngine": "wgsl",
943
+ "precision": "fp16",
944
+ "kernel": {
945
+ "configured": "spatial",
946
+ "maxSpatialInputBlocks": 40,
947
+ "subgroupsAvailable": false
948
+ },
949
+ "resources": {
950
+ "live": 68,
951
+ "created": 71,
952
+ "destroyed": 3,
953
+ "peakLive": 71,
954
+ "pending": 0,
955
+ "byKind": {
956
+ "gpu-buffer": {
957
+ "created": 70,
958
+ "destroyed": 2,
959
+ "live": 68,
960
+ "peakLive": 70
961
+ },
962
+ "gpu-query-set": {
963
+ "created": 1,
964
+ "destroyed": 1,
965
+ "live": 0,
966
+ "peakLive": 1
967
+ }
968
+ }
969
+ },
970
+ "model": "oidn-unet-large-v1",
971
+ "modelFamily": "oidn-unet-large",
972
+ "inputChannels": 9,
973
+ "dynamicTile": {
974
+ "enabled": false,
975
+ "currentTileSize": 512,
976
+ "minTileSize": 256,
977
+ "maxTileSize": 512,
978
+ "targetTileTimeMs": 16
979
+ },
980
+ "lastExecution": {
981
+ "width": 512,
982
+ "height": 512,
983
+ "tileWidth": 512,
984
+ "tileHeight": 512,
985
+ "tileCount": 1,
986
+ "durationMs": 62.69999999552965,
987
+ "tileTimeMs": {
988
+ "min": 62.69999999552965,
989
+ "median": 62.69999999552965,
990
+ "mean": 62.69999999552965,
991
+ "max": 62.69999999552965
992
+ }
993
+ }
994
+ },
995
+ "supportsFP16": true,
996
+ "adapter": {
997
+ "vendor": "apple",
998
+ "architecture": "metal-3",
999
+ "device": "",
1000
+ "description": ""
1001
+ },
1002
+ "summary": {
1003
+ "minMs": 61.19999999552965,
1004
+ "medianMs": 61.20000000298023,
1005
+ "meanMs": 61.20000000049671,
1006
+ "p95Ms": 61.20000000298023,
1007
+ "maxMs": 61.20000000298023
1008
+ },
1009
+ "messages": [],
1010
+ "validation": {
1011
+ "sampleCount": 6144,
1012
+ "meanAbsoluteError": 0.0010210334021394374,
1013
+ "rootMeanSquaredError": 0.001609680379854656,
1014
+ "maxAbsoluteError": 0.012395620346069336,
1015
+ "passed": true,
1016
+ "thresholds": {
1017
+ "maxMeanError": 0.005,
1018
+ "maxAbsoluteError": 0.05
1019
+ }
1020
+ }
1021
+ },
1022
+ {
1023
+ "label": "WGSL FP16 Subgroup (experimental)",
1024
+ "bundle": "current",
1025
+ "baseline": false,
1026
+ "precision": "fp16",
1027
+ "kernel": "subgroup",
1028
+ "initializationMs": 27.600000001490116,
1029
+ "timesMs": [
1030
+ 29.200000002980232,
1031
+ 28.899999998509884,
1032
+ 28.700000002980232
1033
+ ],
1034
+ "executionProfile": {
1035
+ "totalMs": 28.121206000000004,
1036
+ "layers": [
1037
+ {
1038
+ "id": "input-pack",
1039
+ "durationMs": 0.044329
1040
+ },
1041
+ {
1042
+ "id": "enc_conv1a",
1043
+ "durationMs": 0.739587
1044
+ },
1045
+ {
1046
+ "id": "enc_conv1b",
1047
+ "durationMs": 3.382846
1048
+ },
1049
+ {
1050
+ "id": "pool1",
1051
+ "durationMs": 0.342631
1052
+ },
1053
+ {
1054
+ "id": "enc_conv2a",
1055
+ "durationMs": 1.298069
1056
+ },
1057
+ {
1058
+ "id": "enc_conv2b",
1059
+ "durationMs": 2.031491
1060
+ },
1061
+ {
1062
+ "id": "pool2",
1063
+ "durationMs": 0.052286
1064
+ },
1065
+ {
1066
+ "id": "enc_conv3a",
1067
+ "durationMs": 0.717465
1068
+ },
1069
+ {
1070
+ "id": "enc_conv3b",
1071
+ "durationMs": 0.925901
1072
+ },
1073
+ {
1074
+ "id": "pool3",
1075
+ "durationMs": 0.021039
1076
+ },
1077
+ {
1078
+ "id": "enc_conv4a",
1079
+ "durationMs": 0.383875
1080
+ },
1081
+ {
1082
+ "id": "enc_conv4b",
1083
+ "durationMs": 0.564857
1084
+ },
1085
+ {
1086
+ "id": "pool4",
1087
+ "durationMs": 0.010958
1088
+ },
1089
+ {
1090
+ "id": "enc_conv5a",
1091
+ "durationMs": 0.20302
1092
+ },
1093
+ {
1094
+ "id": "enc_conv5b",
1095
+ "durationMs": 0.260889
1096
+ },
1097
+ {
1098
+ "id": "dec_conv4a",
1099
+ "durationMs": 0.945232
1100
+ },
1101
+ {
1102
+ "id": "dec_conv4b",
1103
+ "durationMs": 0.587396
1104
+ },
1105
+ {
1106
+ "id": "dec_conv3a",
1107
+ "durationMs": 1.68882
1108
+ },
1109
+ {
1110
+ "id": "dec_conv3b",
1111
+ "durationMs": 0.923776
1112
+ },
1113
+ {
1114
+ "id": "dec_conv2a",
1115
+ "durationMs": 2.973266
1116
+ },
1117
+ {
1118
+ "id": "dec_conv2b",
1119
+ "durationMs": 2.019369
1120
+ },
1121
+ {
1122
+ "id": "dec_conv1a",
1123
+ "durationMs": 4.401072
1124
+ },
1125
+ {
1126
+ "id": "dec_conv1b",
1127
+ "durationMs": 3.377389
1128
+ },
1129
+ {
1130
+ "id": "dec_conv1c",
1131
+ "durationMs": 0.225643
1132
+ }
1133
+ ]
1134
+ },
1135
+ "runtimeInfo": {
1136
+ "configuredEngine": "wgsl",
1137
+ "gpuEngine": "wgsl",
1138
+ "precision": "fp16",
1139
+ "kernel": {
1140
+ "configured": "subgroup",
1141
+ "maxSpatialInputBlocks": 40,
1142
+ "subgroupsAvailable": true
1143
+ },
1144
+ "resources": {
1145
+ "live": 68,
1146
+ "created": 71,
1147
+ "destroyed": 3,
1148
+ "peakLive": 71,
1149
+ "pending": 0,
1150
+ "byKind": {
1151
+ "gpu-buffer": {
1152
+ "created": 70,
1153
+ "destroyed": 2,
1154
+ "live": 68,
1155
+ "peakLive": 70
1156
+ },
1157
+ "gpu-query-set": {
1158
+ "created": 1,
1159
+ "destroyed": 1,
1160
+ "live": 0,
1161
+ "peakLive": 1
1162
+ }
1163
+ }
1164
+ },
1165
+ "model": "oidn-unet-large-v1",
1166
+ "modelFamily": "oidn-unet-large",
1167
+ "inputChannels": 9,
1168
+ "dynamicTile": {
1169
+ "enabled": false,
1170
+ "currentTileSize": 512,
1171
+ "minTileSize": 256,
1172
+ "maxTileSize": 512,
1173
+ "targetTileTimeMs": 16
1174
+ },
1175
+ "lastExecution": {
1176
+ "width": 512,
1177
+ "height": 512,
1178
+ "tileWidth": 512,
1179
+ "tileHeight": 512,
1180
+ "tileCount": 1,
1181
+ "durationMs": 29.599999994039536,
1182
+ "tileTimeMs": {
1183
+ "min": 29.599999994039536,
1184
+ "median": 29.599999994039536,
1185
+ "mean": 29.599999994039536,
1186
+ "max": 29.599999994039536
1187
+ }
1188
+ }
1189
+ },
1190
+ "supportsFP16": true,
1191
+ "adapter": {
1192
+ "vendor": "apple",
1193
+ "architecture": "metal-3",
1194
+ "device": "",
1195
+ "description": ""
1196
+ },
1197
+ "summary": {
1198
+ "minMs": 28.700000002980232,
1199
+ "medianMs": 28.899999998509884,
1200
+ "meanMs": 28.93333333482345,
1201
+ "p95Ms": 29.200000002980232,
1202
+ "maxMs": 29.200000002980232
1203
+ },
1204
+ "messages": [],
1205
+ "validation": {
1206
+ "sampleCount": 6144,
1207
+ "meanAbsoluteError": 0.0010210334021394374,
1208
+ "rootMeanSquaredError": 0.001609680379854656,
1209
+ "maxAbsoluteError": 0.012395620346069336,
1210
+ "passed": true,
1211
+ "thresholds": {
1212
+ "maxMeanError": 0.005,
1213
+ "maxAbsoluteError": 0.05
1214
+ }
1215
+ }
1216
+ },
1217
+ {
1218
+ "label": "WGSL INT8 DP4A r1 (experimental)",
1219
+ "bundle": "current",
1220
+ "baseline": false,
1221
+ "precision": "int8",
1222
+ "int8ActivationRange": 1,
1223
+ "initializationMs": 174.39999999850988,
1224
+ "timesMs": [
1225
+ 72,
1226
+ 72.29999999701977,
1227
+ 72.10000000149012
1228
+ ],
1229
+ "executionProfile": {
1230
+ "totalMs": 71.06799399999998,
1231
+ "layers": [
1232
+ {
1233
+ "id": "input-pack",
1234
+ "durationMs": 0.042873
1235
+ },
1236
+ {
1237
+ "id": "enc_conv1a",
1238
+ "durationMs": 1.590218
1239
+ },
1240
+ {
1241
+ "id": "enc_conv1b",
1242
+ "durationMs": 8.219874
1243
+ },
1244
+ {
1245
+ "id": "pool1",
1246
+ "durationMs": 0.309277
1247
+ },
1248
+ {
1249
+ "id": "enc_conv2a",
1250
+ "durationMs": 3.082067
1251
+ },
1252
+ {
1253
+ "id": "enc_conv2b",
1254
+ "durationMs": 4.616914
1255
+ },
1256
+ {
1257
+ "id": "pool2",
1258
+ "durationMs": 0.053289
1259
+ },
1260
+ {
1261
+ "id": "enc_conv3a",
1262
+ "durationMs": 1.548262
1263
+ },
1264
+ {
1265
+ "id": "enc_conv3b",
1266
+ "durationMs": 2.058281
1267
+ },
1268
+ {
1269
+ "id": "pool3",
1270
+ "durationMs": 0.012499
1271
+ },
1272
+ {
1273
+ "id": "enc_conv4a",
1274
+ "durationMs": 0.785339
1275
+ },
1276
+ {
1277
+ "id": "enc_conv4b",
1278
+ "durationMs": 1.173446
1279
+ },
1280
+ {
1281
+ "id": "pool4",
1282
+ "durationMs": 0.008083
1283
+ },
1284
+ {
1285
+ "id": "enc_conv5a",
1286
+ "durationMs": 0.411772
1287
+ },
1288
+ {
1289
+ "id": "enc_conv5b",
1290
+ "durationMs": 0.5476
1291
+ },
1292
+ {
1293
+ "id": "dec_conv4a",
1294
+ "durationMs": 2.332893
1295
+ },
1296
+ {
1297
+ "id": "dec_conv4b",
1298
+ "durationMs": 1.170488
1299
+ },
1300
+ {
1301
+ "id": "dec_conv3a",
1302
+ "durationMs": 4.668745
1303
+ },
1304
+ {
1305
+ "id": "dec_conv3b",
1306
+ "durationMs": 2.065822
1307
+ },
1308
+ {
1309
+ "id": "dec_conv2a",
1310
+ "durationMs": 9.147498
1311
+ },
1312
+ {
1313
+ "id": "dec_conv2b",
1314
+ "durationMs": 4.609039
1315
+ },
1316
+ {
1317
+ "id": "dec_conv1a",
1318
+ "durationMs": 13.86249
1319
+ },
1320
+ {
1321
+ "id": "dec_conv1b",
1322
+ "durationMs": 8.222749
1323
+ },
1324
+ {
1325
+ "id": "dec_conv1c",
1326
+ "durationMs": 0.528476
1327
+ }
1328
+ ]
1329
+ },
1330
+ "runtimeInfo": {
1331
+ "configuredEngine": "wgsl",
1332
+ "gpuEngine": "wgsl",
1333
+ "precision": "int8",
1334
+ "kernel": {
1335
+ "configured": "auto",
1336
+ "maxSpatialInputBlocks": 0,
1337
+ "subgroupsAvailable": false
1338
+ },
1339
+ "resources": {
1340
+ "live": 87,
1341
+ "created": 90,
1342
+ "destroyed": 3,
1343
+ "peakLive": 90,
1344
+ "pending": 0,
1345
+ "byKind": {
1346
+ "gpu-buffer": {
1347
+ "created": 89,
1348
+ "destroyed": 2,
1349
+ "live": 87,
1350
+ "peakLive": 89
1351
+ },
1352
+ "gpu-query-set": {
1353
+ "created": 1,
1354
+ "destroyed": 1,
1355
+ "live": 0,
1356
+ "peakLive": 1
1357
+ }
1358
+ }
1359
+ },
1360
+ "model": "oidn-unet-large-v1",
1361
+ "modelFamily": "oidn-unet-large",
1362
+ "inputChannels": 9,
1363
+ "dynamicTile": {
1364
+ "enabled": false,
1365
+ "currentTileSize": 512,
1366
+ "minTileSize": 256,
1367
+ "maxTileSize": 512,
1368
+ "targetTileTimeMs": 16
1369
+ },
1370
+ "lastExecution": {
1371
+ "width": 512,
1372
+ "height": 512,
1373
+ "tileWidth": 512,
1374
+ "tileHeight": 512,
1375
+ "tileCount": 1,
1376
+ "durationMs": 72.70000000298023,
1377
+ "tileTimeMs": {
1378
+ "min": 72.70000000298023,
1379
+ "median": 72.70000000298023,
1380
+ "mean": 72.70000000298023,
1381
+ "max": 72.70000000298023
1382
+ }
1383
+ }
1384
+ },
1385
+ "supportsFP16": true,
1386
+ "adapter": {
1387
+ "vendor": "apple",
1388
+ "architecture": "metal-3",
1389
+ "device": "",
1390
+ "description": ""
1391
+ },
1392
+ "summary": {
1393
+ "minMs": 72,
1394
+ "medianMs": 72.10000000149012,
1395
+ "meanMs": 72.13333333283663,
1396
+ "p95Ms": 72.29999999701977,
1397
+ "maxMs": 72.29999999701977
1398
+ },
1399
+ "messages": [],
1400
+ "validation": {
1401
+ "sampleCount": 6144,
1402
+ "meanAbsoluteError": 0.8832214654361602,
1403
+ "rootMeanSquaredError": 1.1376382787598203,
1404
+ "maxAbsoluteError": 2.8023234605789185,
1405
+ "passed": false,
1406
+ "thresholds": {
1407
+ "maxMeanError": 0.1,
1408
+ "maxAbsoluteError": 1
1409
+ }
1410
+ }
1411
+ },
1412
+ {
1413
+ "label": "WGSL INT8 DP4A r2 (experimental)",
1414
+ "bundle": "current",
1415
+ "baseline": false,
1416
+ "precision": "int8",
1417
+ "int8ActivationRange": 2,
1418
+ "initializationMs": 115.20000000298023,
1419
+ "timesMs": [
1420
+ 71.89999999850988,
1421
+ 71.90000000596046,
1422
+ 71.69999999552965
1423
+ ],
1424
+ "executionProfile": {
1425
+ "totalMs": 71.24877699999999,
1426
+ "layers": [
1427
+ {
1428
+ "id": "input-pack",
1429
+ "durationMs": 0.042373
1430
+ },
1431
+ {
1432
+ "id": "enc_conv1a",
1433
+ "durationMs": 1.62105
1434
+ },
1435
+ {
1436
+ "id": "enc_conv1b",
1437
+ "durationMs": 8.199208
1438
+ },
1439
+ {
1440
+ "id": "pool1",
1441
+ "durationMs": 0.296361
1442
+ },
1443
+ {
1444
+ "id": "enc_conv2a",
1445
+ "durationMs": 3.111608
1446
+ },
1447
+ {
1448
+ "id": "enc_conv2b",
1449
+ "durationMs": 4.614122
1450
+ },
1451
+ {
1452
+ "id": "pool2",
1453
+ "durationMs": 0.052997
1454
+ },
1455
+ {
1456
+ "id": "enc_conv3a",
1457
+ "durationMs": 1.55047
1458
+ },
1459
+ {
1460
+ "id": "enc_conv3b",
1461
+ "durationMs": 2.068323
1462
+ },
1463
+ {
1464
+ "id": "pool3",
1465
+ "durationMs": 0.014874
1466
+ },
1467
+ {
1468
+ "id": "enc_conv4a",
1469
+ "durationMs": 0.786131
1470
+ },
1471
+ {
1472
+ "id": "enc_conv4b",
1473
+ "durationMs": 1.171612
1474
+ },
1475
+ {
1476
+ "id": "pool4",
1477
+ "durationMs": 0.008083
1478
+ },
1479
+ {
1480
+ "id": "enc_conv5a",
1481
+ "durationMs": 0.413064
1482
+ },
1483
+ {
1484
+ "id": "enc_conv5b",
1485
+ "durationMs": 0.546308
1486
+ },
1487
+ {
1488
+ "id": "dec_conv4a",
1489
+ "durationMs": 2.310144
1490
+ },
1491
+ {
1492
+ "id": "dec_conv4b",
1493
+ "durationMs": 1.193861
1494
+ },
1495
+ {
1496
+ "id": "dec_conv3a",
1497
+ "durationMs": 4.617497
1498
+ },
1499
+ {
1500
+ "id": "dec_conv3b",
1501
+ "durationMs": 2.060697
1502
+ },
1503
+ {
1504
+ "id": "dec_conv2a",
1505
+ "durationMs": 9.353322
1506
+ },
1507
+ {
1508
+ "id": "dec_conv2b",
1509
+ "durationMs": 4.615873
1510
+ },
1511
+ {
1512
+ "id": "dec_conv1a",
1513
+ "durationMs": 13.846241
1514
+ },
1515
+ {
1516
+ "id": "dec_conv1b",
1517
+ "durationMs": 8.226498
1518
+ },
1519
+ {
1520
+ "id": "dec_conv1c",
1521
+ "durationMs": 0.52806
1522
+ }
1523
+ ]
1524
+ },
1525
+ "runtimeInfo": {
1526
+ "configuredEngine": "wgsl",
1527
+ "gpuEngine": "wgsl",
1528
+ "precision": "int8",
1529
+ "kernel": {
1530
+ "configured": "auto",
1531
+ "maxSpatialInputBlocks": 0,
1532
+ "subgroupsAvailable": false
1533
+ },
1534
+ "resources": {
1535
+ "live": 87,
1536
+ "created": 90,
1537
+ "destroyed": 3,
1538
+ "peakLive": 90,
1539
+ "pending": 0,
1540
+ "byKind": {
1541
+ "gpu-buffer": {
1542
+ "created": 89,
1543
+ "destroyed": 2,
1544
+ "live": 87,
1545
+ "peakLive": 89
1546
+ },
1547
+ "gpu-query-set": {
1548
+ "created": 1,
1549
+ "destroyed": 1,
1550
+ "live": 0,
1551
+ "peakLive": 1
1552
+ }
1553
+ }
1554
+ },
1555
+ "model": "oidn-unet-large-v1",
1556
+ "modelFamily": "oidn-unet-large",
1557
+ "inputChannels": 9,
1558
+ "dynamicTile": {
1559
+ "enabled": false,
1560
+ "currentTileSize": 512,
1561
+ "minTileSize": 256,
1562
+ "maxTileSize": 512,
1563
+ "targetTileTimeMs": 16
1564
+ },
1565
+ "lastExecution": {
1566
+ "width": 512,
1567
+ "height": 512,
1568
+ "tileWidth": 512,
1569
+ "tileHeight": 512,
1570
+ "tileCount": 1,
1571
+ "durationMs": 73,
1572
+ "tileTimeMs": {
1573
+ "min": 73,
1574
+ "median": 73,
1575
+ "mean": 73,
1576
+ "max": 73
1577
+ }
1578
+ }
1579
+ },
1580
+ "supportsFP16": true,
1581
+ "adapter": {
1582
+ "vendor": "apple",
1583
+ "architecture": "metal-3",
1584
+ "device": "",
1585
+ "description": ""
1586
+ },
1587
+ "summary": {
1588
+ "minMs": 71.69999999552965,
1589
+ "medianMs": 71.89999999850988,
1590
+ "meanMs": 71.83333333333333,
1591
+ "p95Ms": 71.90000000596046,
1592
+ "maxMs": 71.90000000596046
1593
+ },
1594
+ "messages": [],
1595
+ "validation": {
1596
+ "sampleCount": 6144,
1597
+ "meanAbsoluteError": 30.26739762619521,
1598
+ "rootMeanSquaredError": 48.78231644396923,
1599
+ "maxAbsoluteError": 316.1646726131439,
1600
+ "passed": false,
1601
+ "thresholds": {
1602
+ "maxMeanError": 0.1,
1603
+ "maxAbsoluteError": 1
1604
+ }
1605
+ }
1606
+ },
1607
+ {
1608
+ "label": "WGSL INT8 DP4A r4 (experimental)",
1609
+ "bundle": "current",
1610
+ "baseline": false,
1611
+ "precision": "int8",
1612
+ "int8ActivationRange": 4,
1613
+ "initializationMs": 114.89999999850988,
1614
+ "timesMs": [
1615
+ 72,
1616
+ 72,
1617
+ 71.89999999850988
1618
+ ],
1619
+ "executionProfile": {
1620
+ "totalMs": 71.39985600000001,
1621
+ "layers": [
1622
+ {
1623
+ "id": "input-pack",
1624
+ "durationMs": 0.042248
1625
+ },
1626
+ {
1627
+ "id": "enc_conv1a",
1628
+ "durationMs": 1.590177
1629
+ },
1630
+ {
1631
+ "id": "enc_conv1b",
1632
+ "durationMs": 8.270454
1633
+ },
1634
+ {
1635
+ "id": "pool1",
1636
+ "durationMs": 0.306028
1637
+ },
1638
+ {
1639
+ "id": "enc_conv2a",
1640
+ "durationMs": 3.082942
1641
+ },
1642
+ {
1643
+ "id": "enc_conv2b",
1644
+ "durationMs": 4.639247
1645
+ },
1646
+ {
1647
+ "id": "pool2",
1648
+ "durationMs": 0.049665
1649
+ },
1650
+ {
1651
+ "id": "enc_conv3a",
1652
+ "durationMs": 1.551721
1653
+ },
1654
+ {
1655
+ "id": "enc_conv3b",
1656
+ "durationMs": 2.078447
1657
+ },
1658
+ {
1659
+ "id": "pool3",
1660
+ "durationMs": 0.01179
1661
+ },
1662
+ {
1663
+ "id": "enc_conv4a",
1664
+ "durationMs": 0.785964
1665
+ },
1666
+ {
1667
+ "id": "enc_conv4b",
1668
+ "durationMs": 1.185071
1669
+ },
1670
+ {
1671
+ "id": "pool4",
1672
+ "durationMs": 0.008457
1673
+ },
1674
+ {
1675
+ "id": "enc_conv5a",
1676
+ "durationMs": 0.412064
1677
+ },
1678
+ {
1679
+ "id": "enc_conv5b",
1680
+ "durationMs": 0.54885
1681
+ },
1682
+ {
1683
+ "id": "dec_conv4a",
1684
+ "durationMs": 2.31002
1685
+ },
1686
+ {
1687
+ "id": "dec_conv4b",
1688
+ "durationMs": 1.171071
1689
+ },
1690
+ {
1691
+ "id": "dec_conv3a",
1692
+ "durationMs": 4.742241
1693
+ },
1694
+ {
1695
+ "id": "dec_conv3b",
1696
+ "durationMs": 2.059948
1697
+ },
1698
+ {
1699
+ "id": "dec_conv2a",
1700
+ "durationMs": 9.179914
1701
+ },
1702
+ {
1703
+ "id": "dec_conv2b",
1704
+ "durationMs": 4.696201
1705
+ },
1706
+ {
1707
+ "id": "dec_conv1a",
1708
+ "durationMs": 13.848532
1709
+ },
1710
+ {
1711
+ "id": "dec_conv1b",
1712
+ "durationMs": 8.300328
1713
+ },
1714
+ {
1715
+ "id": "dec_conv1c",
1716
+ "durationMs": 0.528476
1717
+ }
1718
+ ]
1719
+ },
1720
+ "runtimeInfo": {
1721
+ "configuredEngine": "wgsl",
1722
+ "gpuEngine": "wgsl",
1723
+ "precision": "int8",
1724
+ "kernel": {
1725
+ "configured": "auto",
1726
+ "maxSpatialInputBlocks": 0,
1727
+ "subgroupsAvailable": false
1728
+ },
1729
+ "resources": {
1730
+ "live": 87,
1731
+ "created": 90,
1732
+ "destroyed": 3,
1733
+ "peakLive": 90,
1734
+ "pending": 0,
1735
+ "byKind": {
1736
+ "gpu-buffer": {
1737
+ "created": 89,
1738
+ "destroyed": 2,
1739
+ "live": 87,
1740
+ "peakLive": 89
1741
+ },
1742
+ "gpu-query-set": {
1743
+ "created": 1,
1744
+ "destroyed": 1,
1745
+ "live": 0,
1746
+ "peakLive": 1
1747
+ }
1748
+ }
1749
+ },
1750
+ "model": "oidn-unet-large-v1",
1751
+ "modelFamily": "oidn-unet-large",
1752
+ "inputChannels": 9,
1753
+ "dynamicTile": {
1754
+ "enabled": false,
1755
+ "currentTileSize": 512,
1756
+ "minTileSize": 256,
1757
+ "maxTileSize": 512,
1758
+ "targetTileTimeMs": 16
1759
+ },
1760
+ "lastExecution": {
1761
+ "width": 512,
1762
+ "height": 512,
1763
+ "tileWidth": 512,
1764
+ "tileHeight": 512,
1765
+ "tileCount": 1,
1766
+ "durationMs": 73.10000000149012,
1767
+ "tileTimeMs": {
1768
+ "min": 73.10000000149012,
1769
+ "median": 73.10000000149012,
1770
+ "mean": 73.10000000149012,
1771
+ "max": 73.10000000149012
1772
+ }
1773
+ }
1774
+ },
1775
+ "supportsFP16": true,
1776
+ "adapter": {
1777
+ "vendor": "apple",
1778
+ "architecture": "metal-3",
1779
+ "device": "",
1780
+ "description": ""
1781
+ },
1782
+ "summary": {
1783
+ "minMs": 71.89999999850988,
1784
+ "medianMs": 72,
1785
+ "meanMs": 71.96666666616996,
1786
+ "p95Ms": 72,
1787
+ "maxMs": 72
1788
+ },
1789
+ "messages": [],
1790
+ "validation": {
1791
+ "sampleCount": 6144,
1792
+ "meanAbsoluteError": 1422990.2478986753,
1793
+ "rootMeanSquaredError": 2699561.4484096994,
1794
+ "maxAbsoluteError": 46245708.86697364,
1795
+ "passed": false,
1796
+ "thresholds": {
1797
+ "maxMeanError": 0.1,
1798
+ "maxAbsoluteError": 1
1799
+ }
1800
+ }
1801
+ },
1802
+ {
1803
+ "label": "WGSL INT8 DP4A r8 (experimental)",
1804
+ "bundle": "current",
1805
+ "baseline": false,
1806
+ "precision": "int8",
1807
+ "int8ActivationRange": 8,
1808
+ "initializationMs": 117.10000000149012,
1809
+ "timesMs": [
1810
+ 71.69999999552965,
1811
+ 71.90000000596046,
1812
+ 72.19999999552965
1813
+ ],
1814
+ "executionProfile": {
1815
+ "totalMs": 71.208612,
1816
+ "layers": [
1817
+ {
1818
+ "id": "input-pack",
1819
+ "durationMs": 0.041706
1820
+ },
1821
+ {
1822
+ "id": "enc_conv1a",
1823
+ "durationMs": 1.589844
1824
+ },
1825
+ {
1826
+ "id": "enc_conv1b",
1827
+ "durationMs": 8.19225
1828
+ },
1829
+ {
1830
+ "id": "pool1",
1831
+ "durationMs": 0.304236
1832
+ },
1833
+ {
1834
+ "id": "enc_conv2a",
1835
+ "durationMs": 3.110066
1836
+ },
1837
+ {
1838
+ "id": "enc_conv2b",
1839
+ "durationMs": 4.640079
1840
+ },
1841
+ {
1842
+ "id": "pool2",
1843
+ "durationMs": 0.049873
1844
+ },
1845
+ {
1846
+ "id": "enc_conv3a",
1847
+ "durationMs": 1.554513
1848
+ },
1849
+ {
1850
+ "id": "enc_conv3b",
1851
+ "durationMs": 2.062988
1852
+ },
1853
+ {
1854
+ "id": "pool3",
1855
+ "durationMs": 0.015416
1856
+ },
1857
+ {
1858
+ "id": "enc_conv4a",
1859
+ "durationMs": 0.785548
1860
+ },
1861
+ {
1862
+ "id": "enc_conv4b",
1863
+ "durationMs": 1.175737
1864
+ },
1865
+ {
1866
+ "id": "pool4",
1867
+ "durationMs": 0.00804
1868
+ },
1869
+ {
1870
+ "id": "enc_conv5a",
1871
+ "durationMs": 0.411106
1872
+ },
1873
+ {
1874
+ "id": "enc_conv5b",
1875
+ "durationMs": 0.547558
1876
+ },
1877
+ {
1878
+ "id": "dec_conv4a",
1879
+ "durationMs": 2.312186
1880
+ },
1881
+ {
1882
+ "id": "dec_conv4b",
1883
+ "durationMs": 1.183403
1884
+ },
1885
+ {
1886
+ "id": "dec_conv3a",
1887
+ "durationMs": 4.620914
1888
+ },
1889
+ {
1890
+ "id": "dec_conv3b",
1891
+ "durationMs": 2.072822
1892
+ },
1893
+ {
1894
+ "id": "dec_conv2a",
1895
+ "durationMs": 9.180205
1896
+ },
1897
+ {
1898
+ "id": "dec_conv2b",
1899
+ "durationMs": 4.630246
1900
+ },
1901
+ {
1902
+ "id": "dec_conv1a",
1903
+ "durationMs": 13.897531
1904
+ },
1905
+ {
1906
+ "id": "dec_conv1b",
1907
+ "durationMs": 8.293745
1908
+ },
1909
+ {
1910
+ "id": "dec_conv1c",
1911
+ "durationMs": 0.5286
1912
+ }
1913
+ ]
1914
+ },
1915
+ "runtimeInfo": {
1916
+ "configuredEngine": "wgsl",
1917
+ "gpuEngine": "wgsl",
1918
+ "precision": "int8",
1919
+ "kernel": {
1920
+ "configured": "auto",
1921
+ "maxSpatialInputBlocks": 0,
1922
+ "subgroupsAvailable": false
1923
+ },
1924
+ "resources": {
1925
+ "live": 87,
1926
+ "created": 90,
1927
+ "destroyed": 3,
1928
+ "peakLive": 90,
1929
+ "pending": 0,
1930
+ "byKind": {
1931
+ "gpu-buffer": {
1932
+ "created": 89,
1933
+ "destroyed": 2,
1934
+ "live": 87,
1935
+ "peakLive": 89
1936
+ },
1937
+ "gpu-query-set": {
1938
+ "created": 1,
1939
+ "destroyed": 1,
1940
+ "live": 0,
1941
+ "peakLive": 1
1942
+ }
1943
+ }
1944
+ },
1945
+ "model": "oidn-unet-large-v1",
1946
+ "modelFamily": "oidn-unet-large",
1947
+ "inputChannels": 9,
1948
+ "dynamicTile": {
1949
+ "enabled": false,
1950
+ "currentTileSize": 512,
1951
+ "minTileSize": 256,
1952
+ "maxTileSize": 512,
1953
+ "targetTileTimeMs": 16
1954
+ },
1955
+ "lastExecution": {
1956
+ "width": 512,
1957
+ "height": 512,
1958
+ "tileWidth": 512,
1959
+ "tileHeight": 512,
1960
+ "tileCount": 1,
1961
+ "durationMs": 72.80000000447035,
1962
+ "tileTimeMs": {
1963
+ "min": 72.80000000447035,
1964
+ "median": 72.80000000447035,
1965
+ "mean": 72.80000000447035,
1966
+ "max": 72.80000000447035
1967
+ }
1968
+ }
1969
+ },
1970
+ "supportsFP16": true,
1971
+ "adapter": {
1972
+ "vendor": "apple",
1973
+ "architecture": "metal-3",
1974
+ "device": "",
1975
+ "description": ""
1976
+ },
1977
+ "summary": {
1978
+ "minMs": 71.69999999552965,
1979
+ "medianMs": 71.90000000596046,
1980
+ "meanMs": 71.93333333233993,
1981
+ "p95Ms": 72.19999999552965,
1982
+ "maxMs": 72.19999999552965
1983
+ },
1984
+ "messages": [],
1985
+ "validation": {
1986
+ "sampleCount": 6144,
1987
+ "meanAbsoluteError": 3976517315842110,
1988
+ "rootMeanSquaredError": 9268654809332280,
1989
+ "maxAbsoluteError": 167472474361954300,
1990
+ "passed": false,
1991
+ "thresholds": {
1992
+ "maxMeanError": 0.1,
1993
+ "maxAbsoluteError": 1
1994
+ }
1995
+ }
1996
+ },
1997
+ {
1998
+ "label": "WebNN FP16 (experimental)",
1999
+ "bundle": "current",
2000
+ "baseline": false,
2001
+ "precision": "fp16",
2002
+ "engine": "webnn",
2003
+ "skipped": "Error: WebNN FP16 WebGPU interop failed: NotSupportedError: Failed to execute 'createExportableTensor' on 'MLContext': WebGPU Interop is not supported.",
2004
+ "messages": []
2005
+ }
2006
+ ]
2007
+ }