Abstract
This paper suggests that sparse code motion algorithm should be used to make the code optimal in the respect of computation and lifetime. This algorithm Is SpCM algorithm, which expand BCM and LCM algorithm. BCM algorithm carries out the optimal code motion computationally and LCM algorithm reduces the register pressure in SpCM algorithm. Generally, code motion algorithm accomplishes the run-time optimal connected with the optimum of computation and the register pressure. Computational cost and consideration of the code size in the register pressure are also added in the paper. The optimum of code motion could be obtained through SpCM algorithm, which considers the code size, in audition to computational optimal and lifetime optimal. The algorithm presented in this paper is the most optimal algorithm in the respect of computation and lifetime, as all the unnecessary code motions are restrained.
이 논문에서는 계산적으로나 수명적으로 코드를 최적화 하기 위해 절제된 코드 모션 알고리즘을 제안한다. 제한한 알고리즘은 BCM과 LCM 알고리즘을 확장한 SpCM 알고리즘이다. SpCM 알고리즘에서 BCM 알고리즘은 계산적으로 최적의 코드 모션을 수행하며, LCM 알고리즘은 레지스터 압박을 감소시킨다. 일반적으로, 코트 모션 알고리즘은 계산의 최적화와 레지스터 압박에 관련된 실행시간 최적화를 실행한다. 이 논문에서는 계산 비용과 레지스터 압박에 코드의 크기를 고려하는 부분을 추가하였다. 코드의 계산적 최적화와 수명적 최적화에 이어 코드의 크기를 고려하는 SpCM 알고리즘에 의해 코드 모션의 최적화 결과를 얻을 수 있다. 이 논문에서 제안한 알고리즘은 모든 불필요한 코드 모션을 억제시키기 때문에 계산적으로나 수명적으로 최적인 알고리즘이라 할 수 있다.