Skip to content

Commit

Permalink
fixed incorrect auto gpu settings, fixed clblast not working
Browse files Browse the repository at this point in the history
  • Loading branch information
LostRuins committed Sep 21, 2024
1 parent 004a35b commit 229108f
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 3 deletions.
8 changes: 7 additions & 1 deletion ggml/src/ggml-backend.c
Original file line number Diff line number Diff line change
Expand Up @@ -1174,6 +1174,8 @@ static char causes[GGML_DEFAULT_GRAPH_SIZE*16 + GGML_SCHED_MAX_SPLITS_DEBUG*GGML
#define GET_CAUSE(node) ""
#endif

static bool backend_prealloc_warn = false;

// returns the backend that should be used for the node based on the current locations
static int ggml_backend_sched_backend_id_from_cur(ggml_backend_sched_t sched, struct ggml_tensor * tensor) {
// TODO: use supports_op to check if the backend supports the op
Expand All @@ -1196,7 +1198,11 @@ static int ggml_backend_sched_backend_id_from_cur(ggml_backend_sched_t sched, st

if (tensor->buffer || (tensor->view_src && tensor->view_src->buffer)) {
// since the tensor is pre-allocated, it cannot be moved to another backend
GGML_ABORT("pre-allocated tensor in a backend that cannot run the operation");
if(!backend_prealloc_warn)
{
backend_prealloc_warn = true;
printf("\nCaution: pre-allocated tensor in a backend that cannot run the operation\n");
}
}

// graph input
Expand Down
4 changes: 2 additions & 2 deletions koboldcpp.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
modelbusy = threading.Lock()
requestsinqueue = 0
defaultport = 5001
KcppVersion = "1.75"
KcppVersion = "1.75.1"
showdebug = True
guimode = False
showsamplerwarning = True
Expand Down Expand Up @@ -4038,7 +4038,7 @@ def main(launch_args,start_server=True):
print(f"MacOS detected: Auto GPU layers set to maximum")
args.gpulayers = 200
elif not shouldavoidgpu and args.model_param and os.path.exists(args.model_param):
if not args.usecublas and (args.usevulkan is None) and not args.useclblast:
if (args.usecublas is None) and (args.usevulkan is None) and (args.useclblast is None):
print("No GPU or CPU backend was selected. Trying to assign one for you automatically...")
auto_set_backend_cli()
if MaxMemory[0] == 0: #try to get gpu vram for cuda if not picked yet
Expand Down

0 comments on commit 229108f

Please sign in to comment.