Exercise: Analyze the MPI ray tracer
A C version of the ray tracer program with MPI parallelization can be found in the folder RAY-itac. Compile it by simply typing "make". It builds an instrumented binary that is ready for running and analysis with ITAC.
Take an ITAC trace of the run as shown in the lecture (details see below) with tilesize=10, tilsize=100, and tilesize=2000 (the tile size is defined at the start of the main function).
Use 30 processes on a CoolMUC-4 node. Look at the traces: Can you find obvious problems?
Profiling with Intel Trace Analyzer and Collector (ITAC)
Guidelines for a simple run with ITAC
1. Export environment variables
$ module load intel-toolkit
$ export VT_FLUSH_PREFIX=/tmp
$ export VT_LOGFILE_FORMAT=SINGLESTF
2. After running the program (within a batch job), it creates a trace file, named as RAY_C_MPI.exe.single.stf
4. View the resulting trace file with ITAC:
$ traceanalyzer RAY_C_MPI.exe.single.stf
Remember that you will have to connect to the cluster with X forwarding enabled (-X or -Y on the ssh command line) so that the GUI can be displayed on your end.