Hitmap 1.3
|
#include <stdio.h>
#include <math.h>
#include <hit_layout.h>
#include <hit_funcop.h>
#include <hit_com.h>
#include <hit_sshape.h>
#include <hit_cshape.h>
#include <hit_bshape.h>
Go to the source code of this file.
Functions | |
int | hit_layout_plug_layCopy_Sig (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, HitSig *res) |
int | hit_layout_plug_layCopy_SigInv (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, int ind) |
int | hit_layout_plug_layAllInOne_Sig (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, HitSig *res) |
int | hit_layout_plug_layAllInOne_SigInv (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, int ind) |
int | hit_layout_plug_layCopy_maxCard (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layRegular_maxCard (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layCopy_minCard (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layRegular_minCard (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layRegular_numActives (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layAllInOne_numActives (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layRegularContiguos_ranks (char topoActiveMode, int procId, int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layRegularF_ranks (char topoActiveMode, int procId, int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layRegularL_ranks (char topoActiveMode, int procId, int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layAllInOne_ranks (char topoActiveMode, int procId, int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layBlocks_Sig (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, HitSig *res) |
int | hit_layout_plug_layBlocks_SigInv (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, int ind) |
HitLayout | hit_layout_plug_layBlocks (HitTopology topo, HitShape shape) |
HitLayout | hit_layout_plug_layDimBlocks (HitTopology topo, HitShape shape, int restrictDim) |
int | hit_layout_plug_layMinBlocks_Sig (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, HitSig *res) |
int | hit_layout_plug_layMinBlocks_SigInv (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, int ind) |
int | hit_layout_plug_layMinBlocks_maxCard (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layMinBlocks_minCard (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layMinBlocks_numActives (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layMinBlocks_ranks (char topoActiveMode, int procId, int procsCard, int blocksCard, float *extraParameter) |
HitLayout | hit_layout_plug_layMinBlocks (HitTopology topo, HitShape shape, int minElems) |
int | hit_layout_plug_layBlocksX_Sig (int procId, int procsCard, int blocksCard, HitSig input, HitSig *res) |
HitLayout | hit_layout_plug_layBlocksX (HitTopology topo, HitShape shape) |
int | hit_layout_plug_layBlocksF_Sig (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, HitSig *res) |
HitLayout | hit_layout_plug_layBlocksF (HitTopology topo, HitShape shape) |
int | hit_layout_plug_layBlocksL_Sig (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, HitSig *res) |
HitLayout | hit_layout_plug_layBlocksL (HitTopology topo, HitShape shape) |
int | hit_layout_plug_layCyclic_Sig (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, HitSig *res) |
int | hit_layout_plug_layCyclic_SigInv (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, int ind) |
HitLayout | hit_layout_plug_layCyclic (HitTopology topo, HitShape shape, int restrictToDim) |
HitLayout | hit_layout_plug_layInLeader (HitTopology topo, HitShape shape) |
int | hit_layout_plug_layBlocksBalance_Sig (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, HitSig *res) |
int | hit_layout_plug_layBlocksBalance_SigInv (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, int ind) |
int | hit_layout_plug_layBlocksBalance_maxCard (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layBlocksBalance_minCard (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layBlocksBalance_numActives (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layBlocksBalance_ranks (char topoActiveMode, int procId, int procsCard, int blocksCard, float *extraParameter) |
HitLayout | hit_layout_plug_layBlocksBalance (HitTopology topo, HitShape shape, int restrictToDim, float load) |
int | perform_weighted_distribution (int procsCard, int blocksCard, float *weights, int *result) |
int | hit_layout_plug_layWeighted_Sig (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, HitSig *res) |
int | hit_layout_plug_layWeighted_SigInv (int procId, int procsCard, int blocksCard, float *extraParameter, HitSig input, int ind) |
int | hit_layout_plug_layWeighted_ranks (char topoActiveMode, int procId, int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layWeighted_maxCard (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layWeighted_minCard (int procsCard, int blocksCard, float *extraParameter) |
int | hit_layout_plug_layWeighted_numActives (int procsCard, int blocksCard, float *extraParameter) |
HitLayout | hit_layout_plug_layDimWeighted (HitTopology topo, HitShape shape, int restrictDim, float *weights) |
HitLayout | hit_layout_plug_layWeighted (HitTopology topo, HitShape shape, float *weights) |
void | hit_layWrapNeighbors (HitLayout *lay) |
void | hit_layWrapNeighborsDim (HitLayout *lay, int dim) |
void | hit_layUnwrapNeighbors (HitLayout *lay) |
void | hit_layUnwrapNeighborsDim (HitLayout *lay, int dim) |
HitShape | hit_layMaxShape (HitLayout lay) |
HitShape | hit_layDimMaxShape (HitLayout lay, int dim) |
HitShape | hit_layMinShape (HitLayout lay) |
HitShape | hit_layDimMinShape (HitLayout lay, int dim) |
int | hit_layout_wrapperShape (int topoNumDims, HitRanks proc, int card[HIT_MAXDIMS], HitShape shape, HitShape *newShape, HitLayoutSignatureFunction sigFunctionGeneric, HitLayoutSignatureFunction sigFunctionRestricted, float *extraParameter, int restrictToDim) |
HitShape | hit_layout_wrapperOtherShape (HitLayout self, HitRanks ranks) |
HitShape | hit_layout_wrapperNeighborShape (HitLayout self, int dim, int shift) |
HitRanks | hit_layTransformRanks (char topoActiveMode, HitLayout self, HitRanks ranks) |
int | hit_layActiveRanksId (HitLayout lay, HitRanks ranks) |
HitRanks | hit_layActiveIdRanks (HitLayout lay, int linear) |
int | hit_layNeighborFrom (HitLayout self, int source, int dim, int shift) |
int | hit_layNeighborFromTopoRank (HitLayout self, int source, int dim, int shift) |
int | hit_layNeighborDistance (HitLayout self, int dim, int shift) |
HitRanks | hit_layNeighborRanksFrom (HitLayout self, HitRanks source, int dim, int shift) |
HitRanks | hit_layNeighborRanks (HitLayout self, int dim, int shift) |
HitLayout | hit_layout_wrapper (HitTopology topo, HitShape shape, HitLayoutSignatureFunction signatureGenericF, HitLayoutSignatureInvFunction signatureInvGenericF, HitLayoutSignatureFunction signatureRestrictedF, HitLayoutSignatureInvFunction signatureInvRestrictedF, HitLayoutRanksFunction ranksGenericF, HitLayoutRanksFunction ranksRestrictedF, HitLayoutSignatureMaxCardFunction maxCardGenericF, HitLayoutSignatureMaxCardFunction maxCardRestrictedF, HitLayoutSignatureMinCardFunction minCardGenericF, HitLayoutSignatureMinCardFunction minCardRestrictedF, HitLayoutSignatureNumActivesFunction activesGenericF, HitLayoutSignatureNumActivesFunction activesRestrictedF, float *extraParameter, int restrictToDim) |
int | hit_layNumActives (HitLayout lay) |
int | hit_layDimOwner (HitLayout lay, int dim, int ind) |
void | hit_layFree (HitLayout lay) |
HitTopology | hit_layGroupTopo (HitLayout lay, int groupId) |
HitTopology | hit_layActivesTopology (HitLayout lay) |
void | hit_layout_list_initGroups (HitLayout *lay, int numElementsTotal) |
void | hit_layout_list_addGroup (HitLayout *lay, int leader, int np) |
void | hit_lay_elements (HitLayout layout, int group, int **els, int *nEls) |
int | hit_lay_procGroup (HitLayout layout, int processor) |
HitLayout | hit_layout_plug_layIndependentLB (HitTopology topo, HitShape elements, const double *weights) |
HitLayout | hit_layout_plug_layContiguous (HitTopology topo, HitShape elements, const double *weights) |
void | hit_bShapeBcastInternal (HitShape *shape, HitTopology topo) |
HitLayout | hit_layout_plug_layBitmap (HitTopology topo, HitShape *shapeP) |
void | hit_cShapeBcastInternal (HitShape *shape, HitTopology topo) |
HitLayout | hit_layout_plug_laySparseRows (HitTopology topo, HitShape *shapeP) |
HitLayout | hit_layout_plug_laySparseBitmapRows (HitTopology topo, HitShape *shapeP) |
Layout management module. A layout maps the indexes in a shape domain into the processes from a virtual topology
Definition in file hit_layout.c.
void hit_bShapeBcastInternal | ( | HitShape * | shape, |
HitTopology | topo | ||
) |
Performs a Broadcast communication to share a sparse shape.
Definition at line 2809 of file hit_layout.c.
void hit_cShapeBcastInternal | ( | HitShape * | shape, |
HitTopology | topo | ||
) |
Definition at line 2910 of file hit_layout.c.
void hit_lay_elements | ( | HitLayout | layout, |
int | group, | ||
int ** | elements, | ||
int * | nElements | ||
) |
List of the elements assigned to a group
layout | The layout. |
group | The asked group number. |
elements | pointer to a int array where the elements number are alocated. |
nElements | pointer to a int where the number of elements are saved. |
Definition at line 2452 of file hit_layout.c.
int hit_lay_procGroup | ( | HitLayout | layout, |
int | processor | ||
) |
Calculate the group number for a given processor
layout | The layout. |
processor | The processor number. |
Definition at line 2477 of file hit_layout.c.
hit_layActiveIdRanks: Transforms a process id in multidimensional active ranks in the active grid
lay | Layout. |
ranks | Active Ranks. |
Definition at line 1935 of file hit_layout.c.
hit_layActiveRanksId: Transforms multidimensional active ranks to a process id in the active grid
lay | Layout. |
ranks | Active Ranks. |
Definition at line 1916 of file hit_layout.c.
HitTopology hit_layActivesTopology | ( | HitLayout | lay | ) |
hit_layActivesTopology: Returns the topology with the active processors
Definition at line 2372 of file hit_layout.c.
Return the maximum shape of the neighbors in a given dimension in a the layout. This function can be used to make a buffer to share date among neighbors in a dimension.
lay | The Layout. lay Dimension. |
Definition at line 1650 of file hit_layout.c.
Return the minimum shape of the neighbors in a given dimension in a the layout. This function can be used to make a buffer to share date among neighbors in a dimension.
lay | The Layout. lay Dimension. |
Definition at line 1704 of file hit_layout.c.
int hit_layDimOwner | ( | HitLayout | lay, |
int | dim, | ||
int | ind | ||
) |
hit_layDimOwner: Transforms shape index to active rank of the owner process
lay | Layout. |
ind | Shape index |
Definition at line 2223 of file hit_layout.c.
void hit_layFree | ( | HitLayout | lay | ) |
hit_layFree: free allocated resources used by the layout.
Definition at line 2251 of file hit_layout.c.
HitTopology hit_layGroupTopo | ( | HitLayout | lay, |
int | groupId | ||
) |
hit_layGroupTopo: Builds and returns the subtopology of a given group
Definition at line 2318 of file hit_layout.c.
Return the maximum shape of the neighbors in the layout. This function can be used to make a buffer to share date among the processors.
lay | The Layout. |
Definition at line 1623 of file hit_layout.c.
Return the minimum shape of the neighbors in the layout. This function can be used to make a buffer to share date among the processors.
lay | The Layout. |
Definition at line 1677 of file hit_layout.c.
int hit_layNeighborDistance | ( | HitLayout | self, |
int | dim, | ||
int | shift | ||
) |
int hit_layNeighborFrom | ( | HitLayout | self, |
int | source, | ||
int | dim, | ||
int | shift | ||
) |
int hit_layNeighborFromTopoRank | ( | HitLayout | self, |
int | source, | ||
int | dim, | ||
int | shift | ||
) |
Definition at line 1982 of file hit_layout.c.
Definition at line 2039 of file hit_layout.c.
int hit_layNumActives | ( | HitLayout | lay | ) |
Number of total active processors in the layout
Definition at line 2213 of file hit_layout.c.
void hit_layout_list_addGroup | ( | HitLayout * | lay, |
int | leader, | ||
int | np | ||
) |
hit_layout_list_addGroup Adds a new group to a list layout
lay | A pointer to the layout |
leader,the | leader of the group, if it is -1 the function will calculate it automatically |
np,the | number of processors in the group |
Definition at line 2423 of file hit_layout.c.
void hit_layout_list_initGroups | ( | HitLayout * | lay, |
int | numElementsTotal | ||
) |
int hit_layout_plug_layAllInOne_numActives | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
int hit_layout_plug_layAllInOne_ranks | ( | char | topoActiveMode, |
int | procId, | ||
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter | ||
) |
int hit_layout_plug_layAllInOne_SigInv | ( | int | procId, |
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter, | ||
HitSig | input, | ||
int | ind | ||
) |
HitLayout hit_layout_plug_layBitmap | ( | HitTopology | topo, |
HitShape * | shape | ||
) |
Distributes a graph into groups of processors by "rows".
topo | the topology. |
shape | the sparse shape that represents the graph. |
Definition at line 2859 of file hit_layout.c.
HitLayout hit_layout_plug_layBlocks | ( | HitTopology | topo, |
HitShape | shape | ||
) |
Hit Layout Blocks constructor function This layout leave the inactive processor at the end of the dimension when there are more processor than data.
topo | The topology |
shape | The global shape |
Definition at line 326 of file hit_layout.c.
int hit_layout_plug_layBlocks_SigInv | ( | int | procId, |
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter, | ||
HitSig | input, | ||
int | ind | ||
) |
HitLayout hit_layout_plug_layBlocksBalance | ( | HitTopology | topo, |
HitShape | shape, | ||
int | dim, | ||
float | load | ||
) |
Hit Layout Blocks with Load Balance in One Dimension constructor function This layout leave the inactive processor at the end of the dimension when there are more processor that data.
TODO: This is a test implementation for only two types of devices that simply applies a trivial load-balancing in one dimension
topo | The topology |
shape | The global shape |
dim | The dimension in which load balance is applyed |
load | The normalized capability of the first device (between 0.0 and 1.0) |
Definition at line 1202 of file hit_layout.c.
int hit_layout_plug_layBlocksBalance_maxCard | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
Definition at line 1129 of file hit_layout.c.
int hit_layout_plug_layBlocksBalance_minCard | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
Definition at line 1146 of file hit_layout.c.
int hit_layout_plug_layBlocksBalance_numActives | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
Definition at line 1164 of file hit_layout.c.
int hit_layout_plug_layBlocksBalance_ranks | ( | char | topoActiveMode, |
int | procId, | ||
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter | ||
) |
Definition at line 1186 of file hit_layout.c.
int hit_layout_plug_layBlocksBalance_Sig | ( | int | procId, |
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter, | ||
HitSig | input, | ||
HitSig * | res | ||
) |
Definition at line 1058 of file hit_layout.c.
int hit_layout_plug_layBlocksBalance_SigInv | ( | int | procId, |
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter, | ||
HitSig | input, | ||
int | ind | ||
) |
Definition at line 1101 of file hit_layout.c.
HitLayout hit_layout_plug_layBlocksF | ( | HitTopology | topo, |
HitShape | shape | ||
) |
Hit Layout BlocksF constructor function (Blocks at First) This layout mix active and inactive processors in a regular way making groups when there are more processor than data. The leader is the first processor in the group.
topo | The topology |
shape | The global shape |
Definition at line 721 of file hit_layout.c.
HitLayout hit_layout_plug_layBlocksL | ( | HitTopology | topo, |
HitShape | shape | ||
) |
Hit Layout BlocksF constructor function (Blocks at Last) This layout mix active and inactive processors in a regular way making groups when there are more processor than data. The leader is the last processor in the group.
topo | The topology |
shape | The global shape |
Definition at line 838 of file hit_layout.c.
HitLayout hit_layout_plug_layBlocksX | ( | HitTopology | topo, |
HitShape | shape | ||
) |
An alternative implementation of Blocks
Definition at line 625 of file hit_layout.c.
int hit_layout_plug_layBlocksX_Sig | ( | int | procId, |
int | procsCard, | ||
int | blocksCard, | ||
HitSig | input, | ||
HitSig * | res | ||
) |
Definition at line 588 of file hit_layout.c.
HitLayout hit_layout_plug_layContiguous | ( | HitTopology | topo, |
HitShape | elements, | ||
const double * | weights | ||
) |
hit_layout_plug_layContiguous: generic sheduling of n contiguos blocks to m processors, according to block weights.
topo | the topology. |
elements | the shape that represent the element domain. |
weights | the block weights. |
Definition at line 2652 of file hit_layout.c.
int hit_layout_plug_layCopy_maxCard | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
int hit_layout_plug_layCopy_minCard | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
int hit_layout_plug_layCopy_SigInv | ( | int | procId, |
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter, | ||
HitSig | input, | ||
int | ind | ||
) |
HitLayout hit_layout_plug_layCyclic | ( | HitTopology | topo, |
HitShape | shape, | ||
int | dim | ||
) |
Hit Layout Cyclic constructor function Distribute the data defined by a shape among the processors in a cyclic way.
topo | The topology |
shape | The global shape |
dim | Number of dimensions |
Definition at line 948 of file hit_layout.c.
int hit_layout_plug_layCyclic_SigInv | ( | int | procId, |
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter, | ||
HitSig | input, | ||
int | ind | ||
) |
HitLayout hit_layout_plug_layDimBlocks | ( | HitTopology | topo, |
HitShape | shape, | ||
int | restrictDim | ||
) |
Hit Layout DimBlocks constructor function Applies blocks in a given dimension. This layout leave the inactive processor at the end of the dimension when there are more processor than data.
topo | The topology |
shape | The global shape |
restrictDim | The dimension to apply the block/band partition |
Definition at line 382 of file hit_layout.c.
HitLayout hit_layout_plug_layDimWeighted | ( | HitTopology | topo, |
HitShape | shape, | ||
int | restrictDim, | ||
float * | weights | ||
) |
TODO: Write the documentation
Definition at line 1484 of file hit_layout.c.
HitLayout hit_layout_plug_layIndependentLB | ( | HitTopology | topo, |
HitShape | elements, | ||
const double * | weights | ||
) |
hit_layout_plug_layIndependentLB: generic sheduling of n independent blocks to m processors, according to block weights.
topo | the topology. |
elements | the shape that represent the element domain. |
weights | the block weights |
Definition at line 2495 of file hit_layout.c.
HitLayout hit_layout_plug_layInLeader | ( | HitTopology | topo, |
HitShape | shape | ||
) |
Hit Layout AllInLeader constructor function Distribute the whole domain to a single proccess: The leader
topo | The topology |
shape | The global shape |
Definition at line 1013 of file hit_layout.c.
HitLayout hit_layout_plug_layMinBlocks | ( | HitTopology | topo, |
HitShape | shape, | ||
int | minElems | ||
) |
Hit Layout MinBlocks constructor function The resulting blocks will have a minimum number of elements. This layout leave the inactive processor at the end of the dimension when there are more processor than data.
topo | The topology |
shape | The global shape |
minElems | The minimum number of elements on each partition |
Definition at line 529 of file hit_layout.c.
int hit_layout_plug_layMinBlocks_maxCard | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
Definition at line 493 of file hit_layout.c.
int hit_layout_plug_layMinBlocks_minCard | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
Definition at line 501 of file hit_layout.c.
int hit_layout_plug_layMinBlocks_numActives | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
int hit_layout_plug_layMinBlocks_ranks | ( | char | topoActiveMode, |
int | procId, | ||
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter | ||
) |
Definition at line 514 of file hit_layout.c.
int hit_layout_plug_layMinBlocks_Sig | ( | int | procId, |
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter, | ||
HitSig | input, | ||
HitSig * | res | ||
) |
Definition at line 437 of file hit_layout.c.
int hit_layout_plug_layMinBlocks_SigInv | ( | int | procId, |
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter, | ||
HitSig | input, | ||
int | ind | ||
) |
Definition at line 469 of file hit_layout.c.
int hit_layout_plug_layRegular_maxCard | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
int hit_layout_plug_layRegular_minCard | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
int hit_layout_plug_layRegular_numActives | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
int hit_layout_plug_layRegularContiguos_ranks | ( | char | topoActiveMode, |
int | procId, | ||
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter | ||
) |
int hit_layout_plug_layRegularF_ranks | ( | char | topoActiveMode, |
int | procId, | ||
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter | ||
) |
int hit_layout_plug_layRegularL_ranks | ( | char | topoActiveMode, |
int | procId, | ||
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter | ||
) |
HitLayout hit_layout_plug_laySparseBitmapRows | ( | HitTopology | topo, |
HitShape * | shapeP | ||
) |
Distributes a matrix into groups of processors by rows.
topo | the topology. |
shape | the sparse shape that represents the matrix. |
Definition at line 3015 of file hit_layout.c.
HitLayout hit_layout_plug_laySparseRows | ( | HitTopology | topo, |
HitShape * | shape | ||
) |
Distributes a matrix into groups of processors by rows.
topo | the topology. |
shape | the sparse shape that represents the matrix. |
Definition at line 2963 of file hit_layout.c.
HitLayout hit_layout_plug_layWeighted | ( | HitTopology | topo, |
HitShape | shape, | ||
float * | weights | ||
) |
TODO: Write the documentation
Definition at line 1538 of file hit_layout.c.
int hit_layout_plug_layWeighted_maxCard | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
Definition at line 1447 of file hit_layout.c.
int hit_layout_plug_layWeighted_minCard | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
Definition at line 1459 of file hit_layout.c.
int hit_layout_plug_layWeighted_numActives | ( | int | procsCard, |
int | blocksCard, | ||
float * | extraParameter | ||
) |
Definition at line 1471 of file hit_layout.c.
int hit_layout_plug_layWeighted_ranks | ( | char | topoActiveMode, |
int | procId, | ||
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter | ||
) |
Definition at line 1428 of file hit_layout.c.
int hit_layout_plug_layWeighted_Sig | ( | int | procId, |
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter, | ||
HitSig | input, | ||
HitSig * | res | ||
) |
Definition at line 1340 of file hit_layout.c.
int hit_layout_plug_layWeighted_SigInv | ( | int | procId, |
int | procsCard, | ||
int | blocksCard, | ||
float * | extraParameter, | ||
HitSig | input, | ||
int | ind | ||
) |
Definition at line 1385 of file hit_layout.c.
HitLayout hit_layout_wrapper | ( | HitTopology | topo, |
HitShape | shape, | ||
HitLayoutSignatureFunction | signatureGenericF, | ||
HitLayoutSignatureInvFunction | signatureInvGenericF, | ||
HitLayoutSignatureFunction | signatureRestrictedF, | ||
HitLayoutSignatureInvFunction | signatureInvRestrictedF, | ||
HitLayoutRanksFunction | ranksGenericF, | ||
HitLayoutRanksFunction | ranksRestrictedF, | ||
HitLayoutSignatureMaxCardFunction | maxCardGenericF, | ||
HitLayoutSignatureMaxCardFunction | maxCardRestrictedF, | ||
HitLayoutSignatureMinCardFunction | minCardGenericF, | ||
HitLayoutSignatureMinCardFunction | minCardRestrictedF, | ||
HitLayoutSignatureNumActivesFunction | activesGenericF, | ||
HitLayoutSignatureNumActivesFunction | activesRestrictedF, | ||
float * | extraParameter, | ||
int | restrictToDim | ||
) |
Definition at line 2073 of file hit_layout.c.
Definition at line 1815 of file hit_layout.c.
int hit_layout_wrapperShape | ( | int | topoNumDims, |
HitRanks | proc, | ||
int | card[HIT_MAXDIMS], | ||
HitShape | shape, | ||
HitShape * | newShape, | ||
HitLayoutSignatureFunction | sigFunctionGeneric, | ||
HitLayoutSignatureFunction | sigFunctionRestricted, | ||
float * | extraParameter, | ||
int | restrictToDim | ||
) |
Definition at line 1886 of file hit_layout.c.
void hit_layUnwrapNeighbors | ( | HitLayout * | lay | ) |
Unset the periodic boundary conditions
Definition at line 1607 of file hit_layout.c.
void hit_layUnwrapNeighborsDim | ( | HitLayout * | lay, |
int | dim | ||
) |
Unset the periodic boundary conditions for one dimension
Definition at line 1616 of file hit_layout.c.
void hit_layWrapNeighbors | ( | HitLayout * | lay | ) |
Set the periodic boundary conditions
Definition at line 1593 of file hit_layout.c.
void hit_layWrapNeighborsDim | ( | HitLayout * | lay, |
int | dim | ||
) |
Set the periodic boundary conditions for one dimension
Definition at line 1602 of file hit_layout.c.
int perform_weighted_distribution | ( | int | procsCard, |
int | blocksCard, | ||
float * | weights, | ||
int * | result | ||
) |
HitGroup HIT_GROUP_NULL = HIT_GROUP_NULL_STATIC |
Null value for Groups.
Definition at line 65 of file hit_layout.c.
HitLayout HIT_LAYOUT_NULL = HIT_LAYOUT_NULL_STATIC |
Null value for a layout.
Definition at line 71 of file hit_layout.c.
HitLayoutList HIT_LAYOUTLIST_NULL = HIT_LAYOUTLIST_NULL_STATIC |
Null value for List Layout.
Definition at line 68 of file hit_layout.c.
HitLayoutSig HIT_LAYOUTSIG_NULL = HIT_SIGLAYOUT_NULL_STATIC |
Null value for Signature Layouts
Definition at line 62 of file hit_layout.c.
int hit_lsig_vfor_index[HIT_MAXDIMS] |
Extern array used by the hit_lsig_vfor function.
Definition at line 59 of file hit_layout.c.