Virtual Machine Code Optimization using Profiling Data


The KIPS Transactions:PartA, Vol. 14, No. 3, pp. 167-172, Jun. 2007
10.3745/KIPSTA.2007.14.3.167,   PDF Download:

Abstract

VM(Virtual Machine) can be considered as a software processor which interprets the abstract machine code. Also, it is considered as a conceptional computer that consists of logical system configuration. But, the execution speed of VM system is much slower than that of a real processor system. So, it is very important to optimize the code for virtual machine to enhance the execution time. Especially the optimizer for a virtual machine code on embedded devices requires the highly efficient performance to the ordinary optimizer in the respect to the optimized ratio about cost. Fundamentally, functions and basic blocks which influence the execution time of virtual machine is found, and then an optimization for them may get the high efficiency. In this paper, we designed and implemented the optimizer for the virtual(or abstract) machine code(VMC) using profiling. Firstly, we defined the profiling information which is necessary to the optimization of VMC. The information can be obtained from dynamically executing the abstract machine code. And we implemented VMC optimizer using the profiling information. In our implementation, the VMC is SIL(Standard Intermediate Language) that is an intermediate code of EVM(Embedded Virtual Machine). Also, we tried a benchmark test for the VMC optimizer and obtained reasonable results.


Statistics
Show / Hide Statistics

Statistics (Cumulative Counts from September 1st, 2017)
Multiple requests among the same browser session are counted as one view.
If you mouse over a chart, the values of data points will be shown.


Cite this article
[IEEE Style]
Y. H. Shin, C. H. Yi, S. M. Oh, "Virtual Machine Code Optimization using Profiling Data," The KIPS Transactions:PartA, vol. 14, no. 3, pp. 167-172, 2007. DOI: 10.3745/KIPSTA.2007.14.3.167.

[ACM Style]
Yang Hoon Shin, Chang Hwan Yi, and Se Man Oh. 2007. Virtual Machine Code Optimization using Profiling Data. The KIPS Transactions:PartA, 14, 3, (2007), 167-172. DOI: 10.3745/KIPSTA.2007.14.3.167.