metal : support default.metallib load & reuse code for swift package #3522
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I'm doing the same thing as I do in ggerganov/whisper.cpp#1293 (review), this allows it to load compiled default.metallib, and use the source as a fallback.
For easier test by command, we can use
xcrun -sdk macosx metal ggml-metal.metal
to compiledefault.metallib
, and run./main
.I use
SWIFTPM_MODULE_BUNDLE
to get bundle for swift package, so we can merge the code on both sides.