Fix: Add BF16 conversion support for oneAPI SYCL backend #1043
+1
−1
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.
When running FLUX2-dev on Intel GPU with oneAPI SYCL backend, I got this error:
The issue is that
ggml_get_to_fp32_sycl()and related functions were missing BF16 conversion cases. Added the missing BF16 support inggml/src/ggml-sycl/convert.cpp(Intel oneAPI only, guarded by__INTEL_LLVM_COMPILER).Tested with flux2-dev-Q2_K.gguf and flux2-dev-Q4_0.gguf, both fp16 and fp32 build options - all working now.
Note: The actual code changes are in the ggml submodule.
View the changes here: yingying0906/ggml@75b092ba
Or see the branch: https://github.com/yingying0906/ggml/tree/fix-sycl-bf16