Work for multiple GPUs now

1. Replace `\\"` with `\"`, otherwise awk warns `\"' is not a known regexp operator 2. Use the slot number of `lspci -mm` return value to determine whether two video cards are in different PCI slots, and therefore are two different GPUS.
parent 614a2d1b
...@@ -2135,9 +2135,9 @@ get_gpu() { ...@@ -2135,9 +2135,9 @@ get_gpu() {
case "$os" in case "$os" in
"Linux") "Linux")
# Read GPUs into array. # Read GPUs into array.
gpu_cmd="$(lspci -mm | awk -F '\\"|\\" \\"|\\(' \ gpu_cmd="$(lspci -mm | awk -F '\"|\" \"|\\(' \
'/"Display|"3D|"VGA/ {a[$0] = $3 " " $4} END {for(i in a) '/"Display|"3D|"VGA/ {a[$0] = $1 " " $3 " " $4}
{if(!seen[a[i]]++) print a[i]}}')" END {for(i in a) {if(!seen[a[i]]++) print a[i]}}')"
IFS=$'\n' read -d "" -ra gpus <<< "$gpu_cmd" IFS=$'\n' read -d "" -ra gpus <<< "$gpu_cmd"
# Remove duplicate Intel Graphics outputs. # Remove duplicate Intel Graphics outputs.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment