Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sycl-exp : Enabled more data types for oneMKL's gemm_batch API #8182

Conversation

OuadiElfarouki
Copy link
Collaborator

Additional gemm_batch types have been enabled in oneMKL (oneapi-src/oneMKL#466) and this patch enables their corresponding APIs for the SYCL backend which eliminates the extra-steps needed when targetting non intel devices to cast/adapt input/output to the supported types.

The enablement of gemm_batch_impl<sycl::half, sycl::half, float, float> for instance removes the overhead of calling gemm_batch_impl<sycl::half, sycl::half, sycl::half, sycl::half> followed by a to_fp32_sycl for the dst to be copied back from fp16 to fp32, which directly affects the KQ + KQV multi-batch path in quantized models Prompt Processing for instance.

@github-actions github-actions bot added the SYCL https://en.wikipedia.org/wiki/SYCL - GPU programming language label Jun 28, 2024
@joeatodd
Copy link
Collaborator

Looks good @OuadiElfarouki. I'll hold off giving a 👍 until someone from the Intel side can take a look. @airMeng I don't think this will affect you guys but would be good to check.

@joeatodd
Copy link
Collaborator

Looks good @OuadiElfarouki. I'll hold off giving a 👍 until someone from the Intel side can take a look. @airMeng I don't think this will affect you guys but would be good to check.

ha, @OuadiElfarouki I forgot this is to codeplay/sycl-main... I will approve it now

Copy link
Collaborator

@joeatodd joeatodd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. @airMeng we will ping you guys again when we raise this PR to master

@OuadiElfarouki OuadiElfarouki merged commit 250e790 into ggerganov:codeplay/sycl-main Jun 28, 2024
64 of 65 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
SYCL https://en.wikipedia.org/wiki/SYCL - GPU programming language
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants