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

Example of using CPU counters: implements a performance counter monitoring utility for memory controller channels. 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 <string>
#include <assert.h>
#include "cpucounters.h"
#include "utils.h"

Macros

#define HACK_TO_REMOVE_DUPLICATE_ERROR
 
#define READ   0
 
#define WRITE   1
 
#define PARTIAL   2
 
#define PCM_DELAY_DEFAULT   1.0
 
#define PCM_DELAY_MIN   0.015
 
#define PCM_CALIBRATION_INTERVAL   50
 

Functions

void print_help (const string prog_name)
 
void display_bandwidth (float *iMC_Rd_socket_chan, float *iMC_Wr_socket_chan, float *iMC_Rd_socket, float *iMC_Wr_socket, uint32 numSockets, uint32 num_imc_channels, uint64 *partial_write)
 
void display_bandwidth_csv_header (float *iMC_Rd_socket_chan, float *iMC_Wr_socket_chan, float *iMC_Rd_socket, float *iMC_Wr_socket, uint32 numSockets, uint32 num_imc_channels, uint64 *partial_write)
 
void display_bandwidth_csv (float *iMC_Rd_socket_chan, float *iMC_Wr_socket_chan, float *iMC_Rd_socket, float *iMC_Wr_socket, uint32 numSockets, uint32 num_imc_channels, uint64 *partial_write, uint64 elapsedTime)
 
void calculate_bandwidth (PCM *m, const ServerUncorePowerState uncState1[], const ServerUncorePowerState uncState2[], uint64 elapsedTime, bool csv, bool &csvheader)
 
int main (int argc, char *argv[])
 

Variables

const uint32 max_sockets = 256
 
const uint32 max_imc_channels = 8
 

Detailed Description

Example of using CPU counters: implements a performance counter monitoring utility for memory controller channels.