Commit fa7cb2d2 authored by David Hrbáč's avatar David Hrbáč

Links OK

parent 49cf19c0
Pipeline #5201 failed with stages
in 41 seconds
......@@ -3,7 +3,7 @@
* Aislinn is a dynamic verifier for MPI programs. For a fixed input it covers all possible runs with respect to nondeterminism introduced by MPI. It allows to detect bugs (for sure) that occurs very rare in normal runs.
* Aislinn detects problems like invalid memory accesses, deadlocks, misuse of MPI, and resource leaks.
* Aislinn is open-source software; you can use it without any licensing limitations.
* Web page of the project: [http://verif.cs.vsb.cz/aislinn/](http://verif.cs.vsb.cz/aislinn/)
* [Web page][a] of the project.
!!! note
Aislinn is software developed at IT4Innovations and some parts are still considered experimental. If you have any questions or experienced any problems, contact the author: <mailto:stanislav.bohm@vsb.cz>.
......@@ -100,3 +100,5 @@ There are also some limitations bounded to the current version and they will be
* All files containing MPI calls have to be recompiled by MPI implementation provided by Aislinn. The files that does not contain MPI calls, they do not have to recompiled. Aislinn MPI implementation supports many commonly used calls from MPI-2 and MPI-3 related to point-to-point communication, collective communication, and communicator management. Unfortunately, MPI-IO and one-side communication is not implemented yet.
* Each MPI can use only one thread (if you use OpenMP, set OMP_NUM_THREADS to 1).
* There are some limitations for using files, but if the program just reads inputs and writes results, it is ok.
[a]: http://verif.cs.vsb.cz/aislinn/
......@@ -59,7 +59,7 @@ Be sure to log in with an X window forwarding enabled. This could mean using the
$ ssh -X username@anselm.it4i.cz
```
Other options is to access login node using VNC. Please see the detailed information on how to [use graphic user interface on Anselm](general/accessing-the-clusters/graphical-user-interface/x-window-system/)
Other options is to access login node using VNC. Please see the detailed information on how to [use graphic user interface on Anselm][1].
From the login node an interactive session **with X windows forwarding** (-X option) can be started by following command:
......@@ -91,4 +91,8 @@ Users can find original User Guide after loading the DDT module:
$DDTPATH/doc/userguide.pdf
```
[1] Discipline, Magic, Inspiration and Science: Best Practice Debugging with Allinea DDT, Workshop conducted at LLNL by Allinea on May 10, 2013, [link](https://computing.llnl.gov/tutorials/allineaDDT/index.html)
[1] Discipline, Magic, Inspiration and Science: Best Practice Debugging with Allinea DDT, Workshop conducted at LLNL by Allinea on May 10, 2013, [link][a]
[1]: ../../general/accessing-the-clusters/graphical-user-interface/x-window-system.md
[a]: https://computing.llnl.gov/tutorials/allineaDDT/index.html
......@@ -22,13 +22,13 @@ The module sets up environment variables, required for using the Allinea Perform
Use the the perf-report wrapper on your (MPI) program.
Instead of [running your MPI program the usual way](software/mpi/mpi/), use the the perf report wrapper:
Instead of [running your MPI program the usual way][1], use the the perf report wrapper:
```console
$ perf-report mpirun ./mympiprog.x
```
The MPI program will run as usual. The perf-report creates two additional files, in \*.txt and \*.html format, containing the performance report. Note that demanding MPI codes should be run within [the queue system](salomon/job-submission-and-execution/).
The MPI program will run as usual. The perf-report creates two additional files, in \*.txt and \*.html format, containing the performance report. Note that demanding MPI codes should be run within [the queue system][2].
## Example
......@@ -56,4 +56,9 @@ Now lets profile the code:
$ perf-report mpirun ./mympiprog.x
```
Performance report files [mympiprog_32p\*.txt](mympiprog_32p_2014-10-15_16-56.txt) and [mympiprog_32p\*.html](mympiprog_32p_2014-10-15_16-56.html) were created. We can see that the code is very efficient on MPI and is CPU bounded.
Performance report files [mympiprog_32p\*.txt][3] and [mympiprog_32p\*.html][4] were created. We can see that the code is very efficient on MPI and is CPU bounded.
[1]: ../mpi/mpi.md
[2]: ../../salomon/job-submission-and-execution.md
[3]: mympiprog_32p_2014-10-15_16-56.txt
[4]: mympiprog_32p_2014-10-15_16-56.html
......@@ -18,7 +18,7 @@ Each node in the tree is colored by severity (the color scheme is displayed at t
## Installed Versions
Currently, there are two versions of CUBE 4.2.3 available as [modules](modules-matrix/):
Currently, there are two versions of CUBE 4.2.3 available as [modules][1]:
* cube/4.2.3-gcc, compiled with GCC
* cube/4.2.3-icc, compiled with Intel compiler
......@@ -33,4 +33,8 @@ CUBE is a graphical application. Refer to Graphical User Interface documentation
After loading the appropriate module, simply launch cube command, or alternatively you can use Scalasca -examine command to launch the GUI. Note that for Scalasca data sets, if you do not analyze the data with `scalasca -examine` before to opening them with CUBE, not all performance data will be available.
References
1\. [http://www.scalasca.org/software/cube-4.x/download.html](http://www.scalasca.org/software/cube-4.x/download.html)
1\. [Download link][a]
[1]: ../../modules-matrix.md
[a]: http://www.scalasca.org/software/cube-4.x/download.html
......@@ -2,11 +2,11 @@
## Introduction
Intel PCM (Performance Counter Monitor) is a tool to monitor performance hardware counters on Intel>® processors, similar to [PAPI](software/debuggers/papi/). The difference between PCM and PAPI is that PCM supports only Intel hardware, but PCM can monitor also uncore metrics, like memory controllers and QuickPath Interconnect links.
Intel PCM (Performance Counter Monitor) is a tool to monitor performance hardware counters on Intel>® processors, similar to [PAPI][1]. The difference between PCM and PAPI is that PCM supports only Intel hardware, but PCM can monitor also uncore metrics, like memory controllers and QuickPath Interconnect links.
## Installed Version
Currently installed version 2.6. To load the [module](modules-matrix/) issue:
Currently installed version 2.6. To load the [module][2] issue:
```console
$ ml intelpcm
......@@ -190,7 +190,7 @@ Can be used as a sensor for ksysguard GUI, which is currently not installed on A
## API
In a similar fashion to PAPI, PCM provides a C++ API to access the performance counter from within your application. Refer to the [Doxygen documentation](http://intel-pcm-api-documentation.github.io/classPCM.html) for details of the API.
In a similar fashion to PAPI, PCM provides a C++ API to access the performance counter from within your application. Refer to the [Doxygen documentation][a] for details of the API.
!!! note
Due to security limitations, using PCM API to monitor your applications is currently not possible on Anselm. (The application must be run as root user)
......@@ -276,6 +276,14 @@ $ ./matrix
## References
1. [https://software.intel.com/en-us/articles/intel-performance-counter-monitor-a-better-way-to-measure-cpu-utilization](https://software.intel.com/en-us/articles/intel-performance-counter-monitor-a-better-way-to-measure-cpu-utilization])
1. [Intel® Xeon® Processor E5-2600 Product Family Uncore Performance Monitoring Guide](https://software.intel.com/sites/default/files/m/3/2/2/xeon-e5-2600-uncore-guide.pdf)
1. [API Documentation](http://intel-pcm-api-documentation.github.io/classPCM.html)
1. [Intel Performance Counter Monitor - a better way to measure cpu utilization][b]
1. [Intel® Xeon® Processor E5-2600 Product Family Uncore Performance Monitoring Guide][c]
1. [API Documentation][d]
[1]: papi.md
[2]: ../../modules-matrix.md
[a]: http://intel-pcm-api-documentation.github.io/classPCM.html
[b]: https://software.intel.com/en-us/articles/intel-performance-counter-monitor-a-better-way-to-measure-cpu-utilization]
[c]: https://software.intel.com/sites/default/files/m/3/2/2/xeon-e5-2600-uncore-guide.pdf
[d]: http://intel-pcm-api-documentation.github.io/classPCM.html
......@@ -19,9 +19,6 @@ To profile an application with VTune Amplifier, special kernel modules need to b
$ qsub -q qexp -A OPEN-0-0 -I -l select=1,vtune=2016_update1
```
!!! warning
Temporarily disabled - bug in the kernel ([intel-vtune-amplifier-impact-of-recent-os-security-updates](https://software.intel.com/en-us/articles/intel-vtune-amplifier-impact-of-recent-os-security-updates))
After that, you can verify the modules `sep*`, `pax` and `vtsspp` are present in the kernel :
```console
......@@ -92,5 +89,8 @@ You can obtain this command line by pressing the "Command line..." button on Ana
## References
1. [Intel® VTune™ Amplifier Support](https://software.intel.com/en-us/intel-vtune-amplifier-xe-support/documentation)
1. [https://software.intel.com/en-us/amplifier_help_linux](https://software.intel.com/en-us/amplifier_help_linux)
1. [Intel® VTune™ Amplifier Support][a]
1. [Amplifier Help Linux][b]
[a]: https://software.intel.com/en-us/intel-vtune-amplifier-xe-support/documentation
[b]: https://software.intel.com/en-us/amplifier_help_linux
......@@ -15,7 +15,7 @@ $ ml intel
$ idb
```
Read more at the [Intel Debugger](software/intel/intel-suite/intel-debugger/) page.
Read more at the [Intel Debugger][1] page.
## Allinea Forge (DDT/MAP)
......@@ -26,7 +26,7 @@ $ ml Forge
$ forge
```
Read more at the [Allinea DDT](software/debuggers/allinea-ddt/) page.
Read more at the [Allinea DDT][2] page.
## Allinea Performance Reports
......@@ -37,7 +37,7 @@ $ ml PerformanceReports/6.0
$ perf-report mpirun -n 64 ./my_application argument01 argument02
```
Read more at the [Allinea Performance Reports](software/debuggers/allinea-performance-reports/) page.
Read more at the [Allinea Performance Reports][3] page.
## RougeWave Totalview
......@@ -48,7 +48,7 @@ $ ml TotalView/8.15.4-6-linux-x86-64
$ totalview
```
Read more at the [Totalview](software/debuggers/total-view/) page.
Read more at the [Totalview][4] page.
## Vampir Trace Analyzer
......@@ -59,4 +59,10 @@ Vampir is a GUI trace analyzer for traces in OTF format.
$ vampir
```
Read more at the [Vampir](software/debuggers/vampir/) page.
Read more at the [Vampir][5] page.
[1]: ../intel/intel-suite/intel-debugger.md
[2]: allinea-ddt.md
[3]: allinea-performance-reports.md
[4]: total-view.md
[5]: vampir.md
......@@ -10,7 +10,7 @@ PAPI can be used with parallel as well as serial programs.
## Usage
To use PAPI, load [module](environment-and-modules/) PAPI:
To use PAPI, load [module][1] PAPI:
```console
$ ml papi
......@@ -77,7 +77,7 @@ Prints information about the memory architecture of the current CPU.
PAPI provides two kinds of events:
* **Preset events** is a set of predefined common CPU events, standardized across platforms.
* **Native events **is a set of all events supported by the current hardware. This is a larger set of features than preset. For other components than CPU, only native events are usually available.
* **Native events**is a set of all events supported by the current hardware. This is a larger set of features than preset. For other components than CPU, only native events are usually available.
To use PAPI in your application, you need to link the appropriate include file.
......@@ -90,19 +90,19 @@ The include path is automatically added by papi module to $INCLUDE.
### High Level API
Please refer to [this description of the High level API](http://icl.cs.utk.edu/projects/papi/wiki/PAPIC:High_Level).
Please refer to [this description of the High level API][a].
### Low Level API
Please refer to [this description of the Low level API](http://icl.cs.utk.edu/projects/papi/wiki/PAPIC:Low_Level).
Please refer to [this description of the Low level API][b].
### Timers
PAPI provides the most accurate timers the platform can support. [See](http://icl.cs.utk.edu/projects/papi/wiki/PAPIC:Timers).
PAPI provides the most accurate timers the platform can support, [see][c].
### System Information
PAPI can be used to query some system infromation, such as CPU name and MHz. [See](http://icl.cs.utk.edu/projects/papi/wiki/PAPIC:System_Information).
PAPI can be used to query some system infromation, such as CPU name and MHz, [see][d].
## Example
......@@ -193,7 +193,7 @@ $ ./matrix
!!! note
PAPI currently supports only a subset of counters on the Intel Xeon Phi processor compared to Intel Xeon, for example the floating point operations counter is missing.
To use PAPI in [Intel Xeon Phi](software/intel/intel-xeon-phi-salomon/) native applications, you need to load module with " -mic" suffix, for example " papi/5.3.2-mic" :
To use PAPI in [Intel Xeon Phi][2] native applications, you need to load module with " -mic" suffix, for example " papi/5.3.2-mic" :
```console
$ ml papi/5.3.2-mic
......@@ -235,3 +235,11 @@ $ icc matrix-offload.c -o matrix-offload -offload-option,mic,compiler,"-L$PAPI_H
1. [Main project page](http://icl.cs.utk.edu/papi/)
1. [Wiki](http://icl.cs.utk.edu/projects/papi/wiki/Main_Page)
1. [API Documentation](http://icl.cs.utk.edu/papi/docs/)
[1]: ../../environment-and-modules.md
[2]: ../intel/intel-xeon-phi-salomon.md
[a]: http://icl.cs.utk.edu/projects/papi/wiki/PAPIC:High_Level
[b]: http://icl.cs.utk.edu/projects/papi/wiki/PAPIC:Low_Level
[c]: http://icl.cs.utk.edu/projects/papi/wiki/PAPIC:Timers
[d]: http://icl.cs.utk.edu/projects/papi/wiki/PAPIC:System_Information
......@@ -111,7 +111,7 @@ nav:
- Phono3py: software/chemistry/phono3py.md
- Compilers: software/compilers.md
- Debuggers:
- Introduction: software/debuggers/Introduction.md
- Introduction: software/debuggers/introduction.md
- Aislinn: software/debuggers/aislinn.md
- Allinea Forge (DDT,MAP): software/debuggers/allinea-ddt.md
- Allinea Performance Reports: software/debuggers/allinea-performance-reports.md
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment