|
Developer Documentation
|
#include <GPUCacheOptimizer.hh>
Public Member Functions | |
| GPUCacheEfficiencyTester (unsigned int NumTris, unsigned int NumVerts, unsigned int IndexSize, const void *pIndices) | |
Public Member Functions inherited from ACG::GPUCacheOptimizer | |
| GPUCacheOptimizer (unsigned int NumTris, unsigned int NumVerts, unsigned int IndexSize, const void *pIndices) | |
| constructor | |
| const unsigned int * | GetTriangleMap () const |
| Retrieves the map from dst triangle to src triangle. how to remap: for each triangle t in DstTriBuffer DstTriBuffer[t] = SrcTriBuffer[TriangleMap[t]]. | |
| void | WriteIndexBuffer (unsigned int DstIndexSize, void *pDst) |
| Applies the remapping on the initial pIndices constructor's param and stores the result in the given destination buffer. | |
| unsigned int | ComputeNumberOfVertexTransformations (unsigned int VertexCacheSize=16) |
| Returns the total number of vertex transforms performed with a certain VertexCache. | |
| float | ComputeACMR (unsigned int VertexCacheSize=16) |
| Measures the efficiency use of the vertex cache. ACMR: Average Cache Miss Ratio. | |
| float | ComputeATVR (unsigned int VertexCacheSize=16) |
| Measures the efficiency use of the vertex cache. ATVR: Average Transform to Vertex Ratio similar to ACMR, but easier to interpret the optimal value is 1.0 given a mesh w/o duplicate vertices. | |
Private Member Functions | |
| void | MakeAbstract () |
Additional Inherited Members | |
Static Public Member Functions inherited from ACG::GPUCacheOptimizer | |
| static void | OptimizeVertices (unsigned int NumTris, unsigned int NumVerts, unsigned int IndexSize, const void *pIndices, unsigned int *pVertMap) |
| Reorders vertex buffer to minimize memory address jumps. | |
| static void | RemapVertices (unsigned int NumTris, unsigned int NumVerts, const unsigned int *pVertMap, unsigned int IndexSize, void *pInOutIndices, unsigned int VertexStride, void *pInOutVertices) |
| Applies the remap table of OptimizeVertices to a vertex and index buffer. | |
Protected Member Functions inherited from ACG::GPUCacheOptimizer | |
| unsigned int | GetIndex (unsigned int i) const |
Static Protected Member Functions inherited from ACG::GPUCacheOptimizer | |
| static unsigned int | GetIndex (unsigned int i, unsigned int IndexSize, const void *pIB) |
| static void | SetIndex (unsigned int i, unsigned int val, unsigned int IndexSize, void *pIB) |
Protected Attributes inherited from ACG::GPUCacheOptimizer | |
| unsigned int | m_NumVerts |
| unsigned int | m_NumTris |
| unsigned int * | m_pTriMap |
simple class providing ATVR and ACMR computations w/o any optimizing
Definition at line 344 of file GPUCacheOptimizer.hh.
| ACG::GPUCacheEfficiencyTester::GPUCacheEfficiencyTester | ( | unsigned int | NumTris, |
| unsigned int | NumVerts, | ||
| unsigned int | IndexSize, | ||
| const void * | pIndices | ||
| ) |
Definition at line 511 of file GPUCacheOptimizer.cc.
|
inlineprivatevirtual |
Implements ACG::GPUCacheOptimizer.
Definition at line 350 of file GPUCacheOptimizer.hh.