File size: 3,874 Bytes
195cfd9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
{
  "mlx_version": "0.32.4",
  "tensor_count": 1899,
  "parameter_elements": 4312697600,
  "weight_bytes": 10158060544,
  "dtypes": {
    "float32": 1151,
    "float16": 748
  },
  "strict_load": {
    "missing": 0,
    "extra": 0,
    "shape_mismatches": 0
  },
  "regression_tests": {
    "class": "TestHi3D",
    "passed": 14
  },
  "reference_comparison": {
    "reference": "Original Hi3D PyTorch code (github 23dcc68, hub 705fc09) on CPU; spconv and flash-attn replaced by reference implementations; float32 unless noted",
    "mlx_device": "GPU",
    "reports": {
      "sphere64_report": {
        "conditioning": {
          "max_abs": 5.714595317840576e-06,
          "mean_abs": 2.006490236685449e-07,
          "rel_l2": 8.875883576616418e-06
        },
        "sigmas": {
          "max_abs": 5.960464477539063e-08,
          "mean_abs": 4.584972675030048e-09,
          "rel_l2": 2.0996074718879118e-08
        },
        "times": {
          "max_abs": 5.960464477539063e-08,
          "mean_abs": 4.76837158203125e-09,
          "rel_l2": 2.0855193972367177e-08
        },
        "velocity_fp16_vs_fp32ref": {
          "max_abs": 0.013125389814376831,
          "mean_abs": 0.0010297759424406192,
          "rel_l2": 0.0012895214320252043
        },
        "velocity_fp16_vs_fp16ref": {
          "max_abs": 0.015636205673217773,
          "mean_abs": 0.001322876022487012,
          "rel_l2": 0.0016291599890619199
        },
        "ref_fp16_vs_ref_fp32": {
          "max_abs": 0.016333699226379395,
          "mean_abs": 0.0011320557014777956,
          "rel_l2": 0.0013910033166357426
        },
        "velocity_fp32": {
          "max_abs": 2.0503997802734375e-05,
          "mean_abs": 1.8179455511446113e-06,
          "rel_l2": 2.220910126120128e-06
        },
        "decoded_voxels": {
          "ours": 1442341,
          "reference": 1442339,
          "common": 1442333
        },
        "decoded_sdf_sign": {
          "max_abs": 28.49630832672119,
          "mean_abs": 0.000985199632137544,
          "rel_l2": 0.0035812783661513725
        },
        "decoded_feat": {
          "max_abs": 0.3575434908270836,
          "mean_abs": 2.4584798492266753e-05,
          "rel_l2": 0.0023846487551618238
        },
        "mesh_faces_identical": true,
        "mesh_vertices": {
          "max_abs": 2.86102294921875e-06,
          "mean_abs": 2.4002885922643986e-07,
          "rel_l2": 5.207820769835567e-08
        },
        "filled_faces_identical": true
      },
      "sphere192_report": {
        "conditioning": {
          "max_abs": 5.714595317840576e-06,
          "mean_abs": 2.006490236685449e-07,
          "rel_l2": 8.875883576616418e-06
        },
        "sigmas": {
          "max_abs": 0.0,
          "mean_abs": 0.0,
          "rel_l2": 0.0
        },
        "times": {
          "max_abs": 0.0,
          "mean_abs": 0.0,
          "rel_l2": 0.0
        },
        "velocity_fp16_vs_fp32ref": {
          "max_abs": 0.032924532890319824,
          "mean_abs": 0.0010041114637135014,
          "rel_l2": 0.001261798954717289
        },
        "velocity_fp32": {
          "max_abs": 5.2988529205322266e-05,
          "mean_abs": 2.1241101601153427e-06,
          "rel_l2": 2.638211684786904e-06
        }
      }
    }
  },
  "benchmark": {
    "hardware": "Apple M4 Pro, 64 GiB unified memory",
    "python": "3.12.11",
    "input": "Hi3D assets/example.png (436x640 RGBA), coarse mesh from mlx-community/sam-3d-objects-bf16 (seed 0)",
    "resolution": 1024,
    "steps": 25,
    "seed": 0,
    "timings": {
      "coarse_mesh": 77.6,
      "load": 1.5,
      "conditioning": 0.58,
      "pass1_sampling": 189.08,
      "pass1_decoding": 8.86,
      "pass2_sampling": 1517.58,
      "pass2_decoding": 44.96,
      "postprocess": 8.67
    },
    "peak": 30.05,
    "vertices": 495425,
    "faces": 1000000
  }
}