Commit 908afd35 authored by Nichols, Stephen's avatar Nichols, Stephen
Browse files

Changes to be committed:

	new file:   Makefile_summit
	new file:   RUNTIME_FILES/input
	new file:   RUNTIME_FILES/matrix
	new file:   RUNTIME_FILES/matrix6
	new file:   RUNTIME_FILES/matrix_meumapps6
	new file:   RUNTIME_FILES/matrix_ops.f90
	new file:   RUNTIME_FILES/summit_cpu.lsf
	new file:   RUNTIME_FILES/summit_gpu.lsf
	new file:   SCRIPTS/build_summit.sh
	new file:   SCRIPTS/setUpModules_summit.sh
	new file:   custom_linsolve.f90
	new file:   global_parameters.f90
	new file:   my_cudainterfaces.f90
	new file:   my_hipinterfaces.f90
	new file:   nvtx.f90
	new file:   timing_functions.f90

Forgot to add the files ....
parent bec581ba
Loading
Loading
Loading
Loading

Makefile_summit

0 → 100644
+76 −0
Original line number Diff line number Diff line
SHELL=/bin/bash

MACHINE = Summit
### the Spock compiler flags also work on Crusher
#MACHINE = Spock

#### Summit
ifeq ($(MACHINE),Summit)
   ## CPU-Only
   #FC      = xlf
   #FFLAGS = -O3 -qfree -qpreprocess -qtune=pwr9 -qarch=pwr9 -qtgtarch=sm_70 -W@,"-v"
   #LDFLAGS =

   ## GPUs with OpenMP Offloading
   FC      = xlcuf
   FFLAGS = -O3 -qfree -qpreprocess -qsmp=omp -qoffload -qcuda -qtune=pwr9 -qarch=pwr9 -qtgtarch=sm_70 -W@,"-v"
   FFLAGS += -DUSE_OPENMP_OFFLOAD -DUSE_CUDA
   LDFLAGS = -qsmp=omp -qoffload -L${OLCF_CUDA_ROOT}/lib64 -lnvToolsExt -lcudart
endif

#### Spock and Crusher
ifeq ($(MACHINE),Spock)
   ROCM_LIB_PATH=${OLCF_ROCM_ROOT}/lib
   ROCM_INC_PATH=${OLCF_ROCM_ROOT}/include

   FC = ftn

   ### GPU
   FFLAGS = -N1023 -O3 -homp -em -ef -eT -ffree -DUSE_OPENMP_OFFLOAD -DUSE_AMD 
   ##FFLAGS += -I$(ROCM_INC_PATH)
   LDFLAGS = -homp -L$(ROCM_LIB_PATH) -lamdhip64 -lhsa-runtime64

   ### CPU-only without OpenMP
   #FFLAGS = -N1023 -O3 -hnoomp -em -ef -eT -ffree
   #LDFLAGS = -hnoomp

   ### CPU-only with OpenMP flag ... no cpu-based openmp is in the code
   #FFLAGS = -N1023 -O3 -homp -em -ef -eT -ffree
   #LDFLAGS = -homp
endif

F_SRC = custom_linsolve.f90

MODS =

ifneq (,$(findstring USE_CUDA,$(FFLAGS)))
   MODS += my_cudainterfaces.f90
   MODS += nvtx.f90
endif
ifneq (,$(findstring USE_AMD,$(FFLAGS)))
   MODS += my_hipinterfaces.f90
endif

MODS += global_parameters.f90 timing_functions.f90 matrix_ops.f90

OBJECTS = $(MODS:.f90=.o) $(F_SRC:.f90=.o)
EXE = custom_linsolve.x

# rules for makefile
$(EXE): $(OBJECTS)
	$(FC) -o $@ $^ $(LDFLAGS)

%.o:%.f90
	$(FC) $(FFLAGS) -c -o $@ $<

default: all

all: $(EXE)

clean:
	rm -f *.o *.mod *.x *.s

clobber:
	rm -f *.o *.mod *.x *.s *~

RUNTIME_FILES/input

0 → 100644
+6 −0
Original line number Diff line number Diff line
2 2 2
16 128


first line is nx, ny, nz
second line is nteams, nthreads

RUNTIME_FILES/matrix

0 → 100644
+7 −0
Original line number Diff line number Diff line
6
3.0 1.0 2.0 0.3 -1.8 0.0
-6.0 0.4 3.0 2.6 -1.8 -5.0
2.0 -5.0 8.0 -10.3 2.2 4.0
-2.0 1.0 -8.0 0.3 4.8 -1.0
6.0 1.1 5.4 -5.3 1.8 1.0
2.0 -5.0 2.0 -0.3 -0.8 -9.0

RUNTIME_FILES/matrix6

0 → 100644
+7 −0
Original line number Diff line number Diff line
6
3.0 1.0 2.0 0.3 -1.8 0.0
-6.0 0.4 3.0 2.6 -1.8 -5.0
2.0 -5.0 8.0 -10.3 2.2 4.0
-2.0 1.0 -8.0 0.3 4.8 -1.0
6.0 1.1 5.4 -5.3 1.8 1.0
2.0 -5.0 2.0 -0.3 -0.8 -9.0
+7 −0
Original line number Diff line number Diff line
6
15970710450.3098679 -22759620211.5585022 0.000000000000000000E+00 0.000000000000000000E+00 0.000000000000000000E+00 0.000000000000000000E+00
0.000000000000000000E+00 22759620211.5585022 -7191753351.78947639 0.000000000000000000E+00 0.000000000000000000E+00 0.000000000000000000E+00
0.000000000000000000E+00 0.000000000000000000E+00 0.000000000000000000E+00 29153743254.0771141 -4034123109.03958082 0.000000000000000000E+00
0.000000000000000000E+00 0.000000000000000000E+00 0.000000000000000000E+00 0.000000000000000000E+00 4034123109.03958082 -14800757876.6520786
0.000000000000000000E+00 1.00000000000000000 0.000000000000000000E+00 0.000000000000000000E+00 0.000000000000000000E+00 0.000000000000000000E+00
0.000000000000000000E+00 0.000000000000000000E+00 0.000000000000000000E+00 0.000000000000000000E+00 1.00000000000000000 0.000000000000000000E+00
Loading