forked from JeffersonLab/qphix-codegen
-
Notifications
You must be signed in to change notification settings - Fork 1
/
customMake.avx
41 lines (33 loc) · 1.17 KB
/
customMake.avx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Define compute precision (1=float, 2=double)
PRECISION ?= 1
# Whether to use AVX2 ISA
AVX2 ?= 0
# Enable Lower Precision if set to 1
ENABLE_LOW_PRECISION ?= 0
# define SOA length
# can be one of the 4 or 8 for AV/SP
# and one of the 2 or 4 for AV/DP
SOALEN ?= 4
# Enable serial spin compute in Dslash
SERIAL_SPIN=1
# Prefetching options
# FOR MIC SET THESE ALL TO 1
#
PREF_L1_SPINOR_IN = 0
PREF_L2_SPINOR_IN = 0
PREF_L1_SPINOR_OUT = 0
PREF_L2_SPINOR_OUT = 0
PREF_L1_GAUGE = 0
PREF_L2_GAUGE = 0
PREF_L1_CLOVER = 0
PREF_L2_CLOVER = 0
# Gather / Scatter options
USE_LDUNPK = 1 # Use loadunpack instead of gather
USE_PKST = 1 # Use packstore instead of scatter
USE_SHUFFLES = 0 # Use loads & Shuffles to transpose spinor when SOALEN>4
NO_GPREF_L1 = 1 # Generate bunch of normal prefetches instead of one gather prefetch for L1
NO_GPREF_L2 = 1 # Generate bunch of normal prefetches instead of one gather prefetch for L2
# Enable nontemporal streaming stores
ENABLE_STREAMING_STORES ?= 1
USE_PACKED_GAUGES ?= 1 # Use 2D xy packing for Gauges
USE_PACKED_CLOVER ?= 1 # Use 2D xy packing for Clover