Papi.h 1.16 KB
Newer Older
1 2
/* -----------------------------------------------------------------------------
 * (c) The GHC Team 2006
3
 *
4 5 6
 * Initialization and use of the PAPI performance monitoring library
 *
 * ---------------------------------------------------------------------------*/
mrchebas@gmail.com's avatar
mrchebas@gmail.com committed
7

Simon Marlow's avatar
Simon Marlow committed
8 9 10
#ifndef PAPI_H
#define PAPI_H

11
#include "BeginPrivate.h"
12

mrchebas@gmail.com's avatar
mrchebas@gmail.com committed
13 14 15 16 17 18
/* Check the error value of a PAPI call, reporting an error, if needed */
extern int papi_error;

/* While PAPI reporting is going on this flag is on */
extern int papi_is_reporting;

19 20 21
void papi_stats_report(void);
void papi_init_eventset(int * event_set);
void papi_init(void);
mrchebas@gmail.com's avatar
mrchebas@gmail.com committed
22 23
void papi_start_mutator_count(void);
void papi_stop_mutator_count(void);
24

mrchebas@gmail.com's avatar
mrchebas@gmail.com committed
25
void papi_start_gc_count(void);
26 27
void papi_stop_gc0_count(void);
void papi_stop_gc1_count(void);
mrchebas@gmail.com's avatar
mrchebas@gmail.com committed
28

29 30
// for multithreaded GC, each sub-thread uses these functions to count
// events and aggregate them into the main GC counters.
31 32
void papi_thread_start_gc1_count(int event_set);
void papi_thread_stop_gc1_count(int event_set);
Simon Marlow's avatar
Simon Marlow committed
33

34
#include "EndPrivate.h"
35

Simon Marlow's avatar
Simon Marlow committed
36
#endif /* PAPI_H */
37 38 39 40 41 42 43 44

// Local Variables:
// mode: C
// fill-column: 80
// indent-tabs-mode: nil
// c-basic-offset: 4
// buffer-file-coding-system: utf-8-unix
// End: