Gered
47c356a6cd
Some checks failed
release / build-darwin (push) Has been cancelled
release / generate-windows-cpu (push) Has been cancelled
release / generate-windows-rocm (push) Has been cancelled
release / generate-windows-cuda (map[url:https://developer.download.nvidia.com/compute/cuda/11.3.1/local_installers/cuda_11.3.1_465.89_win10.exe version:11]) (push) Has been cancelled
release / generate-windows-cuda (map[url:https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_551.61_windows.exe version:12]) (push) Has been cancelled
release / build-windows (push) Has been cancelled
release / build-linux-amd64 (push) Has been cancelled
release / build-linux-arm64 (push) Has been cancelled
release / build-container-image (linux) (push) Has been cancelled
release / build-container-image (linux-arm64) (push) Has been cancelled
release / merge (push) Has been cancelled
release / build-container-image-rocm (push) Has been cancelled
release / release (push) Has been cancelled
as per discussion for this issue and the most recent comment on how to fix this issue, at least temporarily, here: https://github.com/ollama/ollama/issues/2187#issuecomment-2262876198
39 lines
721 B
Go
39 lines
721 B
Go
package gpu
|
|
|
|
import (
|
|
"os"
|
|
"path/filepath"
|
|
"runtime"
|
|
"strings"
|
|
|
|
"golang.org/x/sys/cpu"
|
|
)
|
|
|
|
func GetCPUCapability() CPUCapability {
|
|
if cpu.X86.HasAVX2 {
|
|
return CPUCapabilityAVX2
|
|
}
|
|
if cpu.X86.HasAVX {
|
|
return CPUCapabilityAVX
|
|
}
|
|
// else LCD
|
|
//return CPUCapabilityNone
|
|
return CPUCapabilityAVX
|
|
}
|
|
|
|
func IsNUMA() bool {
|
|
if runtime.GOOS != "linux" {
|
|
// numa support in llama.cpp is linux only
|
|
return false
|
|
}
|
|
ids := map[string]interface{}{}
|
|
packageIds, _ := filepath.Glob("/sys/devices/system/cpu/cpu*/topology/physical_package_id")
|
|
for _, packageId := range packageIds {
|
|
id, err := os.ReadFile(packageId)
|
|
if err == nil {
|
|
ids[strings.TrimSpace(string(id))] = struct{}{}
|
|
}
|
|
}
|
|
return len(ids) > 1
|
|
}
|