@@ -494,12 +494,6 @@ static __dpct_inline__ Tp* get_pointer(sycl::local_accessor<Tp, dim> acc) {
494
494
495
495
int64_t downsample_sycl_global_range (int64_t accumulate_block_num, int64_t block_size);
496
496
497
- typedef void (*ggml_sycl_op_flatten_t )(ggml_backend_sycl_context & ctx, const ggml_tensor *src0,
498
- const ggml_tensor *src1,
499
- ggml_tensor *dst, const float *src0_dd,
500
- const float *src1_dd, float *dst_dd,
501
- const queue_ptr &main_stream);
502
-
503
497
template <float (*bin_op)(const float , const float ), typename src0_t , typename src1_t , typename dst_t >
504
498
static void k_bin_bcast (const src0_t * src0, const src1_t * src1, dst_t * dst,
505
499
int ne0, int ne1, int ne2, int ne3,
@@ -757,24 +751,23 @@ struct bin_bcast_sycl {
757
751
758
752
template <class op >
759
753
inline void ggml_sycl_op_bin_bcast (ggml_backend_sycl_context & ctx, const ggml_tensor *src0,
760
- const ggml_tensor *src1, ggml_tensor *dst,
761
- const float *src0_dd, const float *src1_dd,
762
- float *dst_dd,
763
- const queue_ptr &main_stream) {
754
+ const ggml_tensor *src1, ggml_tensor *dst) {
755
+ /* TODO: Refactor bbincast */
756
+ dpct::queue_ptr main_stream = ctx.stream ();
764
757
765
758
if (src0->type == GGML_TYPE_F32 && dst->type == GGML_TYPE_F32) {
766
- op ()(ctx, src0, src1, dst, src0_dd, src1_dd, dst_dd , main_stream);
759
+ op ()(ctx, src0, src1, dst, ( const float *)src0-> data , ( const float *)src1-> data , ( float *)dst-> data , main_stream);
767
760
} else if (src0->type == GGML_TYPE_F16 && dst->type == GGML_TYPE_F16) {
768
- op ()(ctx, src0, src1, dst, (const sycl::half *)src0_dd, src1_dd ,
769
- (sycl::half *)dst_dd , main_stream);
761
+ op ()(ctx, src0, src1, dst, (const sycl::half *)src0-> data , ( const float *)src1-> data ,
762
+ (sycl::half *)dst-> data , main_stream);
770
763
} else if (src0->type == GGML_TYPE_F16 && dst->type == GGML_TYPE_F32) {
771
- op ()(ctx, src0, src1, dst, (const sycl::half *)src0_dd, src1_dd, dst_dd ,
764
+ op ()(ctx, src0, src1, dst, (const sycl::half *)src0-> data , ( const float *)src1-> data , ( float *)dst-> data ,
772
765
main_stream);
773
766
} else if (src0->type == GGML_TYPE_I32 && dst->type == GGML_TYPE_I32) {
774
- op ()(ctx, src0, src1, dst, (const int32_t *)src0_dd , (const int32_t *)src1_dd , (int32_t *)dst_dd ,
767
+ op ()(ctx, src0, src1, dst, (const int32_t *)src0-> data , (const int32_t *)src1-> data , (int32_t *)dst-> data ,
775
768
main_stream);
776
769
} else if (src0->type == GGML_TYPE_I16 && dst->type == GGML_TYPE_I16) {
777
- op ()(ctx, src0, src1, dst, (const int16_t *)src0_dd , (const int16_t *)src1_dd , (int16_t *)dst_dd ,
770
+ op ()(ctx, src0, src1, dst, (const int16_t *)src0-> data , (const int16_t *)src1-> data , (int16_t *)dst-> data ,
778
771
main_stream);
779
772
} else {
780
773
fprintf (stderr, " %s: unsupported types: dst: %s, src0: %s, src1: %s\n " , __func__,
@@ -784,8 +777,4 @@ inline void ggml_sycl_op_bin_bcast(ggml_backend_sycl_context & ctx, const ggml_t
784
777
}
785
778
786
779
bool gpu_has_xmx (sycl::device &dev);
787
-
788
- void ggml_sycl_op_flatten (ggml_backend_sycl_context & ctx, const ggml_tensor *src0,
789
- const ggml_tensor *src1, ggml_tensor *dst,
790
- const ggml_sycl_op_flatten_t op);
791
780
#endif // GGML_SYCL_COMMON_HPP
0 commit comments