From cTuning.org

Jump to: navigation, search
Navigation: cTuning.org > CTools > MilepostGCC

Static Features available in MILEPOST GCC V1.0:

ft1 Number of basic blocks in the method
ft2 Number of basic blocks with a single successor
ft3 Number of basic blocks with two successors
ft4 Number of basic blocks with more then two successors
ft5 Number of basic blocks with a single predecessor
ft6 Number of basic blocks with two predecessors
ft7 Number of basic blocks with more then two predecessors
ft8 Number of basic blocks with a single predecessor and a single successor
ft9 Number of basic blocks with a single predecessor and two successors
ft10 Number of basic blocks with a two predecessors and one successor
ft11 Number of basic blocks with two successors and two predecessors
ft12 Number of basic blocks with more then two successors and more then two predecessors
ft13 Number of basic blocks with number of instructions less then 15
ft14 Number of basic blocks with number of instructions in the interval [15, 500]
ft15 Number of basic blocks with number of instructions greater then 500
ft16 Number of edges in the control flow graph
ft17 Number of critical edges in the control flow graph
ft18 Number of abnormal edges in the control flow graph
ft19 Number of direct calls in the method
ft20 Number of conditional branches in the method
ft21 Number of assignment instructions in the method
ft21 Number of unconditional branches in the method
ft22 Number of binary integer operations in the method
ft23 Number of binary floating point operations in the method
ft24 Number of instructions in the method
ft25 Average of number of instructions in basic blocks
ft26 Average of number of phi-nodes at the beginning of a basic block
ft27 Average of arguments for a phi-node
ft28 Number of basic blocks with no phi nodes
ft29 Number of basic blocks with phi nodes in the interval [0, 3]
ft30 Number of basic blocks with more then 3 phi nodes
ft31 Number of basic block where total number of arguments for all phi-nodes is in greater then 5
ft32 Number of basic block where total number of arguments for all phi-nodes is in the interval [1, 5]
ft33 Number of switch instructions in the method
ft34 Number of unary operations in the method
ft35 Number of instruction that do pointer arithmetic in the method
ft36 Number of indirect references via pointers ("*" in C)
ft37 Number of times the address of a variables is taken ("\&" in C)
ft38 Number of times the address of a function is taken ("\&" in C)
ft39 Number of indirect calls (i.e. done via pointers) in the method
ft40 Number of assignment instructions with the left operand an integer constant in the method
ft41 Number of binary operations with one of the operands an integer constant in the method
ft42 Number of calls with pointers as arguments
ft42 Number of calls with the number of arguments is greater then 4
ft44 Number of calls that return a pointer
ft45 Number of calls that return an integer
ft46 Number of occurrences of integer constant zero
ft47 Number of occurrences of 32-bit integer constants
ft48 Number of occurrences of integer constant one
ft49 Number of occurrences of 64-bit integer constants
ft50 Number of references of a local variables in the method
ft51 Number of references (def/use) of static/extern variables in the method
ft52 Number of local variables referred in the method
ft53 Number of static/extern variables referred in the method
ft54 Number of local variables that are pointers in the method
ft55 Number of static/extern variables that are pointers in the method

Mircea Namolaru (IBM) developed the first version of the feature extractor for MILEPOST GCC and Grigori Fursin (INRIA/UVSQ) integrated it within the MILEPOST GCC and cTuning framework together with the machine learning support to predict good optimizations. We are currently extending feature extractor to improve program characterization and mapping with beneficial optimizations.

Locations of visitors to this page

Tweet