163 lines
3.2 KiB
C
163 lines
3.2 KiB
C
|
|
#ifndef _MODELSTRUCTS_H
|
|||
|
|
#define _MODELSTRUCTS_H
|
|||
|
|
|
|||
|
|
#include "Vm.h"
|
|||
|
|
#include "AMView.h"
|
|||
|
|
#include "DArray.h"
|
|||
|
|
#include "BGroup.h"
|
|||
|
|
#include "RedGroup.h"
|
|||
|
|
#include "RedVar.h"
|
|||
|
|
#include "ParLoop.h"
|
|||
|
|
#include "RemAccessBuf.h"
|
|||
|
|
|
|||
|
|
|
|||
|
|
/* MPS/AM/AMView structures */
|
|||
|
|
|
|||
|
|
struct _PSInfo {
|
|||
|
|
static int count;
|
|||
|
|
long ID;
|
|||
|
|
VM* VM_Obj;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct _AMInfo {
|
|||
|
|
static int count;
|
|||
|
|
long ID;
|
|||
|
|
long PS_ID;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct _AMViewInfo {
|
|||
|
|
static int count;
|
|||
|
|
long ID;
|
|||
|
|
long AM_ID;
|
|||
|
|
AMView* AMView_Obj;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct _DArrayInfo {
|
|||
|
|
static int count;
|
|||
|
|
long ID; // ArrayHeader
|
|||
|
|
long AlignType;
|
|||
|
|
DArray* DArray_Obj;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct _DArrayFlag {
|
|||
|
|
static int count;
|
|||
|
|
long ID;
|
|||
|
|
double* ProcessTimeStamp;
|
|||
|
|
double time_start,
|
|||
|
|
time_end;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct _RedVarInfo {
|
|||
|
|
static int count;
|
|||
|
|
long ID;
|
|||
|
|
RedVar* RedVar_Obj;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct _RedGrpInfo {
|
|||
|
|
static int count;
|
|||
|
|
long ID;
|
|||
|
|
RedGroup* RedGroup_Obj;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct _ShdGrpInfo {
|
|||
|
|
static int count;
|
|||
|
|
long ID;
|
|||
|
|
BoundGroup* BoundGroup_Obj;
|
|||
|
|
double * ProcessTimeStamp;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct _ReductInfo {
|
|||
|
|
long ID;
|
|||
|
|
double time_start, time_end;
|
|||
|
|
static int count;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct _ShadowInfo {
|
|||
|
|
static int count;
|
|||
|
|
long ID;
|
|||
|
|
double time_start, time_end;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct _ParLoopInfo {
|
|||
|
|
static int count;
|
|||
|
|
long ID;
|
|||
|
|
long Rank;
|
|||
|
|
long AlignType;
|
|||
|
|
bool exfrst;
|
|||
|
|
long exfrst_SGR;
|
|||
|
|
bool imlast;
|
|||
|
|
long imlast_SGR;
|
|||
|
|
bool across;
|
|||
|
|
long across_SGR;
|
|||
|
|
int PatternType;
|
|||
|
|
long PatternID;
|
|||
|
|
//====
|
|||
|
|
int type_size;
|
|||
|
|
bool Invers[10];
|
|||
|
|
_ShdGrpInfo* SGnew;
|
|||
|
|
_ShdGrpInfo* SG;
|
|||
|
|
//=***
|
|||
|
|
|
|||
|
|
std::vector<long> AxisArray;
|
|||
|
|
ParLoop* ParLoop_Obj;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
struct _RemAccessInfo {
|
|||
|
|
static int count;
|
|||
|
|
long ID;
|
|||
|
|
RemAccessBuf* RemAccess_Obj; // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
double* StartRemoteTimes;
|
|||
|
|
double* EndRemoteTimes;
|
|||
|
|
|
|||
|
|
int size() { return count; }
|
|||
|
|
int operator ++() { return ++count; }
|
|||
|
|
int operator --() { return --count; }
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
|
|||
|
|
#endif
|