| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 | # tile size. Should be changed in mult.jl as wellSTRIDE=72# ICC compiler#CC =icc#CFLAGS=-restrict -unroll4 -ipo -falign-loops=256 -O3 -DSTRIDE=${STRIDE} -march=native $(shell pkg-config --cflags starpu-1.3)# GCC compilerCC=gccNVCC=nvccENABLE_CUDA=noLD=$(CC)ifeq ($(ENABLE_CUDA),yes)        LD := ${NVCC}endifCFLAGS = -O3 -g -DSTRIDE=${STRIDE} $(shell pkg-config --cflags starpu-1.3)CPU_CFLAGS = ${CFLAGS} -Wall -mavx -fomit-frame-pointer -march=native -ffast-mathCUDA_CFLAGS = ${CFLAGS}LDFLAGS +=$(shell pkg-config --libs starpu-1.3)EXTERNLIB=extern_tasks.soGENERATEDLIB=generated_tasks.soC_OBJECTS=$(patsubst %.c,%.o,$(wildcard gen*.c))CUDA_OBJECTS=$(patsubst %.cu,%.o,$(wildcard gen*.cu))ifneq ($(ENABLE_CUDA),yes)	CUDA_OBJECTS:=endifLIBPATH=${PWD}/../StarPU.jl/liball: ${EXTERNLIB}mult: mult.c cpu_mult.o #gpu_mult.o	$(CC) $(CPU_CFLAGS) $^ -o $@ $(LDFLAGS)%.o: %.c	$(CC) -c -fPIC $(CPU_CFLAGS) $^ -o $@%.o: %.cu	$(NVCC) -dc $(CUDA_CFLAGS) $^ --shared --compiler-options '-fPIC' -o $@ $(LDFLAGS)${EXTERNLIB}: cpu_mult.c	$(CC) $(CFLAGS) -shared -fPIC $(LDFLAGS) $^ -o $@${GENERATEDLIB}: $(C_OBJECTS) $(CUDA_OBJECTS)	$(LD) -shared $(LDFLAGS) $^ -o $@.PHONY: cleanclean:	rm -f mult *.so *.o genc_*.c gencuda_*.cu *.dat# Performance Testscstarpu.dat: mult	STARPU_NOPENCL=0 STARPU_SCHED=dmda STARPU_CALIBRATE=1 ./mult > $@julia_generatedc.dat:	LD_LIBRARY_PATH+=${LIBPATH} STARPU_NOPENCL=0 STARPU_SCHED=dmda STARPU_CALIBRATE=1 julia mult.jl $@julia_native.dat:	LD_LIBRARY_PATH+=${LIBPATH} STARPU_NOPENCL=0 STARPU_SCHED=dmda STARPU_CALIBRATE=1 julia mult_native.jl $@julia_calllib.dat: ${EXTERNLIB}	LD_LIBRARY_PATH+=${LIBPATH} JULIA_TASK_LIB="${EXTERNLIB}" STARPU_NOPENCL=0 STARPU_SCHED=dmda STARPU_CALIBRATE=1 julia mult.jl julia_calllib.dattest: cstarpu.dat julia_generatedc.dat julia_native.dat julia_calllib.dat
 |