The importance of using the performance application programming interface (PAPI) for performance monitoring is discussed. To facilitate the development of portable performance tools, PAPI provides interfaces to get information about the execution environment. It also provides methods to obtain a complete listing of what performance monitoring (PM) events are available for monitoring. PAPI's goal is to expose real hardware performance information to users, which will help in eliminating most of the guesswork regarding the root cause of a code's performance problem.