clean up metal code

This commit is contained in:
jmorganca 2024-06-15 10:06:36 -07:00
parent 8dda9293fa
commit a29851bc9b
3 changed files with 23 additions and 15 deletions

View File

@ -37,8 +37,6 @@ package llama
#include "sampling_ext.h"
bool llamaProgressCallback(float progress, void *user_data);
extern const char *ggml_metallib_start;
extern const char *ggml_metallib_end;
*/
import "C"
import (
@ -51,19 +49,6 @@ import (
"unsafe"
)
//go:embed ggml-common.h
var ggmlCommon string
//go:embed ggml-metal.metal
var ggmlMetal string
func init() {
metal := strings.ReplaceAll(ggmlMetal, `#include "ggml-common.h"`, ggmlCommon)
cMetal := C.CString(metal)
C.ggml_metallib_start = cMetal
C.ggml_metallib_end = (*C.char)(unsafe.Pointer(uintptr(unsafe.Pointer(cMetal)) + uintptr(len(metal))))
}
func BackendInit() {
C.llama_backend_init()
}

23
llama/llama_darwin.go Normal file
View File

@ -0,0 +1,23 @@
package llama
// extern const char *ggml_metallib_start;
// extern const char *ggml_metallib_end;
import "C"
import (
_ "embed"
"strings"
"unsafe"
)
//go:embed ggml-common.h
var ggmlCommon string
//go:embed ggml-metal.metal
var ggmlMetal string
func init() {
metal := strings.ReplaceAll(ggmlMetal, `#include "ggml-common.h"`, ggmlCommon)
cMetal := C.CString(metal)
C.ggml_metallib_start = cMetal
C.ggml_metallib_end = (*C.char)(unsafe.Pointer(uintptr(unsafe.Pointer(cMetal)) + uintptr(len(metal))))
}