Files
baremetal-basics/gfxb
T
2026-10-26 17:00:48 +00:00

113 lines
5.7 KiB
Bash

#!/bin/bash
##sudo apt install glmark2
sudo clear
ts=$(date +%Y-%m-%d-%T)
echo "UID: "
read -r uid
clear
sudo rm -rf ./.tmp/"$uid".log
#sudo rm -rf ./.tmp/
mkdir ./.tmp/
gpu=$(sudo inxi -Gxxxa | grep -i 'device-1: ' | grep -i 'vendor: ' | awk -F': ' '{print $2}' | sed s/vendor//g | sed 's/^[ \t]*//')
gpuven=$(sudo inxi -Gxxxa | grep -i 'device-1:' | grep -i 'vendor:' | awk -F'vendor:' '{print $2}' | awk -F' driver:' '{print $1}' | sed 's/^[ \t]*//')
gpu2=$(sudo inxi -Gxxxa | grep -i 'device-2: ' | grep -i 'vendor: ' | awk -F': ' '{print $2}' | sed s/vendor//g | sed 's/^[ \t]*//')
gpuven2=$(sudo inxi -Gxxxa | grep -i 'device-2:' | grep -i 'vendor:' | awk -F'vendor:' '{print $2}' | awk -F' driver:' '{print $1}' | sed 's/^[ \t]*//')
vram=$(sudo inxi -Gxxxa | grep -i 'Memory:' | awk -F'memory:' '{print $2}' | awk -F' ' '{print $1,$2}' | sed s/GiB/GB/g | awk '{printf "%.0fGB\n", $1}')
clear
echo "================================================================================" | tee -a ./.tmp/"$uid".log
echo " GFX BENCHMARK UID: $uid DATE: ${ts}" | tee -a ./.tmp/"$uid".log
echo "================================================================================" | tee -a ./.tmp/"$uid".log
echo " GPU: $gpuven $gpu" | tee -a ./.tmp/"$uid".log
echo "--------------------------------------------------------------------------------" | tee -a ./.tmp/"$uid".log
echo " GPU2: $gpuven2 $gpu2" | tee -a ./.tmp/"$uid".log
echo "--------------------------------------------------------------------------------" | tee -a ./.tmp/"$uid".log
echo " VRAM: $vram" | tee -a ./.tmp/"$uid".log
echo "================================================================================" | tee -a ./.tmp/"$uid".log
echo " GFX DETAIL:" | tee -a ./.tmp/"$uid".log
echo "--------------------------------------------------------------------------------" | tee -a ./.tmp/"$uid".log
sudo inxi -Gxxxa | tee -a ./.tmp/"$uid".log
echo "--------------------------------------------------------------------------------"
echo " PRESS ENTER TO BENCHMARK, R FOR REPORT, Q TO RELOAD, OR E TO EXIT"
echo "================================================================================" | tee -a ./.tmp/"$uid".log
read -r -n 1 -s key
if [ "$key" = "R" ] || [ "$key" = "r" ]; then
#echo "================================================================================" | tee -a ./.tmp/"$uid".log
## NOTES
echo | tee -a ./.tmp/"$uid".log
echo " ENTER NOTES TO INCLUDE:"
echo " NOTES:" | tee -a ./.tmp/"$uid".log
read -r note
echo " $note" >> ./.tmp/"$uid".log
echo | tee -a ./.tmp/"$uid".log
echo " TECH:" | tee -a ./.tmp/"$uid".log
read -r tech
echo " $tech" >> ./.tmp/"$uid".log
echo | tee -a ./.tmp/"$uid".log
echo "================================================================================" | tee -a ./.tmp/"$uid".log
## REPORT END
echo " PRESS ENTER TO PRINT REPORT OR CTRL-C TO EXIT"
read -r -n1
echo "================================================================================"
echo " GENERATING REPORT FILE: $uid.pdf..."
echo "--------------------------------------------------------------------------------"
#mkdir ./rp/
soffice --headless --convert-to pdf --outdir ./ ./.tmp/"$uid".log
rm ./.tmp/"$uid".log
sudo rm -rf ./.tmp/
qrencode -l H -o ./"$uid".png "$uid"
open ./"$uid".pdf; open ./"$uid".png
qrencode -t ANSI -o - "$uid" -s 1 -m 1 -M
echo "================================================================================"
read -r -n1
exit
else
if [ "$key" = "q" ] || [ "$key" = "Q" ]; then
exec bash "$0" "$@"
else
if [ "$key" = "e" ] || [ "$key" = "E" ]; then
exit
fi
fi
fi
echo "--------------------------------------------------------------------------------" | tee -a ./.tmp/"$uid".log
echo " RUNNING HASHCAT BENCHMARK..."
echo " HASHCAT BENCHMARK:" | tee -a ./.tmp/"$uid".log
#echo "--------------------------------------------------------------------------------"
hcs=$(hashcat -bm 0 -D 2 | grep 'Speed.#1.........:' | awk '{print $2,$3}'); echo " HASHCAT SCORE: $hcs (GPU)" | tee -a ./.tmp/"$uid".log
echo "--------------------------------------------------------------------------------" | tee -a ./.tmp/"$uid".log
echo " RUNNING GLMARK2 BENCHMARK..."
echo " GLMARK2 BENCHMARK:" | tee -a ./.tmp/"$uid".log
#echo "--------------------------------------------------------------------------------"
gms=$(glmark2 --annotate | grep -i 'score:' | awk -F: '{print $2}'); echo " GLMARK2 SCORE:"$gms"FPS (GPU)" | tee -a ./.tmp/"$uid".log
#glmark2 --annotate | tee -a ./.tmp/"$uid".log
echo "================================================================================" | tee -a ./.tmp/"$uid".log
## NOTES
echo | tee -a ./.tmp/"$uid".log
echo " ENTER NOTES TO INCLUDE:"
echo " NOTES:" | tee -a ./.tmp/"$uid".log
read -r note
echo " $note" >> ./.tmp/"$uid".log
echo | tee -a ./.tmp/"$uid".log
echo " TECH:" | tee -a ./.tmp/"$uid".log
read -r tech
echo " $tech" >> ./.tmp/"$uid".log
echo | tee -a ./.tmp/"$uid".log
echo "================================================================================" | tee -a ./.tmp/"$uid".log
## REPORT END
echo " PRESS ENTER TO PRINT REPORT OR CTRL-C TO EXIT"
read -r -n1
echo "================================================================================"
echo " GENERATING REPORT FILE: $uid.pdf..."
echo "--------------------------------------------------------------------------------"
#mkdir ./rp/
soffice --headless --convert-to pdf --outdir ./ ./.tmp/"$uid".log
rm ./.tmp/"$uid".log
sudo rm -rf ./.tmp/
qrencode -l H -o ./"$uid".png "$uid"
open ./"$uid".pdf; open ./"$uid".png
qrencode -t ANSI -o - "$uid" -s 1 -m 1 -M
echo "================================================================================"
read -r -n1