Public Member Functions

twod::JagPQOptIntervalBest< T, Pr > Class Template Reference

optimal PxQ jagged algorithm from "Ali Pinar and Cevdet Aykanat, Sparse Matrix Decomposition with Optimal Load Balancing, HiPC 1997" . It selects the main dimension to get the best possible load balance. More...

#include <twod/jag_pq_opt_interval.hpp>

Inheritance diagram for twod::JagPQOptIntervalBest< T, Pr >:
twod::PartBase< T, Pr >

Detailed Description

template<typename T, typename Pr>
class twod::JagPQOptIntervalBest< T, Pr >

optimal PxQ jagged algorithm from "Ali Pinar and Cevdet Aykanat, Sparse Matrix Decomposition with Optimal Load Balancing, HiPC 1997" . It selects the main dimension to get the best possible load balance.

This class is implemented as a wrapper to twod::JagPQOptIntervalHor and twod::jag_pq_opt_nicol_ver.

Parameters:
T type of the data in the prefix sum array
Pr type of the prefixsum array

List of all members.

Public Member Functions

virtual T part (int procCount, const Pr &prefixSumArray, util::RectList< T, Pr > &parts)
 Applies a 2d partitioning algorithm to a given 2d prefixSumArray .
virtual ~JagPQOptIntervalBest ()

Constructor & Destructor Documentation

template<typename T , typename Pr >
twod::JagPQOptIntervalBest< T, Pr >::~JagPQOptIntervalBest (  )  [virtual]

Member Function Documentation

template<typename T , typename Pr >
T twod::JagPQOptIntervalBest< T, Pr >::part ( int  procCount,
const Pr prefixSumArray,
util::RectList< T, Pr > &  parts 
) [virtual]

Applies a 2d partitioning algorithm to a given 2d prefixSumArray .

Parameters:
[in] procCount is the number of processors
[in] prefixSumArray first column and first row consists of zero only. But the borders of rectangles in rect_list never touch this area (index 0 in row or column)
[out] parts must be empty before calling this function. It will contain the partition after the function return
Returns:
the load of the most loaded rectangle of parts

Implements twod::PartBase< T, Pr >.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Friends Defines