Bridge++  Ver. 2.0.2
prefetch.h File Reference

Go to the source code of this file.

Macros

#define __prefetch_load_luinv(a, offset)
 
#define __prefetch_write_luinv(a, offset)
 
#define __prefetch_load_luinv_l1(a, offset)
 
#define __prefetch_write_luinv_l1(a, offset)
 
#define __prefetch_load_hop_u_l2(a, dir, idx)
 
#define __prefetch_load_hop_vec_l2(a, idx, is)
 
#define __prefetch_write_hop_vec_l2(a, idx, is)
 
#define __prefetch_load_hop_u_l1(a, dir, idx)
 
#define __prefetch_load_hop_vec_l1(a, idx, is)
 
#define __prefetch_write_hop_vec_l1(a, idx, is)
 
#define __prefetch_load_hop2_buf_x_l2(a, idx, is, skip)
 
#define __prefetch_load_hop2_buf_y_l2(a, idx, is, skip)
 
#define __prefetch_load_hop2_buf_zt_l2(a, idx, is, skip)
 
#define __prefetch_load_hop2_buf_x_l1(a, idx, is, skip)
 
#define __prefetch_load_hop2_buf_y_l1(a, idx, is, skip)
 
#define __prefetch_load_hop2_buf_zt_l1(a, idx, is, skip)
 
#define __prefetch_write_hop1_buf_x_l2(a, idx, is, skip)
 
#define __prefetch_write_hop1_buf_y_l2(a, idx, is, skip)
 
#define __prefetch_write_hop1_buf_zt_l2(a, idx, is, skip)
 
#define __prefetch_write_hop1_buf_x_l1(a, idx, is, skip)
 
#define __prefetch_write_hop1_buf_y_l1(a, idx, is, skip)
 
#define __prefetch_write_hop1_buf_zt_l1(a, idx, is, skip)
 

Detailed Description

Author
Issaku Kanamori
LastChangedBy
matufuru
Date
LastChangedDate
2013-01-22 13:51:53 #
Version
LastChangedRevision
2492

Definition in file prefetch.h.

Macro Definition Documentation

◆ __prefetch_load_hop2_buf_x_l1

#define __prefetch_load_hop2_buf_x_l1 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 0, 3); \
}

Definition at line 116 of file prefetch.h.

◆ __prefetch_load_hop2_buf_x_l2

#define __prefetch_load_hop2_buf_x_l2 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 0, 2); \
}

Definition at line 99 of file prefetch.h.

◆ __prefetch_load_hop2_buf_y_l1

#define __prefetch_load_hop2_buf_y_l1 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 0, 3); \
}

Definition at line 121 of file prefetch.h.

◆ __prefetch_load_hop2_buf_y_l2

#define __prefetch_load_hop2_buf_y_l2 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 0, 2); \
}

Definition at line 104 of file prefetch.h.

◆ __prefetch_load_hop2_buf_zt_l1

#define __prefetch_load_hop2_buf_zt_l1 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 0, 3); \
__builtin_prefetch(&a[idx + skip * is + 1 * 64], 0, 3); \
__builtin_prefetch(&a[idx + skip * is + 2 * 64], 0, 3); \
}

Definition at line 126 of file prefetch.h.

◆ __prefetch_load_hop2_buf_zt_l2

#define __prefetch_load_hop2_buf_zt_l2 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 0, 2); \
__builtin_prefetch(&a[idx + skip * is + 1 * 64], 0, 2); \
__builtin_prefetch(&a[idx + skip * is + 2 * 64], 0, 2); \
}

Definition at line 109 of file prefetch.h.

◆ __prefetch_load_hop_u_l1

#define __prefetch_load_hop_u_l1 (   a,
  dir,
  idx 
)
Value:
{ \
__builtin_prefetch(&a[NDF * Nst2 * (dir) + VLEN * NDF * (idx) + 0 * 64], 0, 3); \
__builtin_prefetch(&a[NDF * Nst2 * (dir) + VLEN * NDF * (idx) + 1 * 64], 0, 3); \
__builtin_prefetch(&a[NDF * Nst2 * (dir) + VLEN * NDF * (idx) + 2 * 64], 0, 3); \
__builtin_prefetch(&a[NDF * Nst2 * (dir) + VLEN * NDF * (idx) + 3 * 64], 0, 3); \
__builtin_prefetch(&a[NDF * Nst2 * (dir) + VLEN * NDF * (idx) + 4 * 64], 0, 3); \
}

Definition at line 71 of file prefetch.h.

◆ __prefetch_load_hop_u_l2

#define __prefetch_load_hop_u_l2 (   a,
  dir,
  idx 
)
Value:
{ \
__builtin_prefetch(&a[NDF * Nst2 * (dir) + VLEN * NDF * (idx) + 0 * 64], 0, 2); \
__builtin_prefetch(&a[NDF * Nst2 * (dir) + VLEN * NDF * (idx) + 1 * 64], 0, 2); \
__builtin_prefetch(&a[NDF * Nst2 * (dir) + VLEN * NDF * (idx) + 2 * 64], 0, 2); \
__builtin_prefetch(&a[NDF * Nst2 * (dir) + VLEN * NDF * (idx) + 3 * 64], 0, 2); \
__builtin_prefetch(&a[NDF * Nst2 * (dir) + VLEN * NDF * (idx) + 4 * 64], 0, 2); \
}

Definition at line 43 of file prefetch.h.

