A Study on the Interpretation Optimization to Improve the Performance of the Stack based Virtual Machine on Smart Platforms

The previous development environments for smart phone contents are needed to generate specific target code depending on target devices or platforms, and each platform has its own developing language. Therefore, even if the same contents are to be used, it must be redeveloped depending on the target machine and a compiler for that specific machine is needed, making the contents development process very inefficient. The Smart Cross Platform was developed for executing contents written in various programming languages – C, C++, Java, and Objective-C – on iOS or Android based smart devices. The contents developed in each programming language are translated into intermediate language called SIL (Smart Intermediate Language) by the compiler. And, the translation results - intermediate programs are executed on the SVM (Smart Virtual Machine) – a core module of the Smart Cross Platform – without device dependency. Intermediate language based SVM has an advantage of execution on multiple target devices without considerations about device specific features, but it has also a problem which low performance by the software-based execution, consequently. Therefore, to improve the performance of SVM is very important issue. In this paper, we deal with two kinds of optimization technique to optimize stack based SVM which can execute on various smart devices. And, to improve performance of the SVM on execution engine aspect, we apply the one of these optimization techniques. For verification of this optimization technique, we profile and analyze performance of the original/optimized SVM. As a result of the experiments, the optimized SVM has 23~27% reduced execution times than the original SVM.