linxianzhong0128's picture
Upload folder using huggingface_hub
7088d16 verified
# Copyright (c) Meta Platforms, Inc. and affiliates.
# All rights reserved.
#
# This source code is licensed under the BSD-style license found in the
# LICENSE file in the root directory of this source tree.
from itertools import product
from fvcore.common.benchmark import benchmark
from tests.test_io_obj import TestMeshObjIO
from tests.test_io_ply import TestMeshPlyIO
def bm_save_load() -> None:
simple_kwargs_list = [
{"V": 100, "F": 200},
{"V": 1000, "F": 2000},
{"V": 10000, "F": 20000},
]
benchmark(
TestMeshObjIO.bm_load_simple_obj_with_init,
"LOAD_SIMPLE_OBJ",
simple_kwargs_list,
warmup_iters=1,
)
benchmark(
TestMeshObjIO.bm_save_simple_obj_with_init,
"SAVE_SIMPLE_OBJ",
simple_kwargs_list,
warmup_iters=1,
)
benchmark(
TestMeshPlyIO.bm_load_simple_ply_with_init,
"LOAD_SIMPLE_PLY",
simple_kwargs_list,
warmup_iters=1,
)
benchmark(
TestMeshPlyIO.bm_save_simple_ply_with_init,
"SAVE_SIMPLE_PLY",
simple_kwargs_list,
warmup_iters=1,
)
complex_kwargs_list = [{"N": 8}, {"N": 32}, {"N": 128}]
benchmark(
TestMeshObjIO.bm_load_complex_obj,
"LOAD_COMPLEX_OBJ",
complex_kwargs_list,
warmup_iters=1,
)
benchmark(
TestMeshObjIO.bm_save_complex_obj,
"SAVE_COMPLEX_OBJ",
complex_kwargs_list,
warmup_iters=1,
)
benchmark(
TestMeshPlyIO.bm_load_complex_ply,
"LOAD_COMPLEX_PLY",
complex_kwargs_list,
warmup_iters=1,
)
benchmark(
TestMeshPlyIO.bm_save_complex_ply,
"SAVE_COMPLEX_PLY",
complex_kwargs_list,
warmup_iters=1,
)
# Texture loading benchmarks
kwargs_list = [{"R": 2}, {"R": 4}, {"R": 10}, {"R": 15}, {"R": 20}]
benchmark(
TestMeshObjIO.bm_load_texture_atlas,
"PYTORCH3D_TEXTURE_ATLAS",
kwargs_list,
warmup_iters=1,
)
kwargs_list = []
S = [64, 256, 1024]
F = [100, 1000, 10000]
R = [5, 10, 20]
test_cases = product(S, F, R)
for case in test_cases:
s, f, r = case
kwargs_list.append({"S": s, "F": f, "R": r})
benchmark(
TestMeshObjIO.bm_bilinear_sampling_vectorized,
"BILINEAR_VECTORIZED",
kwargs_list,
warmup_iters=1,
)
benchmark(
TestMeshObjIO.bm_bilinear_sampling_grid_sample,
"BILINEAR_GRID_SAMPLE",
kwargs_list,
warmup_iters=1,
)
if __name__ == "__main__":
bm_save_load()