IcBench: Makefile
This commit is contained in:
68
makefile
Normal file → Executable file
68
makefile
Normal file → Executable file
@ -1,9 +1,15 @@
|
||||
# powturbo (c) Copyright 2013-2018
|
||||
# ----------- Downloading + Compiling ----------------------
|
||||
# git clone --recursive git://github.com/powturbo/TurboPFor.git
|
||||
# Download or clone TurboPFor:
|
||||
# git clone git://github.com/powturbo/TurboPFor.git
|
||||
# make
|
||||
#
|
||||
# Minimum make: "make NCODEC1=1 NCODEC2=1 NTRANFORM=1" to compile only TurboPFor
|
||||
# To compile icapp with LZ4 and BITSHUFFLE. (lz4+Bitshuffle muss be in directory ext)
|
||||
# make icapp LZ4=1 or make LZ4=1 BITSHUFFLE=1
|
||||
#
|
||||
# To benchmark external libraries also:
|
||||
# git clone --recursive git://github.com/powturbo/TurboPFor.git
|
||||
# make: "make CODEC1=1 CODEC2=1"
|
||||
|
||||
# Linux: "export CC=clang" "export CXX=clang". windows mingw: "set CC=gcc" "set CXX=g++" or uncomment the CC,CXX lines
|
||||
CC ?= gcc
|
||||
@ -26,10 +32,7 @@ MARCH=-march=native
|
||||
|
||||
ifeq ($(NSIMD),1)
|
||||
DEFS+=-DNSIMD
|
||||
NCODEC1=1
|
||||
NCODEC2=1
|
||||
else
|
||||
NSIMD=0
|
||||
CFLAGS+=-DUSE_SSE -mssse3
|
||||
CXXFLAGS+=-DUSE_SSE
|
||||
endif
|
||||
@ -71,22 +74,13 @@ endif
|
||||
endif
|
||||
|
||||
#---------------------- make args --------------------------
|
||||
ifeq ($(NCODEC1),1)
|
||||
DEFS+=-DNCODEC1
|
||||
else
|
||||
NCODEC1=0
|
||||
ifeq ($(CODEC1),1)
|
||||
DEFS+=-DCODEC1=1
|
||||
CFLAGS+=-Iext/lz4/lib -Iext/simdcomp/include -Iext/MaskedVByte/include -Iext/LittleIntPacker/include -Iext/streamvbyte/include
|
||||
endif
|
||||
|
||||
ifeq ($(NCODEC2),1)
|
||||
DEFS+=-DNCODEC2
|
||||
else
|
||||
NCODEC2=0
|
||||
endif
|
||||
|
||||
ifeq ($(NTRANFORM),1)
|
||||
DEFS+=-DNTRANSFORM
|
||||
else
|
||||
NTRANSFORM=0
|
||||
ifeq ($(CODEC2),1)
|
||||
DEFS+=-DCODEC2=1
|
||||
endif
|
||||
|
||||
ifeq ($(BLOSC),1)
|
||||
@ -99,7 +93,15 @@ else
|
||||
CXXFLAGS+=-std=gnu++0x
|
||||
endif
|
||||
|
||||
CFLAGS+=$(DDEBUG) -w -Wall -std=gnu99 -DUSE_THREADS -fstrict-aliasing -Iext -Iext/lz4/lib -Iext/simdcomp/include -Iext/MaskedVByte/include -Iext/LittleIntPacker/include -Iext/streamvbyte/include $(DEFS)
|
||||
ifeq ($(LZ4),1)
|
||||
CFLAGS+=-DLZ4 -Ilz4/lib
|
||||
endif
|
||||
|
||||
ifeq ($(BITSHUFFLE),1)
|
||||
CFLAGS+=-DBITSHUFFLE -Iext/bitshuffle/lz4
|
||||
endif
|
||||
|
||||
CFLAGS+=$(DDEBUG) -w -Wall -std=gnu99 -DUSE_THREADS -fstrict-aliasing -Iext $(DEFS)
|
||||
CXXFLAGS+=$(DDEBUG) -w -fpermissive -Wall -fno-rtti -Iext/FastPFor/headers $(DEFS)
|
||||
|
||||
all: icbench idxcr idxqry idxseg icapp
|
||||
@ -175,7 +177,7 @@ varintg8iu.o: ext/varintg8iu.c ext/varintg8iu.h
|
||||
$(CC) -O2 $(CFLAGS) $(MARCH) -c -std=c99 ext/varintg8iu.c
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
ifeq ($(NCODEC1), 0)
|
||||
ifeq ($(CODEC1), 1)
|
||||
OB+=ext/streamvbyte/src/streamvbyte.o ext/streamvbyte/src/streamvbytedelta.o
|
||||
OB+=ext/MaskedVByte/src/varintencode.o ext/MaskedVByte/src/varintdecode.o
|
||||
OB+=ext/simdcomp/src/simdintegratedbitpacking.o ext/simdcomp/src/simdcomputil.o ext/simdcomp/src/simdbitpacking.o ext/simdcomp/src/simdpackedselect.o
|
||||
@ -196,10 +198,13 @@ OB+=ext/JASSv2/source/compress_integer_qmx_improved.o ext/JASSv2/source/asserts.
|
||||
endif
|
||||
OB+=ext/varintg8iu.o
|
||||
OB+=ext/rc.o
|
||||
OB+=ext/lz4/lib/lz4hc.o ext/lz4/lib/lz4.o
|
||||
LZ4=1
|
||||
BITSHUFFLE=1
|
||||
endif
|
||||
|
||||
#----------------------------------------
|
||||
ifeq ($(NCODEC2), 0)
|
||||
ifeq ($(CODEC2), 1)
|
||||
ext/polycom/optpfd.o: ext/polycom/optpfd.c
|
||||
$(CC) -O2 $(MARCH) $(CFLAGS) $< -c -o $@
|
||||
|
||||
@ -221,8 +226,6 @@ else
|
||||
#OB+=$(ZD)adler32.o $(ZD)crc32.o $(ZD)compress.o $(ZD)deflate.o $(ZD)infback.o $(ZD)inffast.o $(ZD)inflate.o $(ZD)inftrees.o $(ZD)trees.o $(ZD)uncompr.o $(ZD)zutil.o
|
||||
endif
|
||||
|
||||
OB+=ext/lz4/lib/lz4hc.o ext/lz4/lib/lz4.o
|
||||
|
||||
ifeq ($(BLOSC),1)
|
||||
LDFLAGS+=-lpthread
|
||||
#ext/c-blosc/blosc/libblosc.a
|
||||
@ -250,17 +253,28 @@ DEFS+=-DLZTURBO
|
||||
OB+=../dev/lz/lz8c.o ../dev/lz/lzbc.o
|
||||
endif
|
||||
|
||||
|
||||
OB+=eliasfano.o vsimple.o $(TRANSP) transpose.o transpose_sse.o
|
||||
ifeq ($(AVX2),1)
|
||||
OB+=transpose_avx2.o
|
||||
endif
|
||||
|
||||
#------------------------
|
||||
ICLIB=bitpack.o bitpack_sse.o bitunpack.o bitunpack_sse.o vp4c.o vp4c_sse.o vp4d.o vp4d_sse.o bitutil.o fp.o vint.o vsimple.o
|
||||
ICLIB=bitpack.o bitpack_sse.o bitunpack.o bitunpack_sse.o vp4c.o vp4c_sse.o vp4d.o vp4d_sse.o bitutil.o fp.o vint.o vsimple.o transpose.o transpose_sse.o ext/trlec.o ext/trled.o
|
||||
|
||||
ifeq ($(LZ4),1)
|
||||
ICLIB+=ext/lz4/lib/lz4hc.o ext/lz4/lib/lz4.o
|
||||
endif
|
||||
|
||||
ifeq ($(BITSHUFFLE),1)
|
||||
ICLIB+=ext/bitshuffle/src/bitshuffle.o ext/bitshuffle/src/iochain.o ext/bitshuffle/src/bitshuffle_core.o
|
||||
ifeq ($(LZ4),1)
|
||||
else
|
||||
ICLIB+=ext/bitshuffle/lz4/lz4.o
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(AVX2),1)
|
||||
ICLIB+=bitpack_avx2.o bitunpack_avx2.o vp4c_avx2.o vp4d_avx2.o
|
||||
ICLIB+=bitpack_avx2.o bitunpack_avx2.o vp4c_avx2.o vp4d_avx2.o transpose_avx2.o
|
||||
endif
|
||||
|
||||
ifeq ($(SIMDH),1)
|
||||
|
Reference in New Issue
Block a user