the method of program compaction for real-time applications ruslan l. smeliansky lomonosov moscow...

Download The method of program compaction for real-time applications Ruslan L. Smeliansky Lomonosov Moscow State University Faculty of Computational Mathematics

If you can't read please download the document

Upload: kathleen-fields

Post on 18-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

  • Slide 1
  • The method of program compaction for real-time applications Ruslan L. Smeliansky Lomonosov Moscow State University Faculty of Computational Mathematics and Cybernetics
  • Slide 2
  • 2 Introduction Memory Compacted code Original code Program compaction methods - such program transformation that reduces the program code size in memory (memory footprint) with retaining the program functionality. Embedded real-time systems The largest type of computer systems. The memory and energy are the most critical resources.
  • Slide 3
  • Introduction (2) 3
  • Slide 4
  • Introduction (3) Program compaction methods without decompression can be used in the real-time systems, because they practically dont increase program execution time. The existing methods with decompression cant be used in the real-tine systems, because its lead to uncontrolled significant increasing of execution time. It is necessary to create a program compaction method with decompression which would allow us to control the program execution time depending on the compression ratio. 4
  • Slide 5
  • Method Description 5
  • Slide 6
  • Method Details The proposed method is intended to solve the following tasks: Determining execution frequency characteristics of programs behavior; Determining infrequently executed portions of programs. 6
  • Slide 7
  • Determining execution frequency of programs basic blocks 7
  • Slide 8
  • Determining execution frequency of programs basic blocks (2) 8
  • Slide 9
  • The algorithm for evaluation basic block execution frequency 9
  • Slide 10
  • Result of testing of the proposed method SNUDescription minverInverse matrix (size 10x10, values 0-100) 700.04 qsortQuick sort (size 20, values 0-100) 800.08 select10th max elements of an array (size 20, values 0-100) 1000.06 primePrime number (values 0-100000) 900.03 sqrtSquare root (values 0-1000) 300.02 10
  • Slide 11
  • Determining infrequently executed code 11
  • Slide 12
  • Determining infrequently executed code (2) 12
  • Slide 13
  • Determining infrequently executed code (3) 13
  • Slide 14
  • Method application 14
  • Slide 15
  • Method implementation Inputs Program for compression (written on C language). Distributions functions of programs input parameters. The threshold of infrequently executed code. Outputs Compacted program. Files with an offset table and compacted interpreted code. 15
  • Slide 16
  • Method implementation (2) 16
  • Slide 17
  • 17
  • Slide 18
  • 18
  • Slide 19
  • 19 Thanks for attention!