Skip to content
Chris K edited this page May 5, 2016 · 16 revisions

Welcome to the Grid wiki!


UDEL Hackathon

  • Running on Metis

  • How to build Grid

git clone https://github.com/chulwoo1/Grid  
cd Grid  
aclocal  
autoheader  
automake -f --add-missing  
autoconf  
cd ..  
mkdir build  
cd build  
../Grid/configure CXX=pgc++ \
CXXFLAGS="-DBOOST_RANLUX -I$BOOST_ROOT/include --c++11 -w -O3 -Mnounroll" \
LDFLAGS="-L$BOOST_ROOT/lib -lboost_random -lboost_system" \
--enable-precision=single --enable-simd=DEBUG  
make
  • To build with OpenACC pragmas
../Grid/configure CXX=pgc++ \
CXXFLAGS="-acc -Minfo=accel -DBOOST_RANLUX -I$BOOST_ROOT/include --c++11 -O3 -Mnounroll" \
LDFLAGS="-L$BOOST_ROOT/lib -lboost_random -lboost_system" \
--enable-precision=single --enable-simd=DEBUG  

**Alternative for generating Grid configure

automake --add-missing
autoreconf -f
  • How to generate a call graph with gprof and gprof2dot
    1. compile and link the library and main program with an additional -pg option
    2. run the program as usual. A file gmon.out will be written
    3. parse the file using “gprof” to see the call graphs
    4. gprof -p > flat.out will generate the flat call graph output
    5. visualize the call graph with a python script gprof2dot: gprof | gprof2dot > call-graph.dot
    6. convert the dot file into different formats: dot -Tpdf call-graph.dot > call-graph.pdf

Single node CPU Benchmarking

  • Ivy bridge
  • Haswell
  • KNC
  • KNL if someone gets me access!

Thread Scaling


MPI scaling


Some compiler comparisons

  • clang++
  • clang-omp++
  • icpc
  • icpc -fopenmp

NOTIFICATIONS:

PGI_ACC_NOTIFY=3 ./Test_cayley_even_odd 2>&1 | tee run
Clone this wiki locally