char-fork/llama.cpp
git clone https://git.t4t.associates/char-fork/llama.cpp
6b5c2efb4
char/aliceai-t5-moe
1// 2// MIT license 3// Copyright (C) 2024 Intel Corporation 4// SPDX-License-Identifier: MIT 5// 6 7// 8// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 9// See https://llvm.org/LICENSE.txt for license information. 10// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 11// 12 13#ifndef GGML_SYCL_PRESETS_HPP 14#define GGML_SYCL_PRESETS_HPP 15 16#define GGML_SYCL_MAX_STREAMS 8 17#define GGML_SYCL_MAX_BUFFERS 256 18 19#define WARP_SIZE GGML_SYCL_WARP_SIZE 20#define MATRIX_ROW_PADDING 512 // last row of quant. matrices is a multiple of this to avoid out-of-bounds memory accesses 21 22#define SYCL_COL2IM_1D_BLOCK_SIZE 256 23#define SYCL_TANH_BLOCK_SIZE 256 24#define SYCL_RELU_BLOCK_SIZE 256 25#define SYCL_HARDSIGMOID_BLOCK_SIZE 256 26#define SYCL_HARDSWISH_BLOCK_SIZE 256 27#define SYCL_EXP_BLOCK_SIZE 256 28#define SYCL_NEG_BLOCK_SIZE 256 29#define SYCL_SIGMOID_BLOCK_SIZE 256 30#define SYCL_SQRT_BLOCK_SIZE 256 31#define SYCL_SIN_BLOCK_SIZE 256 32#define SYCL_SQR_BLOCK_SIZE 256 33#define SYCL_SET_BLOCK_SIZE 256 34#define SYCL_CPY_BLOCK_SIZE 32 35#define SYCL_SCALE_BLOCK_SIZE 256 36#define SYCL_CLAMP_BLOCK_SIZE 256 37#define SYCL_ROPE_BLOCK_SIZE 256 38#define SYCL_ALIBI_BLOCK_SIZE 32 39#define SYCL_DIAG_MASK_INF_BLOCK_SIZE 32 40#define SYCL_QUANTIZE_BLOCK_SIZE 256 41#define SYCL_DEQUANTIZE_BLOCK_SIZE 256 42#define SYCL_GET_ROWS_BLOCK_SIZE 256 43#define SYCL_UPSCALE_BLOCK_SIZE 256 44#define SYCL_CONCAT_BLOCK_SIZE 256 45#define SYCL_PAD_BLOCK_SIZE 256 46#define SYCL_ACC_BLOCK_SIZE 256 47#define SYCL_IM2COL_BLOCK_SIZE 256 48#define SYCL_POOL1D_BLOCK_SIZE 256 49#define SYCL_POOL2D_BLOCK_SIZE 256 50#define SYCL_ARGMAX_BLOCK_SIZE 256 51#define SYCL_CONV_TRANPOSE_1D_BLOCK_SIZE 256 52#define SYCL_TIMESTEP_EMBEDDING_BLOCK_SIZE 256 53#define SYCL_ARANGE_BLOCK_SIZE 256 54 55// dmmv = dequantize_mul_mat_vec 56#ifndef GGML_SYCL_DMMV_X 57#define GGML_SYCL_DMMV_X 32 58#endif 59#ifndef GGML_SYCL_MMV_Y 60#define GGML_SYCL_MMV_Y 1 61#endif 62 63#ifndef K_QUANTS_PER_ITERATION 64#define K_QUANTS_PER_ITERATION 1 65#else 66static_assert(K_QUANTS_PER_ITERATION == 1 || K_QUANTS_PER_ITERATION == 2 ,"K_QUANTS_PER_ITERATION must be 1 or 2" ); 67#endif 68 69#ifndef GGML_SYCL_PEER_MAX_BATCH_SIZE 70#define GGML_SYCL_PEER_MAX_BATCH_SIZE 128 71#endif // GGML_SYCL_PEER_MAX_BATCH_SIZE 72 73#define MUL_MAT_SRC1_COL_STRIDE 128 74 75#define QK_WARP_SIZE 32 76#define WARP_32_SIZE 32 77#define WARP_16_SIZE 16 78 79#endif // GGML_SYCL_PRESETS_HPP