Add RTMLib CUDA backends and staged timing

This commit is contained in:
Codex
2026-08-15 10:58:02 -07:00
parent dba60667cb
commit 174ba875dd
8 changed files with 243 additions and 61 deletions
+26 -8
View File
@@ -49,6 +49,22 @@ services:
fetch https://download.openmmlab.com/mmdetection/v3.0/rtmdet/rtmdet_tiny_8xb32-300e_coco/rtmdet_tiny_8xb32-300e_coco_20220902_112414-78e30dcc.pth /models/rtmdet_tiny_8xb32-300e_coco_20220902_112414-78e30dcc.pth
fetch https://download.openmmlab.com/mmpose/v1/projects/rtmw/rtmw-dw-x-l_simcc-cocktail14_270e-256x192-20231122.pth /models/rtmw-dw-x-l_simcc-cocktail14_270e-256x192-20231122.pth
fetch https://download.openmmlab.com/mmpose/v1/projects/rtmw/rtmw-dw-l-m_simcc-cocktail14_270e-256x192-20231122.pth /models/rtmw-dw-l-m_simcc-cocktail14_270e-256x192-20231122.pth
fetch_zip() {
url="$$1"; directory="$$2"; stable="$$3"
archive="/models/$$(basename "$$directory").zip"
fetch "$$url" "$$archive"
if [ ! -s "$$stable" ]; then
mkdir -p "$$directory"
unzip -o "$$archive" -d "$$directory"
found=$$(find "$$directory" -type f -name '*.onnx' | head -1)
test -n "$$found"
cp "$$found" "$$stable"
fi
}
fetch_zip https://download.openmmlab.com/mmpose/v1/projects/rtmposev1/onnx_sdk/yolox_m_8xb8-300e_humanart-c2c7a14a.zip /models/yolox-m-humanart /models/yolox-m-humanart.onnx
fetch_zip https://download.openmmlab.com/mmpose/v1/projects/rtmposev1/onnx_sdk/rtmpose-m_simcc-body7_pt-body7_420e-256x192-e48f03d0_20230504.zip /models/rtmpose-m-body17 /models/rtmpose-m-body17.onnx
fetch_zip https://download.openmmlab.com/mmpose/v1/projects/rtmposev1/onnx_sdk/rtmpose-m_simcc-ucoco_dw-ucoco_270e-256x192-c8b76419_20230728.zip /models/dwpose-m-wholebody /models/dwpose-m-wholebody.onnx
fetch_zip https://download.openmmlab.com/mmpose/v1/projects/rtmw/onnx_sdk/rtmw-dw-x-l_simcc-cocktail14_270e-256x192_20231122.zip /models/rtmw-l-wholebody /models/rtmw-l-wholebody.onnx
sha256sum /models/*.pth > /models/SHA256SUMS
chmod -R a-w /models
@@ -84,8 +100,9 @@ services:
API_TOKEN_FILE: /run/secrets/api-token
NDI_SOURCE_NAME: TAIL 2_1621D2 (OBSBOT)
NDI_SOURCE_IP: 192.168.50.207
MODEL_PROFILE: balanced
BENCHMARK_PROFILE: rtmdet-tiny_rtmw-m_gpu1_fp32_final
MODEL_BACKEND: rtmlib_body
MODEL_PROFILE: rtmlib_body
BENCHMARK_PROFILE: rtmlib_body_yolox-m_rtmpose-m_gpu1
MAX_PEOPLE: "4"
DETECTION_THRESHOLD: "0.35"
NMS_IOU_THRESHOLD: "0.60"
@@ -95,12 +112,12 @@ services:
SAVE_CROPS: "false"
LOG_COORDINATES: "false"
CUDA_VISIBLE_DEVICES: "1"
DETECTOR_NAME: rtmdet-tiny-person
DET_CONFIG: /models/mmdetection/configs/rtmdet/rtmdet_tiny_8xb32-300e_coco.py
DET_CHECKPOINT: /models/rtmdet_tiny_8xb32-300e_coco_20220902_112414-78e30dcc.pth
POSE_NAME: rtmw-m-256x192
POSE_CONFIG: /models/mmpose/configs/wholebody_2d_keypoint/rtmpose/cocktail14/rtmw-m_8xb1024-270e_cocktail14-256x192.py
POSE_CHECKPOINT: /models/rtmw-dw-l-m_simcc-cocktail14_270e-256x192-20231122.pth
DETECTOR_NAME: yolox-m-humanart-coco-640x640
DET_CONFIG: ""
DET_CHECKPOINT: /models/yolox-m-humanart.onnx
POSE_NAME: rtmpose-m-body17-256x192
POSE_CONFIG: ""
POSE_CHECKPOINT: /models/rtmpose-m-body17.onnx
healthcheck:
test: ["CMD", "python", "-c", "import json,pathlib,urllib.request; t=pathlib.Path('/run/secrets/api-token').read_text().strip(); r=urllib.request.Request('http://127.0.0.1:18120/v1/health',headers={'Authorization':'Bearer '+t}); raise SystemExit(0 if json.load(urllib.request.urlopen(r,timeout=3))['ready'] else 1)"]
interval: 15s
@@ -109,6 +126,7 @@ services:
start_period: 180s
gpu-audit:
profiles: ["validation"]
image: tail2-pose-server:0.1.0
container_name: tail2-pose-gpu-audit
gpus: all