oidn-web 0.4.0 → 0.5.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 (106) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/README.md +83 -19
  3. package/dist/oidn.js +3239 -2642
  4. package/dist/oidn.umd.cjs +512 -296
  5. package/lib/UNet.d.ts +54 -20
  6. package/lib/UNet.js +194 -118
  7. package/lib/UNet.js.map +1 -1
  8. package/lib/backend.d.ts +1 -8
  9. package/lib/backend.js +1 -9
  10. package/lib/backend.js.map +1 -1
  11. package/lib/finalRgbShader.d.ts +13 -0
  12. package/lib/finalRgbShader.js +160 -0
  13. package/lib/finalRgbShader.js.map +1 -0
  14. package/lib/graphOptimizer.js +1 -2
  15. package/lib/graphOptimizer.js.map +1 -1
  16. package/lib/hdrTransfer.d.ts +14 -0
  17. package/lib/hdrTransfer.js +61 -0
  18. package/lib/hdrTransfer.js.map +1 -0
  19. package/lib/main.d.ts +16 -7
  20. package/lib/main.js +4 -5
  21. package/lib/main.js.map +1 -1
  22. package/lib/nativeUNet.d.ts +39 -3
  23. package/lib/nativeUNet.js +449 -120
  24. package/lib/nativeUNet.js.map +1 -1
  25. package/lib/process.d.ts +5 -11
  26. package/lib/process.js +35 -49
  27. package/lib/process.js.map +1 -1
  28. package/lib/tileScheduler.d.ts +32 -4
  29. package/lib/tileScheduler.js +133 -20
  30. package/lib/tileScheduler.js.map +1 -1
  31. package/package.json +9 -2
  32. package/src/UNet.ts +287 -158
  33. package/src/backend.ts +1 -14
  34. package/src/finalRgbShader.ts +186 -0
  35. package/src/graphOptimizer.ts +1 -2
  36. package/src/hdrTransfer.ts +88 -0
  37. package/src/main.ts +28 -13
  38. package/src/nativeUNet.ts +515 -116
  39. package/src/process.ts +43 -70
  40. package/src/tileScheduler.ts +216 -24
  41. package/benchmarks/compare.mjs +0 -651
  42. package/benchmarks/leak.mjs +0 -255
  43. package/benchmarks/results/before-spatial.json +0 -391
  44. package/benchmarks/results/before-spatial.md +0 -47
  45. package/benchmarks/results/int8-scan.json +0 -2007
  46. package/benchmarks/results/int8-scan.md +0 -160
  47. package/benchmarks/results/int8-w8a8-scan.json +0 -2007
  48. package/benchmarks/results/int8-w8a8-scan.md +0 -160
  49. package/benchmarks/results/int8-weight-channel.json +0 -1413
  50. package/benchmarks/results/int8-weight-channel.md +0 -118
  51. package/benchmarks/results/int8-weight-only.json +0 -1437
  52. package/benchmarks/results/int8-weight-only.md +0 -118
  53. package/benchmarks/results/kernel-webnn-final.json +0 -1115
  54. package/benchmarks/results/kernel-webnn-final.md +0 -104
  55. package/benchmarks/results/latest-optimized.json +0 -375
  56. package/benchmarks/results/latest-optimized.md +0 -47
  57. package/benchmarks/results/latest.json +0 -391
  58. package/benchmarks/results/latest.md +0 -47
  59. package/benchmarks/results/profile-baseline.json +0 -331
  60. package/benchmarks/results/profile-baseline.md +0 -12
  61. package/benchmarks/results/profile-conv2x.json +0 -331
  62. package/benchmarks/results/profile-conv2x.md +0 -12
  63. package/benchmarks/results/profile-fast-init.json +0 -385
  64. package/benchmarks/results/profile-fast-init.md +0 -47
  65. package/benchmarks/results/profile-fp16-fma.json +0 -369
  66. package/benchmarks/results/profile-fp16-fma.md +0 -47
  67. package/benchmarks/results/profile-fp16-tiled-decoder.json +0 -369
  68. package/benchmarks/results/profile-fp16-tiled-decoder.md +0 -47
  69. package/benchmarks/results/profile-fp16-tiled-encoder.json +0 -369
  70. package/benchmarks/results/profile-fp16-tiled-encoder.md +0 -47
  71. package/benchmarks/results/profile-fp16-unfused-pool.json +0 -385
  72. package/benchmarks/results/profile-fp16-unfused-pool.md +0 -47
  73. package/benchmarks/results/profile-input-major.json +0 -347
  74. package/benchmarks/results/profile-input-major.md +0 -12
  75. package/benchmarks/results/profile-k16.json +0 -347
  76. package/benchmarks/results/profile-k16.md +0 -12
  77. package/benchmarks/results/profile-k4.json +0 -347
  78. package/benchmarks/results/profile-k4.md +0 -12
  79. package/benchmarks/results/profile-pool-reuse.json +0 -331
  80. package/benchmarks/results/profile-pool-reuse.md +0 -12
  81. package/benchmarks/results/profile-precompiled.json +0 -385
  82. package/benchmarks/results/profile-precompiled.md +0 -47
  83. package/benchmarks/results/profile-static-channels.json +0 -385
  84. package/benchmarks/results/profile-static-channels.md +0 -47
  85. package/benchmarks/results/profile-static-io.json +0 -385
  86. package/benchmarks/results/profile-static-io.md +0 -47
  87. package/benchmarks/results/profile-tiled-conv.json +0 -331
  88. package/benchmarks/results/profile-tiled-conv.md +0 -12
  89. package/benchmarks/results/profile-tiled-decoder.json +0 -347
  90. package/benchmarks/results/profile-tiled-decoder.md +0 -12
  91. package/benchmarks/results/profile-tiled-matmul.json +0 -331
  92. package/benchmarks/results/profile-tiled-matmul.md +0 -12
  93. package/benchmarks/results/profile-unfused-decoder.json +0 -379
  94. package/benchmarks/results/profile-unfused-decoder.md +0 -12
  95. package/benchmarks/results/profile-unfused-pool.json +0 -347
  96. package/benchmarks/results/profile-unfused-pool.md +0 -12
  97. package/benchmarks/results/spatial-auto.json +0 -575
  98. package/benchmarks/results/spatial-auto.md +0 -61
  99. package/benchmarks/results/subgroup-smoke.json +0 -1094
  100. package/benchmarks/results/subgroup-smoke.md +0 -104
  101. package/benchmarks/results/webnn-smoke.json +0 -739
  102. package/benchmarks/results/webnn-smoke.md +0 -76
  103. package/scripts/inspect-model.mjs +0 -64
  104. package/tests/modelSpec.test.mjs +0 -128
  105. package/tests/resourceLifecycle.test.mjs +0 -383
  106. package/tests/tileScheduler.test.mjs +0 -90
