gpu-compute,dev-hsa: Update CP and HSAPP for full-system
Make the necessary changes to connect Vega pagetable walkers for full-system mode. Previously the CP and HSA packet processor could only read AQL packets from system/host memory using proxy port. This allows for AQL to be read from device memory which is used for non-blit kernels. Change-Id: If28eb8be68173da03e15084765e77e92eda178e9 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53077 Reviewed-by: Matt Sinclair <mattdsinclair@gmail.com> Maintainer: Matt Sinclair <mattdsinclair@gmail.com> Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
@@ -33,9 +33,11 @@
|
||||
|
||||
#include <cassert>
|
||||
|
||||
#include "arch/amdgpu/vega/pagetable_walker.hh"
|
||||
#include "base/chunk_generator.hh"
|
||||
#include "debug/GPUCommandProc.hh"
|
||||
#include "debug/GPUKernelInfo.hh"
|
||||
#include "dev/amdgpu/amdgpu_device.hh"
|
||||
#include "gpu-compute/dispatcher.hh"
|
||||
#include "mem/se_translating_port_proxy.hh"
|
||||
#include "mem/translating_port_proxy.hh"
|
||||
@@ -50,7 +52,7 @@ namespace gem5
|
||||
|
||||
GPUCommandProcessor::GPUCommandProcessor(const Params &p)
|
||||
: DmaVirtDevice(p), dispatcher(*p.dispatcher), _driver(nullptr),
|
||||
hsaPP(p.hsapp)
|
||||
walker(p.walker), hsaPP(p.hsapp)
|
||||
{
|
||||
assert(hsaPP);
|
||||
hsaPP->setDevice(this);
|
||||
@@ -356,6 +358,13 @@ GPUCommandProcessor::getAddrRanges() const
|
||||
return ranges;
|
||||
}
|
||||
|
||||
void
|
||||
GPUCommandProcessor::setGPUDevice(AMDGPUDevice *gpu_device)
|
||||
{
|
||||
gpuDevice = gpu_device;
|
||||
walker->setDevRequestor(gpuDevice->vramRequestorId());
|
||||
}
|
||||
|
||||
void
|
||||
GPUCommandProcessor::setShader(Shader *shader)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user