Use c compiler for opencl files
This commit is contained in:
parent
2b0c6a56f9
commit
b746458281
2 changed files with 7 additions and 7 deletions
2
Makefile
2
Makefile
|
@ -118,7 +118,7 @@ ifdef LLAMA_CLBLAST
|
||||||
LDFLAGS += -lclblast -lOpenCL
|
LDFLAGS += -lclblast -lOpenCL
|
||||||
OBJS += ggml-opencl.o
|
OBJS += ggml-opencl.o
|
||||||
ggml-opencl.o: ggml-opencl.c ggml-opencl.h
|
ggml-opencl.o: ggml-opencl.c ggml-opencl.h
|
||||||
$(CXX) $(CXXFLAGS) -c $< -o $@
|
$(CC) $(CFLAGS) -c $< -o $@
|
||||||
endif
|
endif
|
||||||
ifdef LLAMA_GPROF
|
ifdef LLAMA_GPROF
|
||||||
CFLAGS += -pg
|
CFLAGS += -pg
|
||||||
|
|
|
@ -29,35 +29,35 @@ cl_mem cl_buffer_a, cl_buffer_qb, cl_buffer_b, cl_buffer_c;
|
||||||
size_t cl_size_a = 0, cl_size_qb = 0, cl_size_b = 0, cl_size_c = 0;
|
size_t cl_size_a = 0, cl_size_qb = 0, cl_size_b = 0, cl_size_c = 0;
|
||||||
|
|
||||||
cl_program build_program_from_source(cl_context ctx, cl_device_id dev, const char* program_buffer) {
|
cl_program build_program_from_source(cl_context ctx, cl_device_id dev, const char* program_buffer) {
|
||||||
cl_program program;
|
cl_program p;
|
||||||
char *program_log;
|
char *program_log;
|
||||||
size_t program_size, log_size;
|
size_t program_size, log_size;
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
program_size = strlen(program_buffer);
|
program_size = strlen(program_buffer);
|
||||||
|
|
||||||
program = clCreateProgramWithSource(ctx, 1,
|
p = clCreateProgramWithSource(ctx, 1,
|
||||||
(const char**)&program_buffer, &program_size, &err);
|
(const char**)&program_buffer, &program_size, &err);
|
||||||
if(err < 0) {
|
if(err < 0) {
|
||||||
fprintf(stderr, "OpenCL error creating program");
|
fprintf(stderr, "OpenCL error creating program");
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
err = clBuildProgram(program, 0, NULL, NULL, NULL, NULL);
|
err = clBuildProgram(p, 0, NULL, NULL, NULL, NULL);
|
||||||
if(err < 0) {
|
if(err < 0) {
|
||||||
|
|
||||||
clGetProgramBuildInfo(program, dev, CL_PROGRAM_BUILD_LOG,
|
clGetProgramBuildInfo(p, dev, CL_PROGRAM_BUILD_LOG,
|
||||||
0, NULL, &log_size);
|
0, NULL, &log_size);
|
||||||
program_log = (char*) malloc(log_size + 1);
|
program_log = (char*) malloc(log_size + 1);
|
||||||
program_log[log_size] = '\0';
|
program_log[log_size] = '\0';
|
||||||
clGetProgramBuildInfo(program, dev, CL_PROGRAM_BUILD_LOG,
|
clGetProgramBuildInfo(p, dev, CL_PROGRAM_BUILD_LOG,
|
||||||
log_size + 1, program_log, NULL);
|
log_size + 1, program_log, NULL);
|
||||||
printf("%s\n", program_log);
|
printf("%s\n", program_log);
|
||||||
free(program_log);
|
free(program_log);
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
return program;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ggml_cl_init(void) {
|
void ggml_cl_init(void) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue