clean up num_gpu calculation code (#673)
This commit is contained in:
parent
1fbf3585d6
commit
b1f7123301
|
@ -218,7 +218,6 @@ func NumGPU(numLayer, fileSizeBytes int64, opts api.Options) int {
|
|||
if opts.NumGPU != -1 {
|
||||
return opts.NumGPU
|
||||
}
|
||||
n := 1 // default to enable metal on macOS
|
||||
if runtime.GOOS == "linux" {
|
||||
vramMib, err := CheckVRAM()
|
||||
if err != nil {
|
||||
|
@ -235,10 +234,11 @@ func NumGPU(numLayer, fileSizeBytes int64, opts api.Options) int {
|
|||
// TODO: this is a rough heuristic, better would be to calculate this based on number of layers and context size
|
||||
bytesPerLayer := fileSizeBytes / numLayer
|
||||
|
||||
// set n to the max number of layers we can fit in VRAM
|
||||
return int(totalVramBytes / bytesPerLayer)
|
||||
// max number of layers we can fit in VRAM
|
||||
layers := int(totalVramBytes / bytesPerLayer)
|
||||
log.Printf("%d MiB VRAM available, loading up to %d GPU layers", vramMib, layers)
|
||||
|
||||
log.Printf("%d MiB VRAM available, loading up to %d GPU layers", vramMib, n)
|
||||
return layers
|
||||
}
|
||||
// default to enable metal on macOS
|
||||
return 1
|
||||
|
|
Loading…
Reference in a new issue