|  | The Gaudi Framework
    v28r2
    | 
#include <ctype.h>#include <cxxabi.h>#include <fcntl.h>#include <math.h>#include <stdint.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/stat.h>#include <sys/types.h>#include <unistd.h>#include <zlib.h>#include <algorithm>#include <list>#include <map>#include <string>#include <vector>#include <sstream>#include <iostream>#include <dirent.h>#include <errno.h>
Go to the source code of this file.
| Classes | |
| class | PipeReader | 
| class | FileInfo | 
| struct | FileInfo::CacheItem | 
| struct | FileInfo::CacheItemComparator | 
| class | S_module | 
| Functions | |
| bool | skipWhitespaces (const char *srcbuffer, const char **destbuffer) | 
| bool | skipString (const char *strptr, const char *srcbuffer, const char **dstbuffer) | 
| void | init_core_caa_events () | 
| void | init_nhm_caa_events () | 
| bool | check_for_core_caa_events () | 
| bool | check_for_nhm_caa_events () | 
| void | init_core_caa_events_displ () | 
| void | calc_core_deriv_values (double totalCycles) | 
| void | init_nhm_caa_events_displ () | 
| void | calc_nhm_deriv_values (double totalCycles) | 
| void | html_special_chars (const char *s, char *s_mod) | 
| const char * | func_name (const char *demangled_symbol) | 
| void | put_S_module (S_module *cur_module, const char *dir) | 
| int | read_S_file (const char *dir, const char *filename) | 
| int | read_S_events (const char *dir, const char *filename) | 
| int | finalize_S_html_pages (const char *dir) | 
| int | read_C_file (const char *dir, const char *filename) | 
| void | put_C_header (FILE *fp, std::vector< std::string > &columns) | 
| void | put_C_modules (FILE *fp, std::vector< std::string > &columns) | 
| void | put_C_footer (FILE *fp) | 
| void | put_C_header_csv (FILE *fp, std::vector< std::string > &columns) | 
| void | put_C_modules_csv (FILE *fp, std::vector< std::string > &columns) | 
| double | normalize (std::string field, double value, double normalizeTo) | 
| void | calc_post_deriv_values () | 
| double | getTotalCycles () | 
| int | main (int argc, char *argv[]) | 
| #define CORE_L1_DTLB_MISS_CYCLES 10 | 
Definition at line 41 of file pfm_gen_analysis.cpp.
| #define CORE_L2_HIT_CYCLES 14.5 | 
Definition at line 40 of file pfm_gen_analysis.cpp.
| #define CORE_L2_MISS_CYCLES 200 | 
Definition at line 39 of file pfm_gen_analysis.cpp.
| #define CORE_LCP_STALL_CYCLES 6 | 
Definition at line 42 of file pfm_gen_analysis.cpp.
| #define CORE_OVERLAPPING_CYCLES 6 | 
Definition at line 44 of file pfm_gen_analysis.cpp.
| #define CORE_SPAN_ACROSS_CACHE_LINE_CYCLES 20 | 
Definition at line 45 of file pfm_gen_analysis.cpp.
| #define CORE_UNKNOWN_ADDR_STORE_CYCLES 5 | 
Definition at line 43 of file pfm_gen_analysis.cpp.
| #define EXPECTED_CPI 0.25 | 
Definition at line 66 of file pfm_gen_analysis.cpp.
| #define I7_IFETCH_L2_MISS_L3_HIT_NO_SNOOP 35 | 
Definition at line 59 of file pfm_gen_analysis.cpp.
| #define I7_IFETCH_L2_MISS_L3_HIT_SNOOP 60 | 
Definition at line 60 of file pfm_gen_analysis.cpp.
| #define I7_IFETCH_L2_MISS_L3_HITM 75 | 
Definition at line 61 of file pfm_gen_analysis.cpp.
| #define I7_IFETCH_L3_MISS_LOCAL_DRAM_HIT 200 | 
Definition at line 57 of file pfm_gen_analysis.cpp.
| #define I7_IFETCH_L3_MISS_REMOTE_CACHE_FWD 180 | 
Definition at line 62 of file pfm_gen_analysis.cpp.
| #define I7_IFETCH_L3_MISS_REMOTE_DRAM_HIT 350 | 
Definition at line 58 of file pfm_gen_analysis.cpp.
| #define I7_L1_DTLB_WALK_COMPLETED_CYCLES 35 | 
Definition at line 48 of file pfm_gen_analysis.cpp.
| #define I7_L1_ITLB_WALK_COMPLETED_CYCLES 35 | 
Definition at line 49 of file pfm_gen_analysis.cpp.
| #define I7_L2_HIT_CYCLES 6 | 
Definition at line 50 of file pfm_gen_analysis.cpp.
| #define I7_L3_MISS_LOCAL_DRAM_HIT_CYCLES 225 | 
Definition at line 54 of file pfm_gen_analysis.cpp.
| #define I7_L3_MISS_REMOTE_CACHE_HIT_CYCLES 180 | 
Definition at line 56 of file pfm_gen_analysis.cpp.
| #define I7_L3_MISS_REMOTE_DRAM_HIT_CYCLES 360 | 
Definition at line 55 of file pfm_gen_analysis.cpp.
| #define I7_L3_UNSHARED_HIT_CYCLES 35 | 
Definition at line 51 of file pfm_gen_analysis.cpp.
| #define I7_OTHER_CORE_L2_HIT_CYCLES 60 | 
Definition at line 52 of file pfm_gen_analysis.cpp.
| #define I7_OTHER_CORE_L2_HITM_CYCLES 75 | 
Definition at line 53 of file pfm_gen_analysis.cpp.
| #define MAX_ARCH_NAME_LENGTH 20 | 
Definition at line 82 of file pfm_gen_analysis.cpp.
| #define MAX_CMASK_STR_LENGTH 5 | 
Definition at line 83 of file pfm_gen_analysis.cpp.
| #define MAX_EVENT_NAME_LENGTH 150 | 
Definition at line 79 of file pfm_gen_analysis.cpp.
| #define MAX_FILENAME_LENGTH 1024 | 
Definition at line 68 of file pfm_gen_analysis.cpp.
| #define MAX_INV_STR_LENGTH 5 | 
Definition at line 84 of file pfm_gen_analysis.cpp.
| #define MAX_LIB_LENGTH 5000 | 
Definition at line 72 of file pfm_gen_analysis.cpp.
| #define MAX_LIB_MOD_LENGTH 7000 | 
Definition at line 73 of file pfm_gen_analysis.cpp.
| #define MAX_LINE_LENGTH 20000 | 
Definition at line 78 of file pfm_gen_analysis.cpp.
| #define MAX_MODULE_NAME_LENGTH 250 | 
Definition at line 80 of file pfm_gen_analysis.cpp.
| #define MAX_MODULES 1000 | 
Definition at line 64 of file pfm_gen_analysis.cpp.
| #define MAX_SAMPLE_INDEX_LENGTH 10000 | 
Definition at line 69 of file pfm_gen_analysis.cpp.
| #define MAX_SIMPLE_LIB_LENGTH 300 | 
Definition at line 76 of file pfm_gen_analysis.cpp.
| #define MAX_SIMPLE_LIB_MOD_LENGTH 500 | 
Definition at line 77 of file pfm_gen_analysis.cpp.
| #define MAX_SIMPLE_SYM_LENGTH 300 | 
Definition at line 74 of file pfm_gen_analysis.cpp.
| #define MAX_SIMPLE_SYM_MOD_LENGTH 500 | 
Definition at line 75 of file pfm_gen_analysis.cpp.
| #define MAX_SP_STR_LENGTH 50 | 
Definition at line 85 of file pfm_gen_analysis.cpp.
| #define MAX_SYM_LENGTH 15000 | 
Definition at line 70 of file pfm_gen_analysis.cpp.
| #define MAX_SYM_MOD_LENGTH 20000 | 
Definition at line 71 of file pfm_gen_analysis.cpp.
| #define MAX_VALUE_STRING_LENGTH 250 | 
Definition at line 81 of file pfm_gen_analysis.cpp.
| #define PIPE_BUFFER_LENGTH 1000 | 
Definition at line 87 of file pfm_gen_analysis.cpp.
| void calc_core_deriv_values | ( | double | totalCycles | ) | 
Definition at line 470 of file pfm_gen_analysis.cpp.
| void calc_nhm_deriv_values | ( | double | totalCycles | ) | 
Definition at line 625 of file pfm_gen_analysis.cpp.
| void calc_post_deriv_values | ( | ) | 
Definition at line 1692 of file pfm_gen_analysis.cpp.
| bool check_for_core_caa_events | ( | ) | 
Definition at line 394 of file pfm_gen_analysis.cpp.
| bool check_for_nhm_caa_events | ( | ) | 
Definition at line 407 of file pfm_gen_analysis.cpp.
| int finalize_S_html_pages | ( | const char * | dir | ) | 
Definition at line 1473 of file pfm_gen_analysis.cpp.
| const char* func_name | ( | const char * | demangled_symbol | ) | 
Definition at line 856 of file pfm_gen_analysis.cpp.
| double getTotalCycles | ( | ) | 
Definition at line 1720 of file pfm_gen_analysis.cpp.
| void html_special_chars | ( | const char * | s, | 
| char * | s_mod | ||
| ) | 
Definition at line 822 of file pfm_gen_analysis.cpp.
| void init_core_caa_events | ( | ) | 
Definition at line 324 of file pfm_gen_analysis.cpp.
| void init_core_caa_events_displ | ( | ) | 
Definition at line 420 of file pfm_gen_analysis.cpp.
| void init_nhm_caa_events | ( | ) | 
Definition at line 349 of file pfm_gen_analysis.cpp.
| void init_nhm_caa_events_displ | ( | ) | 
Definition at line 519 of file pfm_gen_analysis.cpp.
| int main | ( | int | argc, | 
| char * | argv[] | ||
| ) | 
Definition at line 1743 of file pfm_gen_analysis.cpp.
| double normalize | ( | std::string | field, | 
| double | value, | ||
| double | normalizeTo | ||
| ) | 
Definition at line 1671 of file pfm_gen_analysis.cpp.
| void put_C_footer | ( | FILE * | fp | ) | 
Definition at line 1624 of file pfm_gen_analysis.cpp.
| void put_C_header | ( | FILE * | fp, | 
| std::vector< std::string > & | columns | ||
| ) | 
Definition at line 1570 of file pfm_gen_analysis.cpp.
| void put_C_header_csv | ( | FILE * | fp, | 
| std::vector< std::string > & | columns | ||
| ) | 
Definition at line 1630 of file pfm_gen_analysis.cpp.
| void put_C_modules | ( | FILE * | fp, | 
| std::vector< std::string > & | columns | ||
| ) | 
Definition at line 1595 of file pfm_gen_analysis.cpp.
| void put_C_modules_csv | ( | FILE * | fp, | 
| std::vector< std::string > & | columns | ||
| ) | 
Definition at line 1642 of file pfm_gen_analysis.cpp.
| void put_S_module | ( | S_module * | cur_module, | 
| const char * | dir | ||
| ) | 
Definition at line 1134 of file pfm_gen_analysis.cpp.
| int read_C_file | ( | const char * | dir, | 
| const char * | filename | ||
| ) | 
Definition at line 1502 of file pfm_gen_analysis.cpp.
| int read_S_events | ( | const char * | dir, | 
| const char * | filename | ||
| ) | 
Definition at line 1422 of file pfm_gen_analysis.cpp.
| int read_S_file | ( | const char * | dir, | 
| const char * | filename | ||
| ) | 
Definition at line 1295 of file pfm_gen_analysis.cpp.
| bool skipString | ( | const char * | strptr, | 
| const char * | srcbuffer, | ||
| const char ** | dstbuffer | ||
| ) | 
Definition at line 154 of file pfm_gen_analysis.cpp.
| bool skipWhitespaces | ( | const char * | srcbuffer, | 
| const char ** | destbuffer | ||
| ) | 
Definition at line 133 of file pfm_gen_analysis.cpp.