#include <KernelGen.h>
Public 属性 | |
| std::string | pass1 |
| std::string | pass2 |
| int | groupsX1 = 0 |
| int | groupsY1 = 1 |
| int | groupsZ1 = 1 |
| int | groupsX2 = 0 |
| int | groupsY2 = 1 |
| int | groupsZ2 = 1 |
| int | inputCount = 0 |
| int | inputsReadPass1 = 0 |
| int | statsCount = 0 |
| int | statsSize = 0 |
| bool | twoPass = false |
| int | qDtype = 0 |
| int | qGroup = 0 |
| int | scalesBinding = -1 |
| int | outputBinding = -1 |
详细描述
A generated, fully specialized compute kernel (AITemplate-style codegen).
Shapes are baked into the GLSL as constants; the only runtime inputs are the storage buffers themselves, so a CompiledFunction is a static executable program with no per-dispatch shape computation.
Binding layout:
- single-pass kernels: inputs 0..k-1, output binding k;
- two-pass kernels (softmax / layernorm / rmsnorm): pass1 binds the first
inputsReadPass1inputs +statsCountstats buffers; pass2 binds all inputs + stats + the output as the last binding.
在文件 KernelGen.h 第 24 行定义.
类成员变量说明
◆ groupsX1
| int eve::tensor::KernelSpec::groupsX1 = 0 |
在文件 KernelGen.h 第 27 行定义.
◆ groupsX2
| int eve::tensor::KernelSpec::groupsX2 = 0 |
在文件 KernelGen.h 第 28 行定义.
被这些函数引用 eve::tensor::GpuProgram::Impl::recordGroup() , 以及 eve::tensor::GpuProgram::tryBuild().
◆ groupsY1
| int eve::tensor::KernelSpec::groupsY1 = 1 |
在文件 KernelGen.h 第 27 行定义.
◆ groupsY2
| int eve::tensor::KernelSpec::groupsY2 = 1 |
在文件 KernelGen.h 第 28 行定义.
被这些函数引用 eve::tensor::GpuProgram::Impl::recordGroup() , 以及 eve::tensor::GpuProgram::tryBuild().
◆ groupsZ1
| int eve::tensor::KernelSpec::groupsZ1 = 1 |
在文件 KernelGen.h 第 27 行定义.
◆ groupsZ2
| int eve::tensor::KernelSpec::groupsZ2 = 1 |
在文件 KernelGen.h 第 28 行定义.
◆ inputCount
| int eve::tensor::KernelSpec::inputCount = 0 |
在文件 KernelGen.h 第 29 行定义.
◆ inputsReadPass1
| int eve::tensor::KernelSpec::inputsReadPass1 = 0 |
在文件 KernelGen.h 第 30 行定义.
◆ outputBinding
| int eve::tensor::KernelSpec::outputBinding = -1 |
在文件 KernelGen.h 第 40 行定义.
◆ pass1
| std::string eve::tensor::KernelSpec::pass1 |
在文件 KernelGen.h 第 25 行定义.
被这些函数引用 eve::tensor::GpuProgram::tryBuild().
◆ pass2
| std::string eve::tensor::KernelSpec::pass2 |
在文件 KernelGen.h 第 26 行定义.
被这些函数引用 eve::tensor::GpuProgram::tryBuild().
◆ qDtype
| int eve::tensor::KernelSpec::qDtype = 0 |
在文件 KernelGen.h 第 37 行定义.
◆ qGroup
| int eve::tensor::KernelSpec::qGroup = 0 |
在文件 KernelGen.h 第 38 行定义.
◆ scalesBinding
| int eve::tensor::KernelSpec::scalesBinding = -1 |
在文件 KernelGen.h 第 39 行定义.
◆ statsCount
| int eve::tensor::KernelSpec::statsCount = 0 |
在文件 KernelGen.h 第 31 行定义.
被这些函数引用 eve::tensor::GpuProgram::Impl::bindGroup() , 以及 eve::tensor::GpuProgram::tryBuild().
◆ statsSize
| int eve::tensor::KernelSpec::statsSize = 0 |
在文件 KernelGen.h 第 32 行定义.
被这些函数引用 eve::tensor::GpuProgram::tryBuild().
◆ twoPass
| bool eve::tensor::KernelSpec::twoPass = false |
该结构体的文档由以下文件生成:
- src/modules/tensor/KernelGen.h