Static profiling of assembly code performance and optimization effectiveness using instructions performed and program latency
College of Computer Studies
International Journal of Recent Technology and Engineering
2 Special Issue 8
Software program optimization for improved execution speed can be achieved through modifying the program. Programs are usually written in high level languages then translated into low level assembly language. More coverage of optimization and performance analysis can be performed on low level than high level language. Optimization improvement is measured in the difference in program execution performance. Several methods are available for measuring program performance are classified into static approaches and dynamic approaches. This paper presents an alternative method of more accurately measuring code performance statically than commonly used code analysis metrics. New metrics proposed are designed to expose effectiveness of optimization performed on code, specifically unroll optimizations. An optimization method, loop unroll is used to demonstrate the effectiveness of the increased accuracy of the proposed metric. The results of the study show that measuring Instructions Performed and Instruction Latency is a more accurate static metric than Instruction Count and subsequently those based on it. © BEIESP.
Digitial Object Identifier (DOI)
Cempron, J. C., Salinas, C. Y., & Uy, R. (2019). Static profiling of assembly code performance and optimization effectiveness using instructions performed and program latency. International Journal of Recent Technology and Engineering, 8 (2 Special Issue 8), 1463-1468. https://doi.org/10.35940/ijrte.B1083.0882S819
Assembly languages (Electronic computers); Compilers (Computer programs); Computer software; Computer architecture