use mpi to run on cluster
This commit is contained in:
		
							
								
								
									
										18
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										18
									
								
								Makefile
									
									
									
									
									
								
							@@ -3,20 +3,24 @@ HEADERS=linalg.h mat.h coxeter.h
 | 
			
		||||
#SPECIAL_OPTIONS=-O0 -g -D_DEBUG
 | 
			
		||||
#SPECIAL_OPTIONS=-O3 -pg -funroll-loops -fno-inline
 | 
			
		||||
SPECIAL_OPTIONS=-O3 -flto -funroll-loops -Winline
 | 
			
		||||
#SPECIAL_OPTIONS=-O3 -flto -funroll-loops -Winline -mavx512f -mavx512cd -mavx512er -mavx512pf # KNL
 | 
			
		||||
#SPECIAL_OPTIONS=
 | 
			
		||||
 | 
			
		||||
OPTIONS=-m64 -march=native -mtune=native -std=gnu99 -D_GNU_SOURCE $(SPECIAL_OPTIONS)
 | 
			
		||||
OPTIONS=-I../mps/include -L../mps/lib -pthread -m64 -std=gnu99 -D_GNU_SOURCE $(SPECIAL_OPTIONS)
 | 
			
		||||
 | 
			
		||||
all: singular_values special_element
 | 
			
		||||
all: singular_values special_element convert
 | 
			
		||||
 | 
			
		||||
singular_values: singular_values.o coxeter.o linalg.o mat.o
 | 
			
		||||
	gcc $(OPTIONS) -o singular_values coxeter.o linalg.o singular_values.o mat.o -lm -lgsl -lcblas -lgmp -lmps -lpthread
 | 
			
		||||
convert: convert.hs
 | 
			
		||||
	ghc --make -dynamic convert.hs
 | 
			
		||||
 | 
			
		||||
singular_values: singular_values.o coxeter.o mat.o
 | 
			
		||||
	mpicc $(OPTIONS) -o singular_values coxeter.o singular_values.o mat.o -lm -lgmp -lmps
 | 
			
		||||
 | 
			
		||||
special_element: special_element.o coxeter.o linalg.o mat.o
 | 
			
		||||
	gcc $(OPTIONS) -o special_element coxeter.o linalg.o special_element.o mat.o -lm -lgsl -lcblas -lgmp -lmps -lpthread
 | 
			
		||||
	gcc $(OPTIONS) -o special_element coxeter.o linalg.o special_element.o mat.o -lm -lgmp -lmps
 | 
			
		||||
 | 
			
		||||
singular_values.o: singular_values.c $(HEADERS)
 | 
			
		||||
	gcc $(OPTIONS) -c singular_values.c
 | 
			
		||||
	mpicc $(OPTIONS) -c singular_values.c
 | 
			
		||||
 | 
			
		||||
special_element.o: special_element.c $(HEADERS)
 | 
			
		||||
	gcc $(OPTIONS) -c special_element.c
 | 
			
		||||
@@ -31,4 +35,4 @@ mat.o: mat.c $(HEADERS)
 | 
			
		||||
	gcc $(OPTIONS) -c mat.c
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	rm -f singular_values special_element coxeter.o linalg.o singular_values.o mat.o special_element.o
 | 
			
		||||
	rm -f singular_values special_element coxeter.o linalg.o singular_values.o mat.o special_element.o convert.hi convert.o convert
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user