---
### 如何進行 Thermal 測試
---
主要將利用 run_model 程序進行模型的測試,利用 dxrt-cli 程序監控溫度.
* 如何測量
* 基本做法
* 監控溫度
```
$ ./bin/dxrt-cli -m 1
$ ./bin/dxrt-cli -m 1 > temp_m1a.log
$ ./bin/dxrt-cli -m 1 2>&1 | tee log.txt
```
* 測試模組
```
$ ./bin/run_model -m YoloV7.dxnn -l 1000 -b -f 90
$ ./bin/run_model -m YOLOV5S_1.dxnn -l 1000 -b -f 480
```
* Note : YOLOv5s_640x640_FPS_480 , YOLOv7_640x640_FPS_90 逼近滿載性能
* 標準化流程
* vi thermal_test.sh
```
#!/bin/bash
MODEL="../dx_app/assets/models/YOLOV5S_6.dxnn"
FPS=480
LOOPS=1000
ROUNDS=10
echo "===== DEEPX Thermal Loop Test ====="
echo "Model: $MODEL"
echo "FPS: $FPS"
echo "Loops per round: $LOOPS"
echo "Total rounds: $ROUNDS"
echo "==================================="
echo ""
# 記錄開始時間
TEST_START=$(date +%s)
# 啟動溫度記錄
TEMP_LOG="temperature_log.txt"
echo "[INFO] Starting temperature logging to $TEMP_LOG ..."
./bin/dxrt-cli -m 1 > $TEMP_LOG &
TEMP_PID=$!
echo "[INFO] Temperature logging PID: $TEMP_PID"
echo ""
for i in $(seq 1 $ROUNDS); do
echo "===== Round $i / $ROUNDS ====="
LOGFILE="thermal_round_${i}.log"
echo "Running: $MODEL (FPS=$FPS, LOOPS=$LOOPS)"
echo "Saving model log to: $LOGFILE"
./bin/run_model -m $MODEL -f $FPS -l $LOOPS | tee $LOGFILE
echo "Round $i completed."
echo ""
done
# 停止溫度記錄
echo "[INFO] Stopping temperature logging..."
kill $TEMP_PID
echo "[INFO] Temperature logging stopped."
# 記錄結束時間
TEST_END=$(date +%s)
# 計算總時間(秒)
TOTAL_TIME=$((TEST_END - TEST_START))
echo ""
echo "===== Thermal Test Completed ====="
echo "Start time : $(date -d @$TEST_START)"
echo "End time : $(date -d @$TEST_END)"
echo "Total time : ${TOTAL_TIME} seconds"
# 顯示格式化時間
echo "Total time (formatted): $(printf '%02d:%02d:%02d\n' $((TOTAL_TIME/3600)) $((TOTAL_TIME%3600/60)) $((TOTAL_TIME%60)))"
```
* DX-RT v2.9.5 標準化動作
* 執行 bash thermal_test.sh
* 請觀察運行十次的時間,並評估測時間來修改 ROUNDS 次數 (假設 10 次運行 10秒, 則 30 分鐘則需運行 180 次 )
* 再次, 運行 bash thermal_test.sh , 且溫度資訊將會記錄至 temperature_log.txt
* 透過 [Thermal_Test_Table.xsl](https://1drv.ms/x/c/f7ddb1943ac2b7e8/EeuG2Xq1llVBt7QB9smEsvUBpUaioZU4n0-RK5b31RiEjg?e=u9jEa0) 彙整資訊 (將temperature_log 複製至 excel 中 )
* 細節
* 每一瓦大約上升 19 度
* 晶片最大5W , LPDDR5 最多浪費2W , 平均花費約5W
</br>
</br>
---
### [【總部文件】DEEPX Integration Tool User Manual](https://1drv.ms/b/c/f7ddb1943ac2b7e8/EVOa5jkOLxFFtXVOrHFMyWMBFA_fo-ioE_k9bVnsry6JOw?e=WsEwM3)
---
* 測試版本 rt2.9.5/driver1.5.0/fw2.0.5
* 測試模組 (DX_Burn_in_PGM_V1.0.3)
```
$ ./bin/run_model -m YoloV7.dxnn -l 1000 -b -f 90
$ ./bin/run_model -m YOLOV5S_1.dxnn -l 1000 -b -f 60
```
Note. A full execution run may take up to 1 hour for 100,000 times.
* 監控溫度
```
$ ./bin/dxrt-cli -m 1 > temp_m1a.log
```

* 溫度動作

---
### [【總部文件】DX-M1 M.2 Thermal Test Guide with AAEON](https://1drv.ms/b/c/f7ddb1943ac2b7e8/EQMH2Wm3a-9LrC_hge0W4k8BPCWmzokGTJcWD4gcbS02qw?e=McHznb)
---
* 硬體安裝 : DX-M1 上層, 利用散熱模塊與機殼散熱
* 測試版本 rt2.9.5/driver1.5.0/fw2.0.5
* 測試模組 (DX_Burn_in_PGM_V1.0.3)
```
$ ./bin/run_model -m YoloV7.dxnn -l 1000 -b -f 90
```
* 監控溫度 (test 30 min)
```
$ ./bin/dxrt-cli -m 1
```

---
### [【總部文件】DX-M1 M.2 Thermal Test Guide with Radxa](https://1drv.ms/b/c/f7ddb1943ac2b7e8/EQMH2Wm3a-9LrC_hge0W4k8BPCWmzokGTJcWD4gcbS02qw?e=McHznb)
---
* 硬體安裝 : DX-M1 底層, 利用散熱軟墊與機殼散熱
* 測試版本 : rt2.9.5/driver1.7.0/fw2.0.5
* 測試模組 (DX_Burn_in_PGM_V1.0.3)
```
$ ./bin/run_model -m YoloV7.dxnn -l 1000 -b -f 90
```
* 監控溫度 (test 30 min)
```
$ ./bin/dxrt-cli -m 1
```

---
### [【客戶文件】WE-Link RSQ11 DeepX AI sytem Thermal Report ](https://1drv.ms/b/c/f7ddb1943ac2b7e8/EX2drEFxR7hAiIOwHqR_F90Bb7pzohuenBp1BWW5pIqigg?e=mPDksU)
---
* 硬體安裝 : DX-M1 底層, 利用導熱銅管與機殼散熱
* 測試版本 : rt3.0.0/driver1.7.0/fw2.x.x
* 測試模組
```
$ run_model -m YOLOV5S-1.dxnn -t 16200 -f <Setting>
```
* 監控溫度 (test 1.5 to 2 hr, and rest 10 min in 4 hour)
```
$ ./bin/dxrt-cli -m 1
```

* RSQ11
* 60 FPS → 45°C
* 180 FPS → 55°C
* 360 FPS → 63°C
* 480 FPS → 65°C
---
### 威力驗證
---
* 測試版本為 rt3.0.0
* 監控溫度
$ dxtop
* 測試模組
* 滿載100%
$ ./bin/run_model -m ../dx_app/assets/models/YOLOV9S.dxnn -b -l 1000 -d 0 -f 100
