Preview

Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS)

Advanced search

Optimizing programs for given hardware architectures with static compilation: methods and tools

https://doi.org/10.15514/ISPRAS-2014-26(1)-13

Abstract

The paper describes the workflow for optimizing programs for performance targeting the fixed hardware architecture with static compilation using GCC and LLVM compilers as examples. We present some of the optimizations performed and the corresponding evaluation results. We also describe TACT, a tool for automatic compiler tuning for the given application, and its example use cases both for an application developer and a compiler engineer. We give the sample of TACT optimization results.

About the Authors

Dmitry Melnik
Institute for System Programming of RAS
Russian Federation


Shamil Kurmangaleev
Institute for System Programming of RAS
Russian Federation


Arutyun Avetisyan
Institute for System Programming of RAS
Russian Federation


Andrey Belevantsev
Institute for System Programming of RAS
Russian Federation


Dmitry Plotnikov
Institute for System Programming of RAS
Russian Federation


Mamikon Vardanyan
Institute for System Programming of RAS
Russian Federation


References

1. The LLVM Compiler Infrastructure. http://LLVM.org/

2. ARM Architecture Processor Manual, http://infocenter.arm.com

3. Kurmangaleev S.F. Metody optimizatsii Ci/Ci++ - prilozhenij rasprostranyaemykh v bitkode LLVM s uchetom spetsifiki oborudovaniya. [Machine-specific optimization methods for C/C++ applications that are distributed in the LLVM intermediate representation format]. Trudy ISP RАN [The Proceedings of ISP RAS], 2013, vol.24, pp. 127-144. DOI: 10.15514/ISPRAS-2013-24-7. (in Russian)

4. J. Llosa, E. Ayguade, A. Gonzalez, M. Valero, J. Eckhardt. “Lifetime-sensitive modulo scheduling in a production environment”. Computers, IEEE Transactions on. Volume 50, Issue 3, pp.234-249. 2001.

5. Standard Performance Evaluation Corporation. http://www.spec.org/cpu2000/

6. D. Plotnikov, D. Melnik, M. Vardanyan, R. Buchatskiy, R. Zhuykov, J.H. Lee. Automatic Tuning of Compiler Optimizations and Analysis of their Impact. Procedia of Computer Science Volume 18, pp.1312-1321. 2013.

7. Roman Zhuykov, Dmitry Melnik, Ruben Buchatskiy. Programmnaya konvejerizatsiya tsiklov na platforme ARM [Loop software pipelining on ARM platform]. Trudy ISP RАN [The Proceedings of ISP RAS], 2012, vol.22, pp. 33-48. DOI: 10.15514/ISPRAS-2012-22-3. (in Russian)

8. Roman Zhuykov, Dmitry Plotnikov, Mamikon Vardanyan. Аvtomaticheskaya nastrojka optimizatsionnykh preobrazovanij kompilyatora GCC dlya platformy ARM [Automatic tuning of GCC optimization passes for ARM platform]. Trudy ISP RАN [The Proceedings of ISP RAS], 2012, vol.22, pp. 49-66. DOI: 10.15514/ISPRAS-2012-22-4. (in Russian)


Review

For citations:


Melnik D., Kurmangaleev Sh., Avetisyan A., Belevantsev A., Plotnikov D., Vardanyan M. Optimizing programs for given hardware architectures with static compilation: methods and tools. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2014;26(1):343-356. (In Russ.) https://doi.org/10.15514/ISPRAS-2014-26(1)-13



Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)