Represents a microGPUThe MicroGPU class encapsulates the state and behavior of a microGPU, which consists of multiple compute units (CUs) that execute warps of threads. In this project miroGPU has 16 compute units, each capable of executing one warp at a time. MicroGPU schedules warps from its global warp collection to the compute units and then Compute Units execute the warps in a simple round-robin fashion.
More...
#include <ugpu.hh>
Represents a microGPU
The MicroGPU class encapsulates the state and behavior of a microGPU, which consists of multiple compute units (CUs) that execute warps of threads. In this project miroGPU has 16 compute units, each capable of executing one warp at a time. MicroGPU schedules warps from its global warp collection to the compute units and then Compute Units execute the warps in a simple round-robin fashion.
◆ MicroGPU()
◆ addWarpToGlobalCollection()
| void MicroGPU::addWarpToGlobalCollection |
( |
const Warp & |
warp | ) |
|
◆ allComputeUnitsDone()
| bool MicroGPU::allComputeUnitsDone |
( |
| ) |
const |
◆ allWarpsCompleted()
| bool MicroGPU::allWarpsCompleted |
( |
| ) |
const |
◆ assignWarpToSM()
| void MicroGPU::assignWarpToSM |
( |
int |
smId, |
|
|
const Warp & |
warp |
|
) |
| |
◆ createGlobalWarpCollectionTest()
| void MicroGPU::createGlobalWarpCollectionTest |
( |
| ) |
|
◆ executeComputeUnits()
| void MicroGPU::executeComputeUnits |
( |
| ) |
|
Execute all compute units for one cycle.
◆ executeGPU()
| void MicroGPU::executeGPU |
( |
| ) |
|
Execute the entire GPU until all warps are completed.
◆ getCurrentCycle()
| int MicroGPU::getCurrentCycle |
( |
| ) |
const |
|
inline |
◆ getGlobalWarpCollectionSize()
| int MicroGPU::getGlobalWarpCollectionSize |
( |
| ) |
const |
◆ incrementCycle()
| void MicroGPU::incrementCycle |
( |
| ) |
|
|
inline |
◆ init()
◆ performWarpScheduling()
| void MicroGPU::performWarpScheduling |
( |
| ) |
|
◆ performWarpSchedulingSimple()
| void MicroGPU::performWarpSchedulingSimple |
( |
| ) |
|
◆ printComputeUnitStatus()
| void MicroGPU::printComputeUnitStatus |
( |
| ) |
const |
◆ setMaxCycles()
| void MicroGPU::setMaxCycles |
( |
int |
cycles | ) |
|
|
inline |
◆ computeUnit
◆ currentCycle
| int MicroGPU::currentCycle |
|
private |
◆ globalWarpCollection
| std::vector<Warp> MicroGPU::globalWarpCollection |
|
private |
◆ maxCycles
The documentation for this class was generated from the following files: