类 | |
| struct | GroupRuntime |
Public 成员函数 | |
| gpgpu::GpuBuffer * | alloc (int byteSize) |
| void | bindGroup (const GroupRuntime &g) const |
| void | recordGroup (const GroupRuntime &g, gpgpu::Sequence *seq) const |
Public 属性 | |
| gpgpu::Gpgpu * | gpgpu = nullptr |
| std::vector< GroupRuntime > | groups |
| std::vector< gpgpu::GpuBuffer * > | slotBuffer |
| std::vector< gpgpu::GpuBuffer * > | placeholderBuffers |
| std::vector< int > | placeholderSizes |
| std::vector< gpgpu::GpuBuffer * > | ownedBuffers |
| std::map< int, gpgpu::GpuBuffer * > | qScalesByNode |
| gpgpu::GpuBuffer * | outputBuffer = nullptr |
| int | outputSize = 0 |
| std::unique_ptr< gpgpu::Sequence > | sequence |
| std::unique_ptr< gpgpu::GpuBuffer > | outputStaging |
详细描述
在文件 GpuBackend.cpp 第 101 行定义.
成员函数说明
◆ alloc()
|
inline |
在文件 GpuBackend.cpp 第 124 行定义.
引用了 gpgpu, eve::gpgpu::Gpgpu::newBuffer() , 以及 ownedBuffers.
◆ bindGroup()
|
inline |
Bind real arena buffers once at build time; bindings persist across runs.
在文件 GpuBackend.cpp 第 131 行定义.
引用了 eve::tensor::KernelSpec::inputCount, eve::tensor::GpuProgram::Impl::GroupRuntime::inputs, eve::tensor::KernelSpec::inputsReadPass1, eve::tensor::GpuProgram::Impl::GroupRuntime::output, eve::tensor::KernelSpec::outputBinding, eve::tensor::GpuProgram::Impl::GroupRuntime::pass1, eve::tensor::GpuProgram::Impl::GroupRuntime::pass2, eve::tensor::GpuProgram::Impl::GroupRuntime::qScales, s, eve::tensor::KernelSpec::scalesBinding, eve::tensor::GpuProgram::Impl::GroupRuntime::spec, eve::tensor::GpuProgram::Impl::GroupRuntime::stats, eve::tensor::KernelSpec::statsCount , 以及 eve::tensor::KernelSpec::twoPass.
◆ recordGroup()
|
inline |
Record all dispatches of one fused group into the shared sequence.
在文件 GpuBackend.cpp 第 156 行定义.
引用了 eve::tensor::KernelSpec::groupsX1, eve::tensor::KernelSpec::groupsX2, eve::tensor::KernelSpec::groupsY1, eve::tensor::KernelSpec::groupsY2, eve::tensor::KernelSpec::groupsZ1, eve::tensor::KernelSpec::groupsZ2, eve::tensor::GpuProgram::Impl::GroupRuntime::pass1, eve::tensor::GpuProgram::Impl::GroupRuntime::pass2, eve::gpgpu::Sequence::recordDispatch(), eve::tensor::GpuProgram::Impl::GroupRuntime::spec , 以及 eve::tensor::KernelSpec::twoPass.
被这些函数引用 eve::tensor::GpuProgram::run().
类成员变量说明
◆ gpgpu
| gpgpu::Gpgpu* eve::tensor::GpuProgram::Impl::gpgpu = nullptr |
在文件 GpuBackend.cpp 第 112 行定义.
被这些函数引用 alloc().
◆ groups
| std::vector<GroupRuntime> eve::tensor::GpuProgram::Impl::groups |
在文件 GpuBackend.cpp 第 113 行定义.
被这些函数引用 eve::tensor::GpuProgram::run().
◆ outputBuffer
| gpgpu::GpuBuffer* eve::tensor::GpuProgram::Impl::outputBuffer = nullptr |
在文件 GpuBackend.cpp 第 119 行定义.
被这些函数引用 eve::tensor::GpuProgram::run().
◆ outputSize
| int eve::tensor::GpuProgram::Impl::outputSize = 0 |
在文件 GpuBackend.cpp 第 120 行定义.
被这些函数引用 eve::tensor::GpuProgram::run().
◆ outputStaging
| std::unique_ptr<gpgpu::GpuBuffer> eve::tensor::GpuProgram::Impl::outputStaging |
在文件 GpuBackend.cpp 第 122 行定义.
被这些函数引用 eve::tensor::GpuProgram::run().
◆ ownedBuffers
| std::vector<gpgpu::GpuBuffer *> eve::tensor::GpuProgram::Impl::ownedBuffers |
在文件 GpuBackend.cpp 第 117 行定义.
被这些函数引用 alloc().
◆ placeholderBuffers
| std::vector<gpgpu::GpuBuffer *> eve::tensor::GpuProgram::Impl::placeholderBuffers |
在文件 GpuBackend.cpp 第 115 行定义.
被这些函数引用 eve::tensor::GpuProgram::run().
◆ placeholderSizes
| std::vector<int> eve::tensor::GpuProgram::Impl::placeholderSizes |
在文件 GpuBackend.cpp 第 116 行定义.
被这些函数引用 eve::tensor::GpuProgram::run().
◆ qScalesByNode
| std::map<int, gpgpu::GpuBuffer *> eve::tensor::GpuProgram::Impl::qScalesByNode |
在文件 GpuBackend.cpp 第 118 行定义.
◆ sequence
| std::unique_ptr<gpgpu::Sequence> eve::tensor::GpuProgram::Impl::sequence |
在文件 GpuBackend.cpp 第 121 行定义.
被这些函数引用 eve::tensor::GpuProgram::run().
◆ slotBuffer
| std::vector<gpgpu::GpuBuffer *> eve::tensor::GpuProgram::Impl::slotBuffer |
在文件 GpuBackend.cpp 第 114 行定义.
该结构体的文档由以下文件生成:
- src/modules/tensor/GpuBackend.cpp