Intel(r) Performance Counter Monitor
Macros | Functions
pcm.cpp File Reference

Example of using CPU counters: implements a simple performance counter monitoring utility. More...

#include <iostream>
#include <unistd.h>
#include <signal.h>
#include <sys/time.h>
#include <math.h>
#include <iomanip>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <cstring>
#include <sstream>
#include <assert.h>
#include "cpucounters.h"
#include "utils.h"

Macros

#define HACK_TO_REMOVE_DUPLICATE_ERROR
 
#define SIZE   (10000000)
 
#define PCM_DELAY_DEFAULT   1.0
 
#define PCM_DELAY_MIN   0.015
 
#define PCM_CALIBRATION_INTERVAL   50
 

Functions

template<class IntType >
double float_format (IntType n)
 
std::string temp_format (int32 t)
 
std::string l3cache_occ_format (uint64 o)
 
void print_help (const string prog_name)
 
void print_output (PCM *m, const std::vector< CoreCounterState > &cstates1, const std::vector< CoreCounterState > &cstates2, const std::vector< SocketCounterState > &sktstate1, const std::vector< SocketCounterState > &sktstate2, const SystemCounterState &sstate1, const SystemCounterState &sstate2, const int cpu_model, const bool show_core_output, const bool show_socket_output, const bool show_system_output)
 
void print_csv_header (PCM *m, const int cpu_model, const bool show_core_output, const bool show_socket_output, const bool show_system_output)
 
void print_csv (PCM *m, const std::vector< CoreCounterState > &cstates1, const std::vector< CoreCounterState > &cstates2, const std::vector< SocketCounterState > &sktstate1, const std::vector< SocketCounterState > &sktstate2, const SystemCounterState &sstate1, const SystemCounterState &sstate2, const int cpu_model, const bool show_core_output, const bool show_socket_output, const bool show_system_output)
 
int main (int argc, char *argv[])
 

Detailed Description

Example of using CPU counters: implements a simple performance counter monitoring utility.