Skip to main content

onnx-and-benchmarking

Use 3DDFA_V2 ONNX Runtime acceleration and CPU latency or speed benchmark workflows.

Ir a la instalación

Datos de origen

Repositorio
VectorSpaceLab/AREX-Skill
Última actividad en el origen
26 de agosto de 2026 a las 16:31
Idioma detectado de SKILL.md
inglés
Estrellas
12
Forks
2

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Explorador de archivos
5 archivos

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
onnx-and-benchmarking
description
Use 3DDFA_V2 ONNX Runtime acceleration and CPU latency or speed benchmark workflows.
metadata
{"disco-role":"operating"}
disable-model-invocation
true
license
MIT
# ONNX and benchmarking Use this sub-skill when the task is about `--onnx`, ONNX conversion, CPU latency, `OMP_NUM_THREADS`, `latency.py`, or `speed_cpu.py`. ## When to read Read this sub-skill when the task asks to: - Use ONNX Runtime instead of the PyTorch model path. - Explain or prepare `TDDFA_ONNX` and `FaceBoxes_ONNX`. - Run end-to-end latency timing on an image. - Run the model-only CPU microbenchmark. - Diagnose missing `.onnx` files, OpenMP/libomp issues, or unstable timings. ## Before running 1. Use `../setup-and-assets/` to build and verify the baseline checkout. 2. Check `../../references/model-assets.md` for which `.pth`, `.pkl`, and generated `.onnx` assets are involved. 3. Keep benchmark inputs and thread counts fixed when comparing numbers. ## Latency wrapper The latency wrapper preserves the original `latency.py` CLI. Put original arguments after `--`: ```bash python <skill-root>/sub-skills/onnx-and-benchmarking/scripts/run-latency.py \ --repo-root <checkout> -- \ -f <image-path> --onnx --repeated 1 --warmup true ``` This reports face detection, 3DMM regression, and reconstruction timing. ## Speed wrapper The speed wrapper preserves `speed_cpu.py`: ```bash python <skill-root>/sub-skills/onnx-and-benchmarking/scripts/run-speed-cpu.py \ --repo-root <checkout> ``` It runs a random input through `weights/mb1_120x120.onnx` and prints the mean and standard deviation per inference. ## ONNX conversion behavior - `FaceBoxes_ONNX` converts `FaceBoxesProd.pth` to `FaceBoxesProd.onnx` if the ONNX file is missing. - `TDDFA_ONNX` converts the selected `.pth` checkpoint and the BFM decoder if the ONNX artifacts are missing. - Conversion is CPU-safe but mutates the checkout by writing generated `.onnx` files. ## Thread and provider notes - The repo sets `OMP_NUM_THREADS=4` in the ONNX demo paths. - `KMP_DUPLICATE_LIB_OK=True` is set by the demo scripts before ONNX imports. - CPU ONNX Runtime is the baseline. CUDA/other providers are outside the required verification scope. - On macOS, the original README notes that `libomp` may be required. ## Troubleshooting Read `references/troubleshooting.md` for ONNX-specific issues and `../../references/troubleshooting.md` for shared setup failures.
Ver en GitHub