OpenACC Tutorial - Profiling: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 53: Line 53:
|content=
|content=
<translate>
<translate>
For the purpose of this tutorial, we use a PGPROF, a powerful and simple analyzer for parallel programs written with OpenMP or OpenACC directives, or with CUDA
For the purpose of this tutorial, we use several profilers as described below:
* PGPROF - a powerful and simple analyzer for parallel programs written with OpenMP or OpenACC directives, or with CUDA
We note that [http://www.pgroup.com/support/download_pgi2016.php?view=current Portland Group Profiler] is free for academic usage.  
We note that [http://www.pgroup.com/support/download_pgi2016.php?view=current Portland Group Profiler] is free for academic usage.  
* NVIDIA Visual Profiler NVVP - a cross-platform analyzing tool for the codes written with OpenACC and CUDA C/C++ instructions
* NVPROF - a command line text-based version of the NVIDIA Visual Profiler
</translate>
</translate>
}}
}}




 
=== PGPROF Profiller  ===
[[File:Pgprof-pic1.png|thumbnail|300px|Starting new session|right ]]
[[File:Pgprof new0.png|thumbnail|300px|Starting new session|left ]]
Bellow are several snapshots demonstrating how to start with the PGPROF profiler. First step is to initiate a new session.  
Bellow are several snapshots demonstrating how to start with the PGPROF profiler. First step is to initiate a new session.  
Then browse for an executable file of the code you want to profile.
Then browse for an executable file of the code you want to profile.
[[File:Pgprof-pic2.png|thumbnail|300px|Browse for executable you want to profile|right  ]]
Then specify the profiling options. For example, if you need to profile CPU activity then set the "Profile execution of the CPU" box.
Then specify the profiling options. For example, if you need to profile CPU activity then set the "Profile execution of the CPU" box.
[[File:Pgprof-pic2.png|thumbnail|300px|Browse for executable you want to profile|right  ]]


== NVIDIA Visual Profiller  ==
=== NVIDIA Visual Profiller  ===


Another profiler available for OpenACC applications is NVIDIA Visual Profiler. It's a cross-platform analyzing tool for the codes written with OpenACC and CUDA C/C++ instructions.
Another profiler available for OpenACC applications is NVIDIA Visual Profiler. It's a cross-platform analyzing tool for the codes written with OpenACC and CUDA C/C++ instructions.
Line 75: Line 74:
[[File:Nvvp-pic1.png|thumbnail|300px|Browse for executable you want to profile|right  ]]
[[File:Nvvp-pic1.png|thumbnail|300px|Browse for executable you want to profile|right  ]]


== NVIDIA NVPROF Command Line Profiler  ==
=== NVIDIA NVPROF Command Line Profiler  ===
NVIDIA also provides a command line version called NVPROF, similar to GPU prof
NVIDIA also provides a command line version called NVPROF, similar to GPU prof
{{Command
{{Command
Bureaucrats, cc_docs_admin, cc_staff
337

edits