File size: 2,828 Bytes
b846e48
 
26f21f6
 
 
 
 
 
 
 
 
 
 
b846e48
 
 
 
 
 
 
 
26f21f6
b846e48
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
26f21f6
b846e48
 
26f21f6
 
 
 
 
b846e48
 
26f21f6
b846e48
 
 
 
 
 
 
 
26f21f6
b846e48
 
 
 
 
 
 
26f21f6
 
b846e48
 
26f21f6
 
b846e48
 
26f21f6
 
b846e48
 
26f21f6
 
 
 
 
b846e48
26f21f6
b846e48
 
 
 
 
26f21f6
 
b846e48
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
{
  "mlx_version": "0.32.2",
  "tensor_count": 3895,
  "parameter_elements": 3530447862,
  "weight_bytes": 7801464522,
  "dtypes": {
    "sam": {
      "bfloat16": 3288
    },
    "depth_model": {
      "float32": 607
    }
  },
  "strict_load": {
    "missing": 0,
    "extra": 0,
    "shape_mismatches": 0
  },
  "trainable_tensors": 0,
  "regression_tests": {
    "class": "TestSAM3DObjects",
    "passed": 17
  },
  "reference_comparison": {
    "precision": "float32",
    "mlx_device": "CPU",
    "reference": "Original PyTorch source; CPU adapter for the unavailable spconv backend",
    "maximum_absolute_errors": {
      "attention_False": 1.1920928955078125e-07,
      "attention_True": 1.1920928955078125e-07,
      "resize_False_False": 2.384185791015625e-07,
      "resize_False_True": 1.430511474609375e-06,
      "resize_True_False": 3.5762786865234375e-07,
      "resize_True_True": 9.5367431640625e-07,
      "structure_6drotation_normalized": 1.1920928955078125e-07,
      "structure_scale": 4.76837158203125e-07,
      "structure_shape": 4.76837158203125e-07,
      "structure_translation": 1.1920928955078125e-07,
      "structure_translation_scale": 2.9802322387695312e-08,
      "occupancy_decoder": 1.6391277313232422e-06,
      "sparse_latent_flow": 2.942979335784912e-07,
      "flexicubes_vertices": 2.9802322387695312e-08,
      "flexicubes_colors": 1.1920928955078125e-07,
      "flexicubes_faces": 0.0
    }
  },
  "depth_model": {
    "source": "mlx-community/moge-3-vitl-mlx-fp32",
    "base": "Ruicheng/moge-3-vitl",
    "validation": "MoGe-3 MLX port validated against the PyTorch reference in mlx-vlm (CPU float32): identical valid-pixel masks and under 0.2% median relative depth error"
  },
  "benchmark": {
    "hardware": "Apple M5 Max, 128 GiB unified memory",
    "dtype": "bfloat16 (SAM), float32 (MoGe-3)",
    "steps": [
      25,
      25
    ],
    "input_size": [
      448,
      672
    ],
    "input": "id3_shutterstock_WildAnimal_Waterhole_2010559391/image.png and 0.png resized to 672x448",
    "formats": [
      "gaussian",
      "gaussian_4",
      "mesh"
    ],
    "samples": [
      {
        "seconds": 10.577361750009004,
        "peak_memory_gb": 9.539739473
      },
      {
        "seconds": 10.955263582989573,
        "peak_memory_gb": 9.578930137
      },
      {
        "seconds": 11.333075082977302,
        "peak_memory_gb": 9.518227537
      }
    ],
    "median_seconds": 10.955263582989573,
    "peak_memory_gb": 9.578930137,
    "gaussians": 298112,
    "mesh_vertices": 330848,
    "mesh_faces": 655702,
    "pointmap_conditioned": true,
    "identical_latents_across_runs": true,
    "async_validation": {
      "request_ids": [
        "0",
        "1"
      ],
      "event_loop_heartbeats": 3955,
      "latents_match_synchronous": true
    }
  }
}