clean up metal code
This commit is contained in:
parent
8dda9293fa
commit
a29851bc9b
@ -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
23
llama/llama_darwin.go
Normal 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))))
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user