psiddh's picture
Add ExecuTorch WebGPU program for depth-anything-v2-small
f6696e9 verified
Raw History Blame Contribute Delete
3.16 kB
{
"model": "depth_v2s",
"upstream": {
"model": "depth-anything/Depth-Anything-V2-Small-hf",
"weights": {
"repo": "depth-anything/Depth-Anything-V2-Small-hf",
"revision": "5426e4f0f36572d16453bbda7a8389317b1bef99",
"official": true
},
"license": "Apache-2.0"
},
"versions": {
"python": "3.12.15+meta",
"torch": "2.14.1+cpu",
"torchao": "0.18.0+cpu",
"executorch": "1.5.1+cpu",
"executorch_git": "3b60683923245cf472b7323426920e15623ba361",
"transformers": "5.19.0",
"huggingface_hub": "2.2.0"
},
"export": {
"api": "torch.export.export(strict=False) -> to_edge_transform_and_lower(partitioner=[WebGPUPartitioner()]) -> to_executorch()",
"partitioner": "executorch.backends.webgpu.partitioner.WebGPUPartitioner() (default compile options; wraps VulkanPartitioner)",
"inputs": [
{
"shape": [
1,
3,
224,
224
],
"dtype": "float32",
"layout": "NCHW"
}
],
"outputs": [
{
"shape": [
1,
224,
224
],
"dtype": "float32"
}
],
"dtype": "float32",
"quantization": "none (fp32)",
"attn_implementation": "eager",
"graph_rewrites": [
"transformers 5.x all-zero bidirectional attention mask skipped (attention_mask=None; no padding in images)",
"DINOv2 position embeddings resized (bicubic, as upstream) for the fixed input size in eager and stored as a constant"
],
"preprocessing_outside_graph": "RGB / 255, ImageNet mean/std normalization, resize to input size",
"postprocessing_outside_graph": "min-max normalize predicted_depth for display"
},
"files": {
"depth_v2s_webgpu.pte": {
"bytes": 97307268,
"sha256": "285602ed3a34a26a4d9d36355ce978587ed555e68b6b5fa8a567c1155a3b5160"
},
"depth_v2s_portable.pte": {
"bytes": 97290408,
"sha256": "ce840e1c17ea65fcc52b7d8912dfe2d4d598350e3bdf6b8150f3d8c05d18423c",
"note": "CPU-only validation artifact (portable kernels, no delegate); not for release"
}
},
"graph": {
"non_delegated_kernels": {},
"delegates": [
{
"id": "VulkanBackend",
"ops": {
"et_vk.prepack.default": 39,
"aten.convolution.default": 24,
"aten.view_copy.default": 113,
"aten.permute_copy.default": 65,
"aten.clone.default": 7,
"aten.cat.default": 1,
"aten.add.Tensor": 35,
"aten.native_layer_norm.default": 28,
"aten.squeeze_copy.dims": 97,
"aten.linear.default": 72,
"aten.bmm.default": 24,
"aten.mul.Tensor": 37,
"aten._softmax.default": 12,
"aten.gelu.default": 12,
"aten.slice_copy.Tensor": 4,
"aten.relu.default": 7,
"et_vk.conv_with_clamp.default": 9,
"aten.upsample_bilinear2d.vec": 5,
"dim_order_ops._to_dim_order_copy.default": 1
},
"inputs": 1,
"outputs": 1
}
]
},
"command": "python recipes/depth-anything-v2-small.py --out out/depth-anything-v2-small"
}