MAGMA  1.2.0
MatrixAlgebraonGPUandMulticoreArchitectures
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
magma_sbulgeinc.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  gbstrct_blg

Macros

#define PRECISION_s
#define MAX_THREADS_BLG   256
#define MAX_EVENTSBLG   163840
#define core_event_startblg(my_core_id)   event_start_timeblg[my_core_id] = get_time_azz();\
#define core_event_endblg(my_core_id)   event_end_timeblg[my_core_id] = get_time_azz();\
#define core_log_eventblg(event, my_core_id)

Functions

real_Double_t get_time_azz (void)
void findVTpos (int N, int NB, int Vblksiz, int sweep, int st, int *Vpos, int *TAUpos, int *Tpos, int *myblkid)
void findVTsiz (int N, int NB, int Vblksiz, int *blkcnt, int *LDV)
magma_int_t plasma_ceildiv (magma_int_t a, magma_int_t b)
int event_numblg[MAX_THREADS_BLG__attribute__ ((aligned(128)))

Variables

struct gbstrct_blg core_in_all
int log_eventsblg = 0

Macro Definition Documentation

#define core_event_endblg (   my_core_id)    event_end_timeblg[my_core_id] = get_time_azz();\

Definition at line 110 of file magma_sbulgeinc.h.

#define core_event_startblg (   my_core_id)    event_start_timeblg[my_core_id] = get_time_azz();\

Definition at line 107 of file magma_sbulgeinc.h.

#define core_log_eventblg (   event,
  my_core_id 
)
Value:
event_logblg[my_core_id][event_numblg[my_core_id]+0] = my_core_id;\
event_logblg[my_core_id][event_numblg[my_core_id]+1] = event_start_timeblg[my_core_id];\
event_logblg[my_core_id][event_numblg[my_core_id]+2] = event_end_timeblg[my_core_id];\
event_logblg[my_core_id][event_numblg[my_core_id]+3] = (event);\
event_numblg[my_core_id] += (log_eventsblg << 2);\
event_numblg[my_core_id] &= (MAX_EVENTSBLG-1);

Definition at line 113 of file magma_sbulgeinc.h.

#define MAX_EVENTSBLG   163840

Definition at line 98 of file magma_sbulgeinc.h.

#define MAX_THREADS_BLG   256

Configuration

Definition at line 25 of file magma_sbulgeinc.h.

#define PRECISION_s

Definition at line 14 of file magma_sbulgeinc.h.


Function Documentation

int event_numblg [MAX_THREADS_BLG] __attribute__ ( (aligned(128))  )
void findVTpos ( int  N,
int  NB,
int  Vblksiz,
int  sweep,
int  st,
int *  Vpos,
int *  TAUpos,
int *  Tpos,
int *  myblkid 
)

Definition at line 68 of file bulge_auxiliary.cpp.

{
magma_int_t prevcolblknb, prevblkcnt, prevcolblkid;
magma_int_t curcolblknb, nbprevcolblk, mastersweep;
magma_int_t blkid, locj, LDV;
prevcolblknb = 0;
prevblkcnt = 0;
curcolblknb = 0;
nbprevcolblk = sweep/Vblksiz;
for (prevcolblkid = 0; prevcolblkid < nbprevcolblk; prevcolblkid++)
{
mastersweep = prevcolblkid * Vblksiz;
prevcolblknb = plasma_ceildiv((N-(mastersweep+2)),NB);
prevblkcnt = prevblkcnt + prevcolblknb;
}
curcolblknb = plasma_ceildiv((st-sweep),NB);
blkid = prevblkcnt + curcolblknb -1;
locj = sweep%Vblksiz;
LDV = NB + Vblksiz -1;
*myblkid= blkid;
*Vpos = blkid*Vblksiz*LDV + locj*LDV + locj;
*TAUpos = blkid*Vblksiz + locj;
*Tpos = blkid*Vblksiz*Vblksiz + locj*Vblksiz + locj;
//printf("voici blkid %d locj %d vpos %d tpos %d \n",blkid,locj,*Vpos,*Tpos);
}
void findVTsiz ( int  N,
int  NB,
int  Vblksiz,
int *  blkcnt,
int *  LDV 
)

Definition at line 97 of file bulge_auxiliary.cpp.

{
magma_int_t colblk, nbcolblk;
magma_int_t curcolblknb, mastersweep;
*blkcnt = 0;
nbcolblk = plasma_ceildiv((N-1),Vblksiz);
for (colblk = 0; colblk<nbcolblk; colblk++)
{
mastersweep = colblk * Vblksiz;
curcolblknb = plasma_ceildiv((N-(mastersweep+2)),NB);
*blkcnt = *blkcnt + curcolblknb;
//printf("voici nbcolblk %d master sweep %d blkcnt %d \n",nbcolblk, mastersweep,*blkcnt);
}
*blkcnt = *blkcnt +1;
*LDV= NB+Vblksiz-1;
}
real_Double_t get_time_azz ( void  )

Definition at line 24 of file bulge_auxiliary.cpp.

{
struct timeval time_val;
struct timezone time_zone;
gettimeofday(&time_val, &time_zone);
return (real_Double_t)(time_val.tv_sec) + (real_Double_t)(time_val.tv_usec) / 1000000.0;
}
magma_int_t plasma_ceildiv ( magma_int_t  a,
magma_int_t  b 
)

Definition at line 36 of file bulge_auxiliary.cpp.

{
r = (r-(magma_int_t)r)==0? (magma_int_t)r:(magma_int_t)r+1;
return (magma_int_t) r;
}

Variable Documentation

struct gbstrct_blg core_in_all

Definition at line 118 of file chetrd_bhe2trc_v3.cpp.

int log_eventsblg = 0

Definition at line 105 of file magma_sbulgeinc.h.