2022-02-15 01:34:06 +00:00
|
|
|
HEADERS=linalg.h mat.h coxeter.h enumerate_triangle_group.h parallel.h
|
2020-07-01 14:59:16 +00:00
|
|
|
|
2022-04-14 21:23:37 +00:00
|
|
|
#SPECIAL_OPTIONS=-O0 -g -D_DEBUG -DQEXT_SQRT5
|
2022-02-15 01:34:06 +00:00
|
|
|
#SPECIAL_OPTIONS=-O3 -pg -g -funroll-loops -fno-inline
|
2022-04-14 21:23:37 +00:00
|
|
|
SPECIAL_OPTIONS=-O3 -flto -funroll-loops -Winline -DQEXT_SQRT5
|
2021-10-01 18:36:56 +00:00
|
|
|
#SPECIAL_OPTIONS=-O3 -flto -funroll-loops -Winline -mavx512f -mavx512cd -mavx512er -mavx512pf # KNL
|
2020-07-01 14:59:16 +00:00
|
|
|
#SPECIAL_OPTIONS=
|
|
|
|
|
2021-10-01 18:36:56 +00:00
|
|
|
OPTIONS=-I../mps/include -L../mps/lib -pthread -m64 -std=gnu99 -D_GNU_SOURCE $(SPECIAL_OPTIONS)
|
2020-07-01 14:59:16 +00:00
|
|
|
|
2022-02-15 01:34:06 +00:00
|
|
|
all: singular_values special_element convert billiard_words
|
2020-07-01 14:59:16 +00:00
|
|
|
|
2021-10-01 18:36:56 +00:00
|
|
|
convert: convert.hs
|
|
|
|
ghc --make -dynamic convert.hs
|
|
|
|
|
2021-10-04 00:18:10 +00:00
|
|
|
billiard_words: billiard_words.hs
|
|
|
|
ghc --make -dynamic billiard_words.hs
|
|
|
|
|
2022-02-15 01:34:06 +00:00
|
|
|
singular_values: singular_values.o coxeter.o mat.o enumerate_triangle_group.o parallel.o
|
|
|
|
mpicc $(OPTIONS) -o singular_values coxeter.o singular_values.o mat.o enumerate_triangle_group.o parallel.o -lm -lgmp -lmps
|
2021-10-23 17:09:40 +00:00
|
|
|
|
2022-04-14 00:23:38 +00:00
|
|
|
singular_values_barbot: singular_values_barbot.o coxeter.o mat.o enumerate_triangle_group.o parallel.o
|
|
|
|
mpicc $(OPTIONS) -o singular_values_barbot coxeter.o singular_values_barbot.o mat.o enumerate_triangle_group.o parallel.o -lm -lgmp -lmps
|
|
|
|
|
2022-02-15 01:34:06 +00:00
|
|
|
#singular_values_mpi: singular_values_mpi.o coxeter.o mat.o
|
|
|
|
# mpicc $(OPTIONS) -o singular_values_mpi coxeter.o singular_values_mpi.o mat.o -lm -lgmp -lmps
|
2020-07-01 14:59:16 +00:00
|
|
|
|
2021-10-23 21:04:12 +00:00
|
|
|
special_element: special_element.o coxeter.o linalg.o mat.o enumerate_triangle_group.o
|
|
|
|
gcc $(OPTIONS) -o special_element coxeter.o linalg.o special_element.o mat.o enumerate_triangle_group.o -lm -lgmp -lmps -lgsl -lcblas
|
2021-04-01 03:45:25 +00:00
|
|
|
|
2020-07-01 14:59:16 +00:00
|
|
|
singular_values.o: singular_values.c $(HEADERS)
|
2021-10-23 17:09:40 +00:00
|
|
|
gcc $(OPTIONS) -c singular_values.c
|
|
|
|
|
2022-04-14 00:23:38 +00:00
|
|
|
singular_values_barbot.o: singular_values_barbot.c $(HEADERS)
|
|
|
|
gcc $(OPTIONS) -c singular_values_barbot.c
|
|
|
|
|
2022-02-15 01:34:06 +00:00
|
|
|
#singular_values_mpi.o: singular_values_mpi.c $(HEADERS)
|
|
|
|
# mpicc $(OPTIONS) -c singular_values_mpi.c
|
2020-07-01 14:59:16 +00:00
|
|
|
|
2021-04-01 03:45:25 +00:00
|
|
|
special_element.o: special_element.c $(HEADERS)
|
|
|
|
gcc $(OPTIONS) -c special_element.c
|
|
|
|
|
2021-10-23 21:04:12 +00:00
|
|
|
enumerate_triangle_group.o: enumerate_triangle_group.c $(HEADERS)
|
|
|
|
gcc $(OPTIONS) -c enumerate_triangle_group.c
|
|
|
|
|
2020-07-01 14:59:16 +00:00
|
|
|
linalg.o: linalg.c $(HEADERS)
|
|
|
|
gcc $(OPTIONS) -c linalg.c
|
|
|
|
|
2020-08-02 22:48:33 +00:00
|
|
|
coxeter.o: coxeter.c $(HEADERS)
|
|
|
|
gcc $(OPTIONS) -c coxeter.c
|
2020-07-01 14:59:16 +00:00
|
|
|
|
2020-07-02 02:26:42 +00:00
|
|
|
mat.o: mat.c $(HEADERS)
|
|
|
|
gcc $(OPTIONS) -c mat.c
|
|
|
|
|
2022-02-15 01:34:06 +00:00
|
|
|
parallel.o: parallel.c $(HEADERS)
|
|
|
|
gcc $(OPTIONS) -c parallel.c
|
|
|
|
|
2020-07-01 14:59:16 +00:00
|
|
|
clean:
|
2022-04-14 00:23:38 +00:00
|
|
|
rm -f singular_values singular_values_barbot special_element singular_values_mpi coxeter.o linalg.o singular_values.o singular_values_barbot.o singular_values_mpi.o mat.o special_element.o convert.hi convert.o convert billiard_words.hi billiard_words.o billiard_words enumerate_triangle_group.o parallel.o
|