Uploaded sanitized BC250/ROCm Repository.
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
#!/bin/bash
|
||||
# Stress the GPU with a real Vulkan compute workload and monitor clocks
|
||||
H=/sys/class/drm/card0/device/hwmon/hwmon1
|
||||
SYSFS=/sys/class/drm/card0/device
|
||||
|
||||
echo "=== PRE-LOAD ==="
|
||||
echo "FREQ: $(cat $H/freq1_input) Hz"
|
||||
cat $SYSFS/pp_dpm_sclk
|
||||
|
||||
# Check if pp_table exists or can be created
|
||||
echo "=== PP_TABLE CHECK ==="
|
||||
ls -la $SYSFS/pp_table 2>/dev/null || echo "pp_table: NOT PRESENT"
|
||||
sudo cat $SYSFS/pp_table 2>/dev/null | wc -c || echo "pp_table: NOT READABLE"
|
||||
|
||||
# Create a Vulkan compute stress with vkcube or glmark if available
|
||||
if command -v vkcube &>/dev/null; then
|
||||
echo "Starting vkcube..."
|
||||
timeout 8 vkcube --c 99999 &>/dev/null &
|
||||
STRESS_PID=$!
|
||||
elif command -v glmark2-es2 &>/dev/null; then
|
||||
echo "Starting glmark2..."
|
||||
timeout 8 glmark2-es2 --off-screen &>/dev/null &
|
||||
STRESS_PID=$!
|
||||
else
|
||||
# Fallback: just do heavy memory operations via python
|
||||
echo "Starting python GPU mem stress..."
|
||||
timeout 8 python3 -c "
|
||||
import ctypes, time
|
||||
# Just allocate and fill memory rapidly to force GPU activity
|
||||
data = bytearray(512*1024*1024)
|
||||
for i in range(100):
|
||||
data[i*1024:(i+1)*1024] = b'x' * 1024
|
||||
time.sleep(6)
|
||||
" &>/dev/null &
|
||||
STRESS_PID=$!
|
||||
fi
|
||||
|
||||
# Monitor during load
|
||||
for i in 1 2 3 4 5 6; do
|
||||
sleep 1
|
||||
freq=$(cat $H/freq1_input)
|
||||
dpm=$(cat $SYSFS/pp_dpm_sclk | grep '\*')
|
||||
power=$(cat $H/power1_input)
|
||||
temp=$(cat $H/temp1_input)
|
||||
echo "t+${i}s: freq=${freq}Hz dpm=${dpm} power=${power}uW temp=${temp}mC"
|
||||
done
|
||||
|
||||
kill $STRESS_PID 2>/dev/null
|
||||
wait $STRESS_PID 2>/dev/null
|
||||
|
||||
echo "=== POST LOAD ==="
|
||||
sleep 1
|
||||
echo "FREQ: $(cat $H/freq1_input) Hz"
|
||||
cat $SYSFS/pp_dpm_sclk
|
||||
|
||||
# Check if we can write pp_table
|
||||
echo "=== PP_TABLE WRITE TEST ==="
|
||||
if [ -f "$SYSFS/pp_table" ]; then
|
||||
echo "pp_table exists, trying to read..."
|
||||
sudo cat $SYSFS/pp_table > /tmp/pp_table_backup.bin 2>/dev/null
|
||||
echo "Read $(wc -c < /tmp/pp_table_backup.bin) bytes"
|
||||
else
|
||||
echo "No pp_table file — cannot modify power table"
|
||||
fi
|
||||
Reference in New Issue
Block a user