Performance comparison of GCC and LLVM on the EISC processor

Chanhyun Park, Miseon Han, Hokyoon Lee, Seon Wook Kim

Research output: Chapter in Book/Report/Conference proceedingConference contribution

1 Citation (Scopus)

Abstract

In embedded systems, code size and dynamic instruction count are important performance indicators of power consumption and execution time. However, the use of different compilers may result in large different performance values even if a target machine is the same. So, the compiler selection in the system development is very important. In this paper, we compare the performances of two popular compilers, GCC and LLVM in perspective of the code size and the dynamic instruction count for the EISC embedded processor. Our comparison shows that LLVM is good at optimizing calculation intensive benchmarks, and GCC performs register allocation and jump optimization better. Overall, the GCC compiler shows better performance in most EEMBC benchmarks about 18% on average in terms of dynamic instruction. Also, the compiled code size by GCC is smaller than that of LLVM by 4% on average.

Original languageEnglish
Title of host publication13th International Conference on Electronics, Information, and Communication, ICEIC 2014 - Proceedings
PublisherInstitute of Electrical and Electronics Engineers Inc.
ISBN (Print)9781479939428
DOIs
Publication statusPublished - 2014 Jan 1
Event13th International Conference on Electronics, Information, and Communication, ICEIC 2014 - Kota Kinabalu, Malaysia
Duration: 2014 Jan 152014 Jan 18

Other

Other13th International Conference on Electronics, Information, and Communication, ICEIC 2014
CountryMalaysia
CityKota Kinabalu
Period14/1/1514/1/18

Fingerprint

Embedded systems
Electric power utilization

ASJC Scopus subject areas

  • Control and Systems Engineering
  • Electrical and Electronic Engineering

Cite this

Park, C., Han, M., Lee, H., & Kim, S. W. (2014). Performance comparison of GCC and LLVM on the EISC processor. In 13th International Conference on Electronics, Information, and Communication, ICEIC 2014 - Proceedings [6914394] Institute of Electrical and Electronics Engineers Inc.. https://doi.org/10.1109/ELINFOCOM.2014.6914394

Performance comparison of GCC and LLVM on the EISC processor. / Park, Chanhyun; Han, Miseon; Lee, Hokyoon; Kim, Seon Wook.

13th International Conference on Electronics, Information, and Communication, ICEIC 2014 - Proceedings. Institute of Electrical and Electronics Engineers Inc., 2014. 6914394.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Park, C, Han, M, Lee, H & Kim, SW 2014, Performance comparison of GCC and LLVM on the EISC processor. in 13th International Conference on Electronics, Information, and Communication, ICEIC 2014 - Proceedings., 6914394, Institute of Electrical and Electronics Engineers Inc., 13th International Conference on Electronics, Information, and Communication, ICEIC 2014, Kota Kinabalu, Malaysia, 14/1/15. https://doi.org/10.1109/ELINFOCOM.2014.6914394
Park C, Han M, Lee H, Kim SW. Performance comparison of GCC and LLVM on the EISC processor. In 13th International Conference on Electronics, Information, and Communication, ICEIC 2014 - Proceedings. Institute of Electrical and Electronics Engineers Inc. 2014. 6914394 https://doi.org/10.1109/ELINFOCOM.2014.6914394
Park, Chanhyun ; Han, Miseon ; Lee, Hokyoon ; Kim, Seon Wook. / Performance comparison of GCC and LLVM on the EISC processor. 13th International Conference on Electronics, Information, and Communication, ICEIC 2014 - Proceedings. Institute of Electrical and Electronics Engineers Inc., 2014.
@inproceedings{d8c43beb8d584f10861f79e96c349048,
title = "Performance comparison of GCC and LLVM on the EISC processor",
abstract = "In embedded systems, code size and dynamic instruction count are important performance indicators of power consumption and execution time. However, the use of different compilers may result in large different performance values even if a target machine is the same. So, the compiler selection in the system development is very important. In this paper, we compare the performances of two popular compilers, GCC and LLVM in perspective of the code size and the dynamic instruction count for the EISC embedded processor. Our comparison shows that LLVM is good at optimizing calculation intensive benchmarks, and GCC performs register allocation and jump optimization better. Overall, the GCC compiler shows better performance in most EEMBC benchmarks about 18{\%} on average in terms of dynamic instruction. Also, the compiled code size by GCC is smaller than that of LLVM by 4{\%} on average.",
author = "Chanhyun Park and Miseon Han and Hokyoon Lee and Kim, {Seon Wook}",
year = "2014",
month = "1",
day = "1",
doi = "10.1109/ELINFOCOM.2014.6914394",
language = "English",
isbn = "9781479939428",
booktitle = "13th International Conference on Electronics, Information, and Communication, ICEIC 2014 - Proceedings",
publisher = "Institute of Electrical and Electronics Engineers Inc.",

}

TY - GEN

T1 - Performance comparison of GCC and LLVM on the EISC processor

AU - Park, Chanhyun

AU - Han, Miseon

AU - Lee, Hokyoon

AU - Kim, Seon Wook

PY - 2014/1/1

Y1 - 2014/1/1

N2 - In embedded systems, code size and dynamic instruction count are important performance indicators of power consumption and execution time. However, the use of different compilers may result in large different performance values even if a target machine is the same. So, the compiler selection in the system development is very important. In this paper, we compare the performances of two popular compilers, GCC and LLVM in perspective of the code size and the dynamic instruction count for the EISC embedded processor. Our comparison shows that LLVM is good at optimizing calculation intensive benchmarks, and GCC performs register allocation and jump optimization better. Overall, the GCC compiler shows better performance in most EEMBC benchmarks about 18% on average in terms of dynamic instruction. Also, the compiled code size by GCC is smaller than that of LLVM by 4% on average.

AB - In embedded systems, code size and dynamic instruction count are important performance indicators of power consumption and execution time. However, the use of different compilers may result in large different performance values even if a target machine is the same. So, the compiler selection in the system development is very important. In this paper, we compare the performances of two popular compilers, GCC and LLVM in perspective of the code size and the dynamic instruction count for the EISC embedded processor. Our comparison shows that LLVM is good at optimizing calculation intensive benchmarks, and GCC performs register allocation and jump optimization better. Overall, the GCC compiler shows better performance in most EEMBC benchmarks about 18% on average in terms of dynamic instruction. Also, the compiled code size by GCC is smaller than that of LLVM by 4% on average.

UR - http://www.scopus.com/inward/record.url?scp=84910053940&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84910053940&partnerID=8YFLogxK

U2 - 10.1109/ELINFOCOM.2014.6914394

DO - 10.1109/ELINFOCOM.2014.6914394

M3 - Conference contribution

SN - 9781479939428

BT - 13th International Conference on Electronics, Information, and Communication, ICEIC 2014 - Proceedings

PB - Institute of Electrical and Electronics Engineers Inc.

ER -