◆ __prefetch_load_hop_vec_l1

#define __prefetch_load_hop_vec_l1 (   a,
  idx,
  is 
)
Value:
{ \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 0 * 64], 0, 3); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 1 * 64], 0, 3); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 2 * 64], 0, 3); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 3 * 64], 0, 3); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 4 * 64], 0, 3); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 5 * 64], 0, 3); \
}

Definition at line 79 of file prefetch.h.

◆ __prefetch_load_hop_vec_l2

#define __prefetch_load_hop_vec_l2 (   a,
  idx,
  is 
)
Value:
{ \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 0 * 64], 0, 2); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 1 * 64], 0, 2); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 2 * 64], 0, 2); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 3 * 64], 0, 2); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 4 * 64], 0, 2); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 5 * 64], 0, 2); \
}

Definition at line 51 of file prefetch.h.

◆ __prefetch_load_luinv

#define __prefetch_load_luinv (   a,
  offset 
)
Value:
{ \
__builtin_prefetch(&a[Nin5 * (site + 1) + VLEN * (offset + 0)], 0, 2); \
__builtin_prefetch(&a[Nin5 * (site + 1) + VLEN * (offset + 4)], 0, 2); \
}

Definition at line 21 of file prefetch.h.

◆ __prefetch_load_luinv_l1

#define __prefetch_load_luinv_l1 (   a,
  offset 
)
Value:
{ \
__builtin_prefetch(&a[Nin5 * (site + 1) + VLEN * (offset + 0)], 0, 3); \
__builtin_prefetch(&a[Nin5 * (site + 1) + VLEN * (offset + 4)], 0, 3); \
}

Definition at line 32 of file prefetch.h.

◆ __prefetch_write_hop1_buf_x_l1

#define __prefetch_write_hop1_buf_x_l1 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 1, 3); \
}

Definition at line 150 of file prefetch.h.

◆ __prefetch_write_hop1_buf_x_l2

#define __prefetch_write_hop1_buf_x_l2 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 1, 2); \
}

Definition at line 133 of file prefetch.h.

◆ __prefetch_write_hop1_buf_y_l1

#define __prefetch_write_hop1_buf_y_l1 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 1, 3); \
}

Definition at line 155 of file prefetch.h.

◆ __prefetch_write_hop1_buf_y_l2

#define __prefetch_write_hop1_buf_y_l2 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 1, 2); \
}

Definition at line 138 of file prefetch.h.

◆ __prefetch_write_hop1_buf_zt_l1

#define __prefetch_write_hop1_buf_zt_l1 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 1, 3); \
__builtin_prefetch(&a[idx + skip * is + 1 * 64], 1, 3); \
__builtin_prefetch(&a[idx + skip * is + 2 * 64], 1, 3); \
}

Definition at line 160 of file prefetch.h.

◆ __prefetch_write_hop1_buf_zt_l2

#define __prefetch_write_hop1_buf_zt_l2 (   a,
  idx,
  is,
  skip 
)
Value:
{ \
__builtin_prefetch(&a[idx + skip * is + 0 * 64], 1, 2); \
__builtin_prefetch(&a[idx + skip * is + 1 * 64], 1, 2); \
__builtin_prefetch(&a[idx + skip * is + 2 * 64], 1, 2); \
}

Definition at line 143 of file prefetch.h.

◆ __prefetch_write_hop_vec_l1

#define __prefetch_write_hop_vec_l1 (   a,
  idx,
  is 
)
Value:
{ \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 0 * 64], 1, 3); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 1 * 64], 1, 3); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 2 * 64], 1, 3); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 3 * 64], 1, 3); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 4 * 64], 1, 3); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 5 * 64], 1, 3); \
}

Definition at line 89 of file prefetch.h.

◆ __prefetch_write_hop_vec_l2

#define __prefetch_write_hop_vec_l2 (   a,
  idx,
  is 
)
Value:
{ \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 0 * 64], 1, 2); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 1 * 64], 1, 2); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 2 * 64], 1, 2); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 3 * 64], 1, 2); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 4 * 64], 1, 2); \
__builtin_prefetch(&a[Nin5 * (idx) + Nin4 * is + 5 * 64], 1, 2); \
}

Definition at line 61 of file prefetch.h.

◆ __prefetch_write_luinv

#define __prefetch_write_luinv (   a,
  offset 
)
Value:
{ \
__builtin_prefetch(&a[Nin5 * (site + 1) + VLEN * (offset + 0)], 1, 2); \
__builtin_prefetch(&a[Nin5 * (site + 1) + VLEN * (offset + 4)], 1, 2); \
}

Definition at line 26 of file prefetch.h.

◆ __prefetch_write_luinv_l1

#define __prefetch_write_luinv_l1 (   a,
  offset 
)
Value:
{ \
__builtin_prefetch(&a[Nin5 * (site + 1) + VLEN * (offset + 0)], 1, 3); \
__builtin_prefetch(&a[Nin5 * (site + 1) + VLEN * (offset + 4)], 1, 3); \
}

Definition at line 37 of file prefetch.h.

VLEN
#define VLEN
Definition: bridgeQXS_Clover_coarse_double.cpp:12
NDF
#define NDF
Definition: field_F_imp_SU2-inc.h:4
AIndex_eo_qxs::idx
int idx(const int in, const int Nin, const int ist, const int Nx2, const int Ny, const int leo, const int Nvol2, const int ex)
Definition: aindex_eo.h:27