PAPI Structs

class pypapi.structs.ADDR_map(cdata)

Address map class. Maps to PAPI_address_map_t data structure.

fields = {'name': 'str:'}

Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

s_fields = {'bss_end': (<class 'pypapi.structs.ADDR_p'>, 0), 'bss_start': (<class 'pypapi.structs.ADDR_p'>, 0), 'data_end': (<class 'pypapi.structs.ADDR_p'>, 0), 'data_start': (<class 'pypapi.structs.ADDR_p'>, 0), 'text_end': (<class 'pypapi.structs.ADDR_p'>, 0), 'text_start': (<class 'pypapi.structs.ADDR_p'>, 0)}

Special Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

class pypapi.structs.ADDR_p(cdata)

Address pointer class.

class pypapi.structs.COMPONENT_info(cdata)

Component info class. Maps to PAPI_component_info_t data structure.

fields = {'CmpIdx': 'num:c_int', 'attach': 'num:c_uint', 'attach_must_ptrace': 'num:c_uint', 'available_domains': 'num:c_int', 'available_granularities': 'num:c_int', 'cntr_umasks': 'num:c_uint', 'component_type': 'num:c_int', 'cpu': 'num:c_uint', 'default_domain': 'num:c_int', 'default_granularity': 'num:c_int', 'description': 'str:', 'disabled': 'num:c_int', 'disabled_reason': 'str:', 'fast_counter_read': 'num:c_uint', 'fast_real_timer': 'num:c_uint', 'fast_virtual_timer': 'num:c_uint', 'hardware_intr': 'num:c_uint', 'hardware_intr_sig': 'num:c_int', 'inherit': 'num:c_uint', 'kernel_multiplex': 'num:c_uint', 'kernel_profile': 'num:c_uint', 'kernel_version': 'str:', 'name': 'str:', 'num_cntrs': 'num:c_int', 'num_mpx_cntrs': 'num:c_int', 'num_native_events': 'num:c_int', 'num_preset_events': 'num:c_int', 'pmu_names': 'arr:str:', 'posix1b_timers': 'num:c_uint', 'precise_intr': 'num:c_uint', 'reserved': 'arr:num:c_uint', 'reserved_bits': 'num:c_uint', 'short_name': 'str:', 'support_version': 'str:', 'version': 'str:'}

Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

class pypapi.structs.DMEM_info(cdata)

Dynamic memory usage info class. Maps to PAPI_dmem_info_t data structure.

classmethod alloc_empty()

Allocate empty PAPI_dmem_info_t using ffi.new

fields = {'heap': 'num:c_longlong', 'high_water_mark': 'num:c_longlong', 'library': 'num:c_longlong', 'locked': 'num:c_longlong', 'pagesize': 'num:c_longlong', 'peak': 'num:c_longlong', 'pte': 'num:c_longlong', 'resident': 'num:c_longlong', 'shared': 'num:c_longlong', 'size': 'num:c_longlong', 'stack': 'num:c_longlong', 'text': 'num:c_longlong'}

Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

class pypapi.structs.EPC(rtime, ptime, ref, core, evt, epc)
core

Alias for field number 3

epc

Alias for field number 5

evt

Alias for field number 4

ptime

Alias for field number 1

ref

Alias for field number 2

rtime

Alias for field number 0

class pypapi.structs.EVENT_info(cdata)

Envent info class. Maps to PAPI_event_info_t data structure.

classmethod alloc_empty()

Allocate empty PAPI_event_info_t using ffi.new

fields = {'code': 'arr:num:c_uint', 'component_index': 'num:c_int', 'count': 'num:c_uint', 'data_type': 'num:c_int', 'derived': 'str:', 'event_code': 'num:c_int', 'event_type': 'num:c_uint', 'location': 'num:c_int', 'long_descr': 'str:', 'name': 'arr:str:', 'note': 'str:', 'postfix': 'str:', 'short_descr': 'str:', 'symbol': 'str:', 'timescope': 'num:c_int', 'units': 'str:', 'update_freq': 'num:c_int', 'update_type': 'num:c_int', 'value_type': 'num:c_int'}

Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

