-
Notifications
You must be signed in to change notification settings - Fork 88
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
185 lines (161 loc) · 5.1 KB
/
Copy pathCMakeLists.txt
File metadata and controls
185 lines (161 loc) · 5.1 KB
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
add_subdirectory(icache_buster)
set(COROUTINES_FLAG "")
add_library(kernel Kernel.cc Kernel.h)
target_link_libraries(kernel data_objects)
target_compile_options(kernel PRIVATE ${COROUTINES_FLAG})
add_library(fakeio FakeIO.h)
target_link_libraries(fakeio data_objects)
add_library(delay Delay.h)
target_link_libraries(delay data_objects kernel)
add_library(ibrun IBRun.h)
target_link_libraries(ibrun data_objects kernel icachebuster)
add_library(gemm GEMM.cc GEMM.h
${FBGEMM_SRC_DIR}/bench/BenchUtils.cc
${FBGEMM_SRC_DIR}/test/QuantizationHelpers.cc
)
if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|amd64")
target_compile_options(gemm PRIVATE
${COROUTINES_FLAG}
-m64
-mavx2
-mfma
-masm=intel)
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|arm64")
target_compile_options(gemm PRIVATE
${COROUTINES_FLAG}
-march=armv8.5-a+sve2
-mcpu=native)
endif()
target_link_directories(gemm
PUBLIC
${ADSIM_STAGING_DIR}/include
)
target_link_libraries(gemm data_objects kernel fbgemm)
target_include_directories(gemm
PRIVATE
${FBGEMM_SRC_DIR}
${ADSIM_STAGING_DIR}/include
)
add_dependencies(gemm fbgemm)
add_library(embedding Embedding.cc Embedding.h)
if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|amd64")
target_compile_options(embedding PRIVATE
${COROUTINES_FLAG}
-m64
-mavx2
-mfma
-masm=intel)
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|arm64")
target_compile_options(embedding PRIVATE
${COROUTINES_FLAG}
-march=armv8.5-a+sve2
-mcpu=native)
endif()
target_link_directories(embedding
PUBLIC
${ADSIM_STAGING_DIR}/include
)
target_link_libraries(embedding data_objects kernel fbgemm)
target_include_directories(embedding
PRIVATE
${FBGEMM_SRC_DIR}
${ADSIM_STAGING_DIR}/include
)
add_dependencies(embedding fbgemm)
add_library(compress
Compress.cc
${CMAKE_SOURCE_DIR}/third_party/lzbench/_lzbench/compressors.cpp
${CMAKE_SOURCE_DIR}/third_party/lzbench/_lzbench/lzbench.cpp
)
target_include_directories(compress
PUBLIC
${CMAKE_SOURCE_DIR}/third_party/lzbench/_lzbench
${CMAKE_SOURCE_DIR}/third_party/lzbench
)
target_compile_options(compress
PRIVATE
"-Wno-unknown-pragmas"
"-Wno-sign-compare "
"-Wno-conversion"
"-fomit-frame-pointer"
"-fstrict-aliasing"
"-ffast-math"
"-O3"
"-DNDEBUG"
"-DBENCH_REMOVE_BLOSCLZ"
"-DBENCH_REMOVE_BRIEFLZ"
"-DBENCH_REMOVE_BROTLI"
"-DBENCH_REMOVE_CRUSH"
"-DBENCH_REMOVE_CSC"
"-DBENCH_REMOVE_DENSITY"
"-DBENCH_REMOVE_FASTLZ"
"-DBENCH_REMOVE_FASTLZMA2"
"-DBENCH_REMOVE_GIPFELI"
"-DBENCH_REMOVE_GLZA"
"-DBENCH_REMOVE_LIBDEFLATE"
"-DBENCH_REMOVE_LIZARD"
"-DBENCH_REMOVE_LZF"
"-DBENCH_REMOVE_LZFSE"
"-DBENCH_REMOVE_LZO"
"-DBENCH_REMOVE_LZVN"
"-DBENCH_REMOVE_LZG"
"-DBENCH_REMOVE_LZHAM"
"-DBENCH_REMOVE_LZJB"
"-DBENCH_REMOVE_LZLIB"
"-DBENCH_REMOVE_LZMA"
"-DBENCH_REMOVE_LZMAT"
"-DBENCH_REMOVE_LZRW"
"-DBENCH_REMOVE_LZSSE"
"-DBENCH_REMOVE_PITHY"
"-DBENCH_REMOVE_QUICKLZ"
"-DBENCH_REMOVE_SHRINKER"
"-DBENCH_REMOVE_SLZ"
"-DBENCH_REMOVE_SNAPPY"
"-DBENCH_REMOVE_TORNADO"
"-DBENCH_REMOVE_UCL"
"-DBENCH_REMOVE_WFLZ"
"-DBENCH_REMOVE_XPACK"
"-DBENCH_REMOVE_XZ"
"-DBENCH_REMOVE_YALZ77"
"-DBENCH_REMOVE_YAPPY"
"-DBENCH_REMOVE_ZLING"
)
target_link_libraries(compress data_objects kernel)
target_compile_options(compress PRIVATE ${COROUTINES_FLAG})
add_library(serialize Serialize.h)
target_link_libraries(serialize data_objects kernel Serialize-cpp2)
target_compile_options(serialize PRIVATE ${COROUTINES_FLAG})
add_library(hashmap HashMap.cc HashMap.h)
target_link_libraries(hashmap data_objects kernel)
target_compile_options(hashmap PRIVATE ${COROUTINES_FLAG})
add_library(concurrenthashmap ConcurrentHashMap.cc ConcurrentHashMap.h)
target_link_libraries(concurrenthashmap data_objects kernel)
target_compile_options(concurrenthashmap PRIVATE ${COROUTINES_FLAG})
add_library(tensordeser TensorDeser.cc TensorDeser.h)
target_link_libraries(tensordeser data_objects kernel ${JEMALLOC_LIB})
target_compile_options(tensordeser PRIVATE ${COROUTINES_FLAG})
add_library(rebatch Rebatch.cc Rebatch.h)
target_link_libraries(rebatch data_objects kernel)
target_compile_options(rebatch PRIVATE ${COROUTINES_FLAG})
add_library(deepcopy DeepCopy.h)
target_link_libraries(deepcopy data_objects kernel)
target_compile_options(deepcopy PRIVATE ${COROUTINES_FLAG})
add_library(shape Shape.h)
target_link_libraries(shape tlsconnect data_objects kernel AdSim-cpp2)
target_compile_options(shape PRIVATE ${COROUTINES_FLAG})
add_library(dwarfs Dwarfs.cc Dwarfs.h)
target_link_libraries(dwarfs
compress
concurrenthashmap
rebatch
deepcopy
delay
embedding
fakeio
gemm
hashmap
ibrun
serialize
shape
tensordeser)
target_compile_options(dwarfs PRIVATE ${COROUTINES_FLAG})