char-fork/llama.cpp

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

Neo Zhang[SYCL] Optimize Q4_0 mul_mat for Arc770, add scripts (#22291)eddd7a13a

char/aliceai-t5-moe
987 B38 linesraw
1#ifndef SYCL_HW_HPP
2#define SYCL_HW_HPP
3
4#include <algorithm>
5#include <stdio.h>
6#include <vector>
7#include <map>
8
9#include <sycl/sycl.hpp>
10
11namespace syclex = sycl::ext::oneapi::experimental;
12using gpu_arch = sycl::ext::oneapi::experimental::architecture;
13
14// It's used to mark the GPU computing capacity
15// The value must flow the order of performance.
16enum sycl_intel_gpu_family {
17  GPU_FAMILY_UKNOWN = -1,
18  // iGPU without Xe core, before Meteor Lake iGPU(Xe)
19  GPU_FAMILY_IGPU_NON_XE = 0,
20  // iGPU with Xe core, Meteor Lake iGPU or newer.
21  GPU_FAMILY_IGPU_XE = 1,
22  // dGPU for gaming in client/data center (DG1/FLex 140 or newer).
23  GPU_FAMILY_DGPU_CLIENT_GAME = 2,
24  // dGPU for AI in cloud, PVC or newer.
25  GPU_FAMILY_DGPU_CLOUD = 3
26};
27
28struct sycl_hw_info {
29  syclex::architecture arch;
30  const char* arch_name;
31  int32_t device_id;
32  std::string name;
33  sycl_intel_gpu_family gpu_family;
34};
35
36sycl_hw_info get_device_hw_info(sycl::device *device_ptr);
37
38#endif // SYCL_HW_HPP