Difference between revisions of "PAPI"
Moskalenko (talk | contribs) m (Text replace - "==Running the application using modules==" to "==Execution Environment and Modules==") |
|||
(8 intermediate revisions by one other user not shown) | |||
Line 2: | Line 2: | ||
__NOEDITSECTION__ | __NOEDITSECTION__ | ||
[[Category:Software]][[Category:Programming]] | [[Category:Software]][[Category:Programming]] | ||
− | + | {|<!--Main settings - REQUIRED--> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {| | ||
− | <!--Main settings - REQUIRED--> | ||
|{{#vardefine:app|papi}} | |{{#vardefine:app|papi}} | ||
|{{#vardefine:url|http://icl.cs.utk.edu/papi/index.html}} | |{{#vardefine:url|http://icl.cs.utk.edu/papi/index.html}} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
|{{#vardefine:exe|}} <!--Present manual instructions for running the software --> | |{{#vardefine:exe|}} <!--Present manual instructions for running the software --> | ||
|{{#vardefine:conf|}} <!--Enable config wiki page link - {{#vardefine:conf|1}} = ON/conf|}} = OFF--> | |{{#vardefine:conf|}} <!--Enable config wiki page link - {{#vardefine:conf|1}} = ON/conf|}} = OFF--> | ||
Line 35: | Line 20: | ||
The Performance API (PAPI) project specifies a standard application programming interface (API) for accessing hardware performance counters available on most modern microprocessors. These counters exist as a small set of registers that count Events, occurrences of specific signals related to the processor's function. Monitoring these events facilitates correlation between the structure of source/object code and the efficiency of the mapping of that code to the underlying architecture. This correlation has a variety of uses in performance analysis including hand tuning, compiler optimization, debugging, benchmarking, monitoring and performance modeling. In addition, it is hoped that this information will prove useful in the development of new compilation technology as well as in steering architectural development towards alleviating commonly occurring bottlenecks in high performance computing. | The Performance API (PAPI) project specifies a standard application programming interface (API) for accessing hardware performance counters available on most modern microprocessors. These counters exist as a small set of registers that count Events, occurrences of specific signals related to the processor's function. Monitoring these events facilitates correlation between the structure of source/object code and the efficiency of the mapping of that code to the underlying architecture. This correlation has a variety of uses in performance analysis including hand tuning, compiler optimization, debugging, benchmarking, monitoring and performance modeling. In addition, it is hoped that this information will prove useful in the development of new compilation technology as well as in steering architectural development towards alleviating commonly occurring bottlenecks in high performance computing. | ||
− | + | <!--Modules--> | |
− | + | ==Required Modules== | |
− | <!-- --> | + | [[Modules|modules documentation]] |
− | + | ===Serial=== | |
− | + | *{{#var:app}} | |
{{#if: {{#var: exe}}|==How To Run== | {{#if: {{#var: exe}}|==How To Run== | ||
WRITE INSTRUCTIONS ON RUNNING THE ACTUAL BINARY|}} | WRITE INSTRUCTIONS ON RUNNING THE ACTUAL BINARY|}} | ||
Line 46: | Line 31: | ||
{{#if: {{#var: pbs}}|==PBS Script Examples== | {{#if: {{#var: pbs}}|==PBS Script Examples== | ||
See the [[{{PAGENAME}}_PBS]] page for {{#var: app}} PBS script examples.|}} | See the [[{{PAGENAME}}_PBS]] page for {{#var: app}} PBS script examples.|}} | ||
− | {{#if: {{#var: policy}}|==Usage | + | {{#if: {{#var: policy}}|==Usage Policy== |
WRITE USAGE POLICY HERE (perhaps templates for a couple of main licensing schemes can be used)|}} | WRITE USAGE POLICY HERE (perhaps templates for a couple of main licensing schemes can be used)|}} | ||
{{#if: {{#var: testing}}|==Performance== | {{#if: {{#var: testing}}|==Performance== | ||
Line 56: | Line 41: | ||
WRITE CITATION HERE | WRITE CITATION HERE | ||
|}} | |}} | ||
+ | =Validation= | ||
+ | * Validated 4/5/2018 |
Revision as of 15:42, 5 April 2018
Description
The Performance API (PAPI) project specifies a standard application programming interface (API) for accessing hardware performance counters available on most modern microprocessors. These counters exist as a small set of registers that count Events, occurrences of specific signals related to the processor's function. Monitoring these events facilitates correlation between the structure of source/object code and the efficiency of the mapping of that code to the underlying architecture. This correlation has a variety of uses in performance analysis including hand tuning, compiler optimization, debugging, benchmarking, monitoring and performance modeling. In addition, it is hoped that this information will prove useful in the development of new compilation technology as well as in steering architectural development towards alleviating commonly occurring bottlenecks in high performance computing.
Required Modules
Serial
- papi
Validation
- Validated 4/5/2018