►Nhmlp | |
►Ngemm | |
CxgemmBarrierTask | This task is generated by the top level routine |
CxgemmTask | |
►Ngofmm | |
►Ngpu | |
CLeavesToLeavesVer2Task | |
CCacheNearNodesTask | Task wrapper for CacheNearNodes() |
Ccentersplit | This the main splitter used to build the Spd-Askit tree. First compute the approximate center using subsamples. Then find the two most far away points to do the projection |
CCommandLineHelper | This is a helper class that parses the arguments from command lines |
CConfiguration | Configuration contains all user-defined parameters |
CFactor | |
CFactorizeTask | |
CInterpolateTask | The correponding task of Interpolate() |
CLeavesToLeavesTask | |
CMatrixPermuteTask | Doward traversal to create matrix views, at the leaf level execute explicit permutation |
CNearSamplesTask | |
CNeighborsTask | |
CNodeData | This class contains all GOFMM related data carried by a tree node |
Crandomsplit | This the splitter used in the randomized tree |
CSetup | These are data that shared by the whole local tree |
CSetupFactorTask | |
CSimpleGOFMM | |
CSkeletonizeTask | |
CSkeletonKIJTask | |
CSkeletonsToNodesTask | |
CSkeletonsToSkeletonsTask | There is no dependency between each task. However there are raw (read after write) dependencies: |
CSolverTreeViewTask | Creates an hierarchical tree view for a matrix |
CSolveTask | |
CSummary | Provide statistics summary for the execution section |
CTreeViewTask | This task creates an hierarchical tree view for w<RIDS> and u<RIDS> |
CULVBackwardSolveTask | |
CULVForwardSolveTask | |
CUpdateWeightsTask | |
►Ngpu | |
CNvidia | |
►Nmodel | |
CClassification | |
CRegression | |
CVirtualModel | |
►Nmpi | |
CMPIObject | |
CNumberIntPair | |
►Nmpigofmm | |
CCacheFarNodesTask | |
CCacheNearNodesTask | |
Ccentersplit | This the main splitter used to build the Spd-Askit tree. First compute the approximate center using subsamples. Then find the two most far away points to do the projection |
CDistFactorizeTask | |
CDistFactorTreeViewTask | |
CDistMergeFarNodesTask | |
CDistSetupFactorTask | |
CDistSkeletonizeTask | |
CDistSkeletonKIJTask | |
CDistSkeletonsToNodesTask | |
CDistTreeViewTask | This task creates an hierarchical tree view for weights<RIDS> and potentials<RIDS> |
CDistULVBackwardSolveTask | |
CDistULVForwardSolveTask | |
CDistUpdateWeightsTask | Notice that NODE here is MPITree::Node |
CInterpolateTask | |
CL2LReduceTask2 | |
CL2LTask2 | |
CMergeFarNodesTask | |
CPackFarTask | |
CPackNearTask | |
Crandomsplit | |
CS2SReduceTask2 | |
CS2STask2 | Notice that S2S depends on all Far interactions, which may include local tree nodes or let nodes. For HSS case, the only Far interaction is the sibling. Skeleton weight of the sibling will always be exchanged by default in N2S. Thus, currently we do not need a distributed S2S, because the skeleton weight is already in place |
CSetup | These are data that shared by the whole local tree. Distributed setup inherits mpitree::Setup |
CSkeletonizeTask | |
CUnpackFarTask | |
CUnpackLeafTask | |
►Nmpitree | |
CDistIndexPermuteTask | |
CDistSplitTask | This is the default ball tree splitter. Given coordinates, compute the direction from the two most far away points. Project all points to this line and split into two groups using a median select |
CNode | |
CSetup | Data and setup that are shared with all nodes |
CTree | This distributed tree inherits the shared memory tree with some additional MPI data structure and function call |
►Nroot | |
CBisection | This is not thread safe |
CNewton | |
CRootFinderBase | |
►Ntci | |
CComm | |
CContext | |
►Ntree | |
CIndexPermuteTask | Permuate the order of gids for each internal node to the order of leaf nodes |
CNode | This is the default ball tree splitter. Given coordinates, compute the direction from the two most far away points. Project all points to this line and split into two groups using a median select |
CSetup | Data and setup that are shared with all nodes |
CSplitTask | |
CTree | |
CCache | |
CCache1D | Cache1D<NSET, NWAY, T> creates a layer of cache with NSET that directly maps a 1D array. The direct map is [ id % NSET ]. Each set has NWAY that are fully associated |
CCache2D | |
CCacheLine | |
CCluster | |
CCovReduceTask | |
CCovTask | |
CData | |
CDevice | This class describes devices or accelerators that require a master thread to control. A device can accept tasks from multiple workers. All received tasks are expected to be executed independently in a time-sharing fashion. Whether these tasks are executed in parallel, sequential or with some built-in context switching scheme does not matter |
CDeviceMemory | |
CDistData | |
CDistData< CIRC, CIRC, T > | |
CDistData< RBLK, STAR, T > | Ecah MPI process own ( n / size ) rows of A in a cyclic fashion (Round Robin). i.e. If there are 3 MPI processes, then |
CDistData< RIDS, STAR, T > | Ecah MPI process own ( rids.size() ) rows of A, and rids denote the distribution. i.e. ranki owns A(rids[0],:), A(rids[1],:), A(rids[2],:), .. |
CDistData< STAR, CBLK, T > | |
CDistData< STAR, CIDS, T > | Ecah MPI process own ( cids.size() ) columns of A, and cids denote the distribution. i.e. ranki owns A(:,cids[0]), A(:,cids[1]), A(:,cids[2]), .. |
CDistData< STAR, STAR, T > | |
CDistData< STAR, USER, T > | |
CDistDataBase | |
CDistKernelMatrix | |
CDistVirtualMatrix | DistVirtualMatrix is the abstract base class for matrix-free access and operations. Most of the public functions will be virtual. To inherit DistVirtualMatrix, you "must" implement the evaluation operator. Otherwise, the code won't compile |
CEvent | Wrapper for omp or pthread mutex |
CFunctionBase | |
Cgsks_ref_mrxnr | |
Ckernel_s | |
CKernelMatrix | |
CLayer | |
CLayer< FC, T > | |
CLayer< INPUT, T > | |
CLayerBase | |
CListenerTask | This task is the abstraction for all tasks handled by Listeners |
CLock | Wrapper for omp or pthread mutex |
CMatrifyableObject | |
CMatrixLike | |
CMatrixReadWrite | This class creates 2D grids for 2D matrix partition |
CMessageTask | This task is designed to take care MPI communications |
CMLPGaussNewton | |
CMortonHelper | |
CNULLTask | This is a specific type of task that represents NOP |
COOCCovMatrix | |
COOCData | |
COOCSPDMatrix | |
Cpack2D_pbxib | |
Cpack_pbxib | |
CPVFMMKernelMatrix | |
CRange | |
Crange | |
CReadWrite | This class provides the ability to perform dependency analysis |
CRecvTask | |
CRegression | |
CRunTime | RunTime is statically created in hmlp_runtime.cpp |
CScheduler | |
CSendTask | |
CSparseData | |
CSPDMatrix | This class does not need to inherit hmlp::Data<T>, but it should support two interfaces for data fetching |
CSPDMatrixMPISupport | |
CStatistic | |
CTask | |
Cthread_communicator | |
Cunpack2D_ibxjb | |
Cunpack_ibxjb | |
CView | |
CVirtualFunction | |
CVirtualMatrix | VirtualMatrix is the abstract base class for matrix-free access and operations. Most of the public functions will be virtual. To inherit VirtualMatrix, you "must" implement the evaluation operator. Otherwise, the code won't compile |
CVirtualNormalizedGraph | |
CWorker | |
►Npvfmm | |
CBasisInterface | |
CChebBasis | |
CKernelFnWrapper | |
CKernelFunction | |
CKernelMatrix | |
CLaplace3D | |
CMatrix | |
►CMemoryManager | MemoryManager class declaration |
CMemHead | Header data for each memory block |
CPermutation | |
CSmoother | |
CStokes3D | |
CTypeTraits | Identify each type uniquely |
CVector | |
Caux_s | |
Cconv_relu_pool2x2_asm_d6x8 | |
Cconv_relu_pool2x2_asm_d8x4 | |
Cconv_relu_pool2x2_int_d8x4 | |
Cconv_relu_pool2x2_ref_d8x4 | |
Cdowncast | |
Cgaussian_int_d24x8 | |
Cgkmm_mrxnr | This kernel takes opkernel, op1 and op2 to implement an MR-by-NR GKMM operation |
Cgkrm_mrxnr | |
Cgnbx_mrxnr | |
Cgsks_gaussian_int_d12x16 | |
Cgsks_gaussian_int_d6x32 | |
Cgsks_gaussian_int_d8x4 | |
Cgsks_gaussian_int_d8x6 | |
Cgsks_gaussian_int_s12x32 | |
Cgsks_gaussian_int_s16x6 | |
Cgsks_gaussian_int_s8x8 | |
Cgsks_polynomial_int_d8x6 | |
Cgsks_polynomial_int_s16x6 | |
Cidentity | |
Cknn_int_d6x32 | |
Cknn_int_d8x4 | |
Cknn_int_s12x32 | |
CMPI_Status | |
Crank_k_asm_d4x4 | |
Crank_k_asm_d6x8 | |
Crank_k_asm_d8x4 | |
Crank_k_asm_d8x6 | |
Crank_k_asm_s16x6 | |
Crank_k_asm_s4x4 | |
Crank_k_asm_s6x16 | |
Crank_k_asm_s8x12 | |
Crank_k_asm_s8x8 | |
Crank_k_int_d24x8 | |
Crank_k_opt_d12x16 | |
Crank_k_opt_d6x32 | |
Crank_k_opt_s12x32 | |
Crank_k_ref_d8x4 | |
Csemiring_mrxnr | |
Cv4df_t | |
Cv4li_t | |
Cv8df_t | |
Cvariable_bandwidth_gaussian_int_d8x4 | |
Cvariable_bandwidth_gaussian_ref_d8x4 | |