char-fork/llama.cpp

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

Jaden_MachCUDA: route batch>=4 quantized matmul to MMQ on AMD MFMA hardware (#23227)bc81d47ab

char/aliceai-t5-moe
988 B18 linesraw
1#include "common.cuh"
2
3#define MMVQ_MAX_BATCH_SIZE 8 // Max. batch size for which to use MMVQ kernels.
4
5bool ggml_cuda_should_use_mmvq(enum ggml_type type, int cc, int64_t ne11);
6
7// Returns the maximum batch size for which MMVQ should be used for MUL_MAT_ID,
8// based on the quantization type and GPU architecture (compute capability).
9int get_mmvq_mmid_max_batch(ggml_type type, int cc);
10
11void ggml_cuda_mul_mat_vec_q(ggml_backend_cuda_context & ctx,
12    const ggml_tensor * src0, const ggml_tensor * src1, const ggml_tensor * ids, ggml_tensor * dst, const ggml_cuda_mm_fusion_args_host * fusion = nullptr);
13
14void ggml_cuda_op_mul_mat_vec_q(
15    ggml_backend_cuda_context & ctx,
16    const ggml_tensor * src0, const ggml_tensor * src1, ggml_tensor * dst, const char * src0_dd_i, const float * src1_ddf_i,
17    const char * src1_ddq_i, float * dst_dd_i, const int64_t row_low, const int64_t row_high, const int64_t src1_ncols,
18    const int64_t src1_padded_row_size, cudaStream_t stream);