char-fork/llama.cpp

git clone https://git.t4t.associates/char-fork/llama.cpp

Titaniumtownsycl: fuse UNARY(silu|sigmoid|softplus) + MUL (#26411)1ee1cd9bc

char/aliceai-t5-moe
787 B17 linesraw
1#ifndef GGML_SYCL_FUSION_HPP
2#define GGML_SYCL_FUSION_HPP
3
4#include <initializer_list>
5
6#include "common.hpp"
7
8// Backend-side fusability test. `ops` names a candidate op sequence starting at cgraph node
9// `node_idx`, and `unary_ops` the GGML_UNARY_OP each GGML_OP_UNARY in `ops` must carry, in
10// order; the result is true only if ggml considers that subgraph fusable *and* the SYCL
11// kernel which would service it accepts the tensors involved (types, shapes, contiguity).
12//
13// Lives in its own translation unit because it grows a branch per supported op sequence.
14bool ggml_sycl_can_fuse(const ggml_cgraph * cgraph, int node_idx, std::initializer_list<enum ggml_op> ops,
15                        std::initializer_list<enum ggml_unary_op> unary_ops);
16
17#endif  // GGML_SYCL_FUSION_HPP