// Formulae to compute derived counters from raw counter values

function GpuTime()
{
    return GpuTimeMD;
}

function GpuCoreClocks()
{
    return GpuCoreClocksMD;
}

function AvgGpuCoreFrequencyMHz()
{
    return AvgGpuCoreFrequencyMHzMD;
}

function GpuBusy()
{
    return GpuBusyMD;
}

function VsThreads()
{
    return VsThreadsMD;
}

function HsThreads()
{
    return HsThreadsMD;
}

function DsThreads()
{
    return DsThreadsMD;
}

function GsThreads()
{
    return GsThreadsMD;
}

function PsThreads()
{
    return PsThreadsMD;
}

function CsThreads()
{
    return CsThreadsMD;
}

function EuActive()
{
    return EuActiveMD;
}

function EuStall()
{
    return EuStallMD;
}

function EuFpuBothActive()
{
    return EuFpuBothActiveMD;
}

function VsFpu0Active()
{
    return VsFpu0ActiveMD;
}

function VsFpu1Active()
{
    return VsFpu1ActiveMD;
}

function VsSendActive()
{
    return VsSendActiveMD;
}

function VsEuActive()
{
    return VsEuActiveMD;
}

function VsEuActivePerThread()
{
    return VsEuActivePerThreadMD;
}

function VsEuStall()
{
    return VsEuStallMD;
}

function VsEuStallPerThread()
{
    return VsEuStallPerThreadMD;
}

function PsFpu0Active()
{
    return PsFpu0ActiveMD;
}

function PsFpu1Active()
{
    return PsFpu1ActiveMD;
}

function PsSendActive()
{
    return PsSendActiveMD;
}

function PsEuBothFpuActive()
{
    return PsEuBothFpuActiveMD;
}

function PsEuActive()
{
    return PsEuActiveMD;
}

function PsEuActivePerThread()
{
    return PsEuActivePerThreadMD;
}

function PsEuStall()
{
    return PsEuStallMD;
}

function PsEuStallPerThread()
{
    return PsEuStallPerThreadMD;
}

function RasterizedPixels()
{
    return RasterizedPixelsMD;
}

function HiDepthTestFails()
{
    return HiDepthTestFailsMD;
}

function EarlyDepthTestFails()
{
    return EarlyDepthTestFailsMD;
}

function SamplesKilledInPs()
{
    return SamplesKilledInPsMD;
}

function PixelsFailingPostPsTests()
{
    return PixelsFailingPostPsTestsMD;
}

function SamplesWritten()
{
    return SamplesWrittenMD;
}

function SamplesBlended()
{
    return SamplesBlendedMD;
}

function SamplerTexels()
{
    return SamplerTexelsMD;
}

function SamplerTexelMisses()
{
    return SamplerTexelMissesMD;
}

function SlmBytesRead()
{
    return SlmBytesReadMD;
}

function SlmBytesWritten()
{
    return SlmBytesWrittenMD;
}

function ShaderMemoryAccesses()
{
    return ShaderMemoryAccessesMD;
}

function ShaderAtomics()
{
    return ShaderAtomicsMD;
}

function L3ShaderThroughput()
{
    return L3ShaderThroughputMD;
}

function ShaderBarriers()
{
    return ShaderBarriersMD;
}

function L30Bank0Stalled()
{
    return L30Bank0StalledMD;
}

function L30Bank1Stalled()
{
    return L30Bank1StalledMD;
}

function L30Bank1Active()
{
    return L30Bank1ActiveMD;
}

function L30Bank0Active()
{
    return L30Bank0ActiveMD;
}

function GTRequestQueueFull()
{
    return GTRequestQueueFullMD;
}