@@ -1,12 +0,0 @@
1
- # oidn-web benchmark
2
-
3
- - Current: `5d9c1c8771e2a03c90bfadafec4b5dd28fada446`
4
- - TFJS baseline: `136c00c34aa5cf4561b4137034dbd643177f0a5f`
5
- - Input: 512x512, fixed tile 512, 3 runs after 1 warmup(s)
6
- - Adapter: apple
7
-
8
- | Runtime | Init ms | Median ms | P95 ms | Speedup | Precision |
9
- | --- | ---: | ---: | ---: | ---: | --- |
10
- | TFJS (136c00c) | 9.10 | 37.10 | 37.30 | 1.00x | fp32 |
11
- | WGSL FP32 | 361.90 | 64.50 | 64.90 | 0.58x | fp32 |
12
- | WGSL FP16 | 24.00 | 33.80 | 33.80 | 1.10x | fp16 |
@@ -1,347 +0,0 @@
1
- {
2
- "generatedAt": "2026-08-20T03:57:12.717Z",
3
- "currentCommit": "5d9c1c8771e2a03c90bfadafec4b5dd28fada446",
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": 8.599999994039536,
27
- "timesMs": [
28
- 35.900000005960464,
29
- 36.099999994039536,
30
- 35.5
31
- ],
32
- "supportsFP16": true,
33
- "adapter": {
34
- "vendor": "apple",
35
- "architecture": "metal-3",
36
- "device": "",
37
- "description": ""
38
- },
39
- "summary": {
40
- "minMs": 35.5,
41
- "medianMs": 35.900000005960464,
42
- "meanMs": 35.833333333333336,
43
- "p95Ms": 36.099999994039536,
44
- "maxMs": 36.099999994039536
45
- },
46
- "messages": []
47
- },
48
- {
49
- "label": "WGSL FP32",
50
- "bundle": "current",
51
- "baseline": false,
52
- "precision": "fp32",
53
- "initializationMs": 351.79999999701977,
54
- "timesMs": [
55
- 41.400000005960464,
56
- 40.69999999552965,
57
- 41.600000001490116
58
- ],
59
- "executionProfile": {
60
- "totalMs": 41.098954,
61
- "layers": [
62
- {
63
- "id": "input-pack",
64
- "durationMs": 0.144118
65
- },
66
- {
67
- "id": "enc_conv1a",
68
- "durationMs": 0.849253
69
- },
70
- {
71
- "id": "enc_conv1b",
72
- "durationMs": 4.525627
73
- },
74
- {
75
- "id": "pool1",
76
- "durationMs": 0.465978
77
- },
78
- {
79
- "id": "enc_conv2a",
80
- "durationMs": 1.655465
81
- },
82
- {
83
- "id": "enc_conv2b",
84
- "durationMs": 2.661796
85
- },
86
- {
87
- "id": "pool2",
88
- "durationMs": 0.05808
89
- },
90
- {
91
- "id": "enc_conv3a",
92
- "durationMs": 0.870001
93
- },
94
- {
95
- "id": "enc_conv3b",
96
- "durationMs": 1.296149
97
- },
98
- {
99
- "id": "pool3",
100
- "durationMs": 0.018207
101
- },
102
- {
103
- "id": "enc_conv4a",
104
- "durationMs": 0.47602
105
- },
106
- {
107
- "id": "enc_conv4b",
108
- "durationMs": 0.707551
109
- },
110
- {
111
- "id": "pool4",
112
- "durationMs": 0.008375
113
- },
114
- {
115
- "id": "enc_conv5a",
116
- "durationMs": 0.295404
117
- },
118
- {
119
- "id": "enc_conv5b",
120
- "durationMs": 0.390149
121
- },
122
- {
123
- "id": "dec_conv4a",
124
- "durationMs": 1.532639
125
- },
126
- {
127
- "id": "dec_conv4b",
128
- "durationMs": 0.717843
129
- },
130
- {
131
- "id": "dec_conv3a",
132
- "durationMs": 2.714209
133
- },
134
- {
135
- "id": "dec_conv3b",
136
- "durationMs": 1.161489
137
- },
138
- {
139
- "id": "dec_conv2a",
140
- "durationMs": 5.214552
141
- },
142
- {
143
- "id": "dec_conv2b",
144
- "durationMs": 2.551425
145
- },
146
- {
147
- "id": "dec_conv1a",
148
- "durationMs": 7.949928
149
- },
150
- {
151
- "id": "dec_conv1b",
152
- "durationMs": 4.350426
153
- },
154
- {
155
- "id": "dec_conv1c",
156
- "durationMs": 0.48427
157
- }
158
- ]
159
- },
160
- "runtimeInfo": {
161
- "configuredEngine": "wgsl",
162
- "gpuEngine": "wgsl",
163
- "precision": "fp32",
164
- "model": "oidn-unet-large-v1",
165
- "modelFamily": "oidn-unet-large",
166
- "inputChannels": 9,
167
- "dynamicTile": {
168
- "enabled": false,
169
- "currentTileSize": 512,
170
- "minTileSize": 256,
171
- "maxTileSize": 512,
172
- "targetTileTimeMs": 16
173
- },
174
- "lastExecution": {
175
- "width": 512,
176
- "height": 512,
177
- "tileWidth": 512,
178
- "tileHeight": 512,
179
- "tileCount": 1,
180
- "durationMs": 43,
181
- "tileTimeMs": {
182
- "min": 43,
183
- "median": 43,
184
- "mean": 43,
185
- "max": 43
186
- }
187
- }
188
- },
189
- "supportsFP16": true,
190
- "adapter": {
191
- "vendor": "apple",
192
- "architecture": "metal-3",
193
- "device": "",
194
- "description": ""
195
- },
196
- "summary": {
197
- "minMs": 40.69999999552965,
198
- "medianMs": 41.400000005960464,
199
- "meanMs": 41.233333334326744,
200
- "p95Ms": 41.600000001490116,
201
- "maxMs": 41.600000001490116
202
- },
203
- "messages": []
204
- },
205
- {
206
- "label": "WGSL FP16",
207
- "bundle": "current",
208
- "baseline": false,
209
- "precision": "fp16",
210
- "initializationMs": 24.5,
211
- "timesMs": [
212
- 31.399999998509884,
213
- 31.399999998509884,
214
- 31.400000005960464
215
- ],
216
- "executionProfile": {
217
- "totalMs": 31.060183,
218
- "layers": [
219
- {
220
- "id": "input-pack",
221
- "durationMs": 0.044412
222
- },
223
- {
224
- "id": "enc_conv1a",
225
- "durationMs": 0.832786
226
- },
227
- {
228
- "id": "pool1",
229
- "durationMs": 4.110102
230
- },
231
- {
232
- "id": "enc_conv2a",
233
- "durationMs": 1.510464
234
- },
235
- {
236
- "id": "pool2",
237
- "durationMs": 2.412284
238
- },
239
- {
240
- "id": "enc_conv3a",
241
- "durationMs": 0.842076
242
- },
243
- {
244
- "id": "pool3",
245
- "durationMs": 0.962231
246
- },
247
- {
248
- "id": "enc_conv4a",
249
- "durationMs": 0.359587
250
- },
251
- {
252
- "id": "pool4",
253
- "durationMs": 0.589104
254
- },
255
- {
256
- "id": "enc_conv5a",
257
- "durationMs": 0.194021
258
- },
259
- {
260
- "id": "enc_conv5b",
261
- "durationMs": 0.252181
262
- },
263
- {
264
- "id": "dec_conv4a",
265
- "durationMs": 0.960106
266
- },
267
- {
268
- "id": "dec_conv4b",
269
- "durationMs": 0.538693
270
- },
271
- {
272
- "id": "dec_conv3a",
273
- "durationMs": 1.835513
274
- },
275
- {
276
- "id": "dec_conv3b",
277
- "durationMs": 0.975605
278
- },
279
- {
280
- "id": "dec_conv2a",
281
- "durationMs": 3.229905
282
- },
283
- {
284
- "id": "dec_conv2b",
285
- "durationMs": 2.337959
286
- },
287
- {
288
- "id": "dec_conv1a",
289
- "durationMs": 4.758741
290
- },
291
- {
292
- "id": "dec_conv1b",
293
- "durationMs": 4.065274
294
- },
295
- {
296
- "id": "dec_conv1c",
297
- "durationMs": 0.249139
298
- }
299
- ]
300
- },
301
- "runtimeInfo": {
302
- "configuredEngine": "wgsl",
303
- "gpuEngine": "wgsl",
304
- "precision": "fp16",
305
- "model": "oidn-unet-large-v1",
306
- "modelFamily": "oidn-unet-large",
307
- "inputChannels": 9,
308
- "dynamicTile": {
309
- "enabled": false,
310
- "currentTileSize": 512,
311
- "minTileSize": 256,
312
- "maxTileSize": 512,
313
- "targetTileTimeMs": 16
314
- },
315
- "lastExecution": {
316
- "width": 512,
317
- "height": 512,
318
- "tileWidth": 512,
319
- "tileHeight": 512,
320
- "tileCount": 1,
321
- "durationMs": 32.70000000298023,
322
- "tileTimeMs": {
323
- "min": 32.70000000298023,
324
- "median": 32.70000000298023,
325
- "mean": 32.70000000298023,
326
- "max": 32.70000000298023
327
- }
328
- }
329
- },
330
- "supportsFP16": true,
331
- "adapter": {
332
- "vendor": "apple",
333
- "architecture": "metal-3",
334
- "device": "",
335
- "description": ""
336
- },
337
- "summary": {
338
- "minMs": 31.399999998509884,
339
- "medianMs": 31.399999998509884,
340
- "meanMs": 31.400000000993412,
341
- "p95Ms": 31.400000005960464,
342
- "maxMs": 31.400000005960464
343
- },
344
- "messages": []
345
- }
346
- ]
347
- }
@@ -1,12 +0,0 @@
1
- # oidn-web benchmark
2
-
3
- - Current: `5d9c1c8771e2a03c90bfadafec4b5dd28fada446`
4
- - TFJS baseline: `136c00c34aa5cf4561b4137034dbd643177f0a5f`
5
- - Input: 512x512, fixed tile 512, 3 runs after 1 warmup(s)
6
- - Adapter: apple
7
-
8
- | Runtime | Init ms | Median ms | P95 ms | Speedup | Precision |
9
- | --- | ---: | ---: | ---: | ---: | --- |
10
- | TFJS (136c00c) | 8.60 | 35.90 | 36.10 | 1.00x | fp32 |
11
- | WGSL FP32 | 351.80 | 41.40 | 41.60 | 0.87x | fp32 |
12
- | WGSL FP16 | 24.50 | 31.40 | 31.40 | 1.14x | fp16 |
@@ -1,331 +0,0 @@
1
- {
2
- "generatedAt": "2026-08-20T03:42:03.985Z",
3
- "currentCommit": "5d9c1c8771e2a03c90bfadafec4b5dd28fada446",
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.299999997019768,
27
- "timesMs": [
28
- 36.900000005960464,
29
- 37.69999999552965,
30
- 37.100000001490116
31
- ],
32
- "supportsFP16": true,
33
- "adapter": {
34
- "vendor": "apple",
35
- "architecture": "metal-3",
36
- "device": "",
37
- "description": ""
38
- },
39
- "summary": {
40
- "minMs": 36.900000005960464,
41
- "medianMs": 37.100000001490116,
42
- "meanMs": 37.233333334326744,
43
- "p95Ms": 37.69999999552965,
44
- "maxMs": 37.69999999552965
45
- },
46
- "messages": []
47
- },
48
- {
49
- "label": "WGSL FP32",
50
- "bundle": "current",
51
- "baseline": false,
52
- "precision": "fp32",
53
- "initializationMs": 355.6000000014901,
54
- "timesMs": [
55
- 78.69999999552965,
56
- 77,
57
- 77.10000000149012
58
- ],
59
- "executionProfile": {
60
- "totalMs": 76.970443,
61
- "layers": [
62
- {
63
- "id": "input-pack",
64
- "durationMs": 0.049957
65
- },
66
- {
67
- "id": "enc_conv1a",
68
- "durationMs": 1.913317
69
- },
70
- {
71
- "id": "pool1",
72
- "durationMs": 18.066991
73
- },
74
- {
75
- "id": "enc_conv2a",
76
- "durationMs": 3.250693
77
- },
78
- {
79
- "id": "pool2",
80
- "durationMs": 7.16349
81
- },
82
- {
83
- "id": "enc_conv3a",
84
- "durationMs": 1.104757
85
- },
86
- {
87
- "id": "pool3",
88
- "durationMs": 3.191403
89
- },
90
- {
91
- "id": "enc_conv4a",
92
- "durationMs": 0.716937
93
- },
94
- {
95
- "id": "pool4",
96
- "durationMs": 1.078801
97
- },
98
- {
99
- "id": "enc_conv5a",
100
- "durationMs": 0.334781
101
- },
102
- {
103
- "id": "enc_conv5b",
104
- "durationMs": 0.451694
105
- },
106
- {
107
- "id": "dec_conv4a",
108
- "durationMs": 1.6697
109
- },
110
- {
111
- "id": "dec_conv4b",
112
- "durationMs": 0.860431
113
- },
114
- {
115
- "id": "dec_conv3a",
116
- "durationMs": 3.418563
117
- },
118
- {
119
- "id": "dec_conv3b",
120
- "durationMs": 1.962607
121
- },
122
- {
123
- "id": "dec_conv2a",
124
- "durationMs": 6.7965
125
- },
126
- {
127
- "id": "dec_conv2b",
128
- "durationMs": 5.525664
129
- },
130
- {
131
- "id": "dec_conv1a",
132
- "durationMs": 10.069775
133
- },
134
- {
135
- "id": "dec_conv1b",
136
- "durationMs": 8.54174
137
- },
138
- {
139
- "id": "dec_conv1c",
140
- "durationMs": 0.802642
141
- }
142
- ]
143
- },
144
- "runtimeInfo": {
145
- "configuredEngine": "wgsl",
146
- "gpuEngine": "wgsl",
147
- "precision": "fp32",
148
- "model": "oidn-unet-large-v1",
149
- "modelFamily": "oidn-unet-large",
150
- "inputChannels": 9,
151
- "dynamicTile": {
152
- "enabled": false,
153
- "currentTileSize": 512,
154
- "minTileSize": 256,
155
- "maxTileSize": 512,
156
- "targetTileTimeMs": 16
157
- },
158
- "lastExecution": {
159
- "width": 512,
160
- "height": 512,
161
- "tileWidth": 512,
162
- "tileHeight": 512,
163
- "tileCount": 1,
164
- "durationMs": 78.79999999701977,
165
- "tileTimeMs": {
166
- "min": 78.79999999701977,
167
- "median": 78.79999999701977,
168
- "mean": 78.79999999701977,
169
- "max": 78.79999999701977
170
- }
171
- }
172
- },
173
- "supportsFP16": true,
174
- "adapter": {
175
- "vendor": "apple",
176
- "architecture": "metal-3",
177
- "device": "",
178
- "description": ""
179
- },
180
- "summary": {
181
- "minMs": 77,
182
- "medianMs": 77.10000000149012,
183
- "meanMs": 77.59999999900658,
184
- "p95Ms": 78.69999999552965,
185
- "maxMs": 78.69999999552965
186
- },
187
- "messages": []
188
- },
189
- {
190
- "label": "WGSL FP16",
191
- "bundle": "current",
192
- "baseline": false,
193
- "precision": "fp16",
194
- "initializationMs": 24.69999999552965,
195
- "timesMs": [
196
- 48.899999998509884,
197
- 48.30000000447035,
198
- 48.100000001490116
199
- ],
200
- "executionProfile": {
201
- "totalMs": 47.595095,
202
- "layers": [
203
- {
204
- "id": "input-pack",
205
- "durationMs": 0.05108
206
- },
207
- {
208
- "id": "enc_conv1a",
209
- "durationMs": 0.737747
210
- },
211
- {
212
- "id": "pool1",
213
- "durationMs": 13.125657
214
- },
215
- {
216
- "id": "enc_conv2a",
217
- "durationMs": 1.51524
218
- },
219
- {
220
- "id": "pool2",
221
- "durationMs": 6.63497
222
- },
223
- {
224
- "id": "enc_conv3a",
225
- "durationMs": 0.762704
226
- },
227
- {
228
- "id": "pool3",
229
- "durationMs": 2.686044
230
- },
231
- {
232
- "id": "enc_conv4a",
233
- "durationMs": 0.45443
234
- },
235
- {
236
- "id": "pool4",
237
- "durationMs": 1.020522
238
- },
239
- {
240
- "id": "enc_conv5a",
241
- "durationMs": 0.194405
242
- },
243
- {
244
- "id": "enc_conv5b",
245
- "durationMs": 0.253152
246
- },
247
- {
248
- "id": "dec_conv4a",
249
- "durationMs": 0.980773
250
- },
251
- {
252
- "id": "dec_conv4b",
253
- "durationMs": 0.537633
254
- },
255
- {
256
- "id": "dec_conv3a",
257
- "durationMs": 1.742936
258
- },
259
- {
260
- "id": "dec_conv3b",
261
- "durationMs": 0.978981
262
- },
263
- {
264
- "id": "dec_conv2a",
265
- "durationMs": 3.8361
266
- },
267
- {
268
- "id": "dec_conv2b",
269
- "durationMs": 2.420644
270
- },
271
- {
272
- "id": "dec_conv1a",
273
- "durationMs": 5.346549
274
- },
275
- {
276
- "id": "dec_conv1b",
277
- "durationMs": 4.065502
278
- },
279
- {
280
- "id": "dec_conv1c",
281
- "durationMs": 0.250026
282
- }
283
- ]
284
- },
285
- "runtimeInfo": {
286
- "configuredEngine": "wgsl",
287
- "gpuEngine": "wgsl",
288
- "precision": "fp16",
289
- "model": "oidn-unet-large-v1",
290
- "modelFamily": "oidn-unet-large",
291
- "inputChannels": 9,
292
- "dynamicTile": {
293
- "enabled": false,
294
- "currentTileSize": 512,
295
- "minTileSize": 256,
296
- "maxTileSize": 512,
297
- "targetTileTimeMs": 16
298
- },
299
- "lastExecution": {
300
- "width": 512,
301
- "height": 512,
302
- "tileWidth": 512,
303
- "tileHeight": 512,
304
- "tileCount": 1,
305
- "durationMs": 49.399999998509884,
306
- "tileTimeMs": {
307
- "min": 49.399999998509884,
308
- "median": 49.399999998509884,
309
- "mean": 49.399999998509884,
310
- "max": 49.399999998509884
311
- }
312
- }
313
- },
314
- "supportsFP16": true,
315
- "adapter": {
316
- "vendor": "apple",
317
- "architecture": "metal-3",
318
- "device": "",
319
- "description": ""
320
- },
321
- "summary": {
322
- "minMs": 48.100000001490116,
323
- "medianMs": 48.30000000447035,
324
- "meanMs": 48.43333333482345,
325
- "p95Ms": 48.899999998509884,
326
- "maxMs": 48.899999998509884
327
- },
328
- "messages": []
329
- }
330
- ]
331
- }