class pypapi.structs.EXECUTABLE_info(cdata)

Executable info class. Maps to PAPI_exe_info_t data structure.

fields = {'fullname': 'str:'}

Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

class pypapi.structs.Flips(event, rtime, ptime, flpins, mflips)
event

Alias for field number 0

flpins

Alias for field number 3

mflips

Alias for field number 4

ptime

Alias for field number 2

rtime

Alias for field number 1

class pypapi.structs.Flops(event, rtime, ptime, flpops, mflops)
event

Alias for field number 0

flpops

Alias for field number 3

mflops

Alias for field number 4

ptime

Alias for field number 2

rtime

Alias for field number 1

class pypapi.structs.HARDWARE_info(cdata)

Hardware info class. Maps to PAPI_hw_info_t data structure.

fields = {'cores': 'num:c_int', 'cpu_max_mhz': 'num:c_int', 'cpu_min_mhz': 'num:c_int', 'cpuid_family': 'num:c_int', 'cpuid_model': 'num:c_int', 'cpuid_stepping': 'num:c_int', 'model': 'num:c_int', 'model_string': 'str:', 'ncpu': 'num:c_int', 'nnodes': 'num:c_int', 'revision': 'num:c_float', 'sockets': 'num:c_int', 'threads': 'num:c_int', 'totalcpus': 'num:c_int', 'vendor': 'num:c_int', 'vendor_string': 'str:', 'virtual_vendor_string': 'str:', 'virtual_vendor_version': 'str:', 'virtualized': 'num:c_int'}

Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

class pypapi.structs.IPC(rtime, ptime, ins, ipc)
ins

Alias for field number 2

ipc

Alias for field number 3

ptime

Alias for field number 1

rtime

Alias for field number 0

class pypapi.structs.MH_cache(cdata)

Memory Hierarchy Cache info class. Maps to PAPI_mh_cache_info_t data structure.

fields = {'associativity': 'num:c_int', 'line_size': 'num:c_int', 'num_lines': 'num:c_int', 'size': 'num:c_int', 'type': 'num:c_int'}

Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

class pypapi.structs.MH_info(cdata)

Memory Hierarchy info class. Maps to PAPI_mh_info_t data structure.

fields = {'levels': 'num:c_int'}

Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

s_fields = {'level': (<class 'pypapi.structs.MH_level'>, 1)}

Special Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

class pypapi.structs.MH_level(cdata)

Memory Hierarchy Level info class. Maps to PAPI_mh_level_t data structure.

s_fields = {'cache': (<class 'pypapi.structs.MH_cache'>, 1), 'tlb': (<class 'pypapi.structs.MH_tlb'>, 1)}

Special Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

class pypapi.structs.MH_tlb(cdata)

Memory Hierarchy TLB info class. Maps to PAPI_mh_tlb_info_t data structure.

fields = {'associativity': 'num:c_int', 'num_entries': 'num:c_int', 'page_size': 'num:c_int', 'type': 'num:c_int'}

Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

class pypapi.structs.PAPI_Base(cdata)

Base class for PAPI structs.

static cdata_to_python(cdata, data_type)

Converts C data to Python objects.

fields = {}

Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

s_fields = {}

Special Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

special_cdata_to_python(cdata, level, data_type)

Converts special C data, such as structs, to Python objects.

class pypapi.structs.SHARED_LIB_info(cdata)

Shared Lib info class. Maps to PAPI_shlib_info_t data structure.

fields = {'count': 'num:c_int'}

Fields of the struct (refer to PAPI’s documentation for each field’s meaning)

s_fields = {'map': (<class 'pypapi.structs.ADDR_map'>, 'count')}

Special Fields of the struct (refer to PAPI’s documentation for each field’s meaning)