Browse > Article
http://dx.doi.org/10.5573/IEIESPC.2014.3.2.96

Performance Comparison between LLVM and GCC Compilers for the AE32000 Embedded Processor  

Park, Chanhyun (Compiler and Microarchitecture Laboratory, School of Electrical and Computer Engineering, College of Engineering, Korea University)
Han, Miseon (Compiler and Microarchitecture Laboratory, School of Electrical and Computer Engineering, College of Engineering, Korea University)
Lee, Hokyoon (Compiler and Microarchitecture Laboratory, School of Electrical and Computer Engineering, College of Engineering, Korea University)
Cho, Myeongjin (Compiler and Microarchitecture Laboratory, School of Electrical and Computer Engineering, College of Engineering, Korea University)
Kim, Seon Wook (Compiler and Microarchitecture Laboratory, School of Electrical and Computer Engineering, College of Engineering, Korea University)
Publication Information
IEIE Transactions on Smart Processing and Computing / v.3, no.2, 2014 , pp. 96-102 More about this Journal
Abstract
The embedded processor market has grown rapidly and consistently with the appearance of mobile devices. In an embedded system, the power consumption and execution time are important factors affecting the performance. The system performance is determined by both hardware and software. Although the hardware architecture is high-end, the software runs slowly due to the low quality of codes. This study compared the performance of two major compilers, LLVM and GCC on a32-bit EISC embedded processor. The dynamic instructions and static code sizes were evaluated from these compilers with the EEMBC benchmarks.LLVM generally performed better in the ALU intensive benchmarks, whereas GCC produced a better register allocation and jump optimization. The dynamic instruction count and static code of GCCwere on average 8% and 7% lower than those of LLVM, respectively.
Keywords
GCC; LLVM; Optimization; EISC; Performance; Code quality;
Citations & Related Records
Times Cited By KSCI : 1  (Citation Analysis)
연도 인용수 순위
1 GCC, the GNU Compiler Collection.
2 The LLVM Compiler Infrastructure.
3 J. Poovey, T. Conte, M. Levy, and S. Gal-On, "A benchmark characterization of the EEMBC benchmark suite," Micro, IEEE, vol. 29, no. 5, pp.18-29, 2009.
4 Hyun-Gyu Kim, Dae-Young Jung, Hyun-Sup Jung, Young-Min Chio, Jung-Su Han, Byung-Gueon Min, and Hyeong-Cheol Oh, "AE32000B: a Fully Synthesizable 32-Bit Embedded Microprocessor Core," ETRI Journal, vol. 25, no. 5, pp. 337-344, Oct. 2003.   과학기술학회마을   DOI
5 AE32000-Lucida.
6 Advanced digital chips inc.
7 EISC.
8 Chanhyun Park, Miseon Han, Hokyoon Lee, and Seon Wook Kim, "Performance Comparison of GCC and LLVM on the EISC Processor, "International Conference on Electronics, Information and Communication (ICEIC) in Kota Kinabalu, Malaysia, 2014.
9 J. C.Huang, T. Leng, "Generalized loop-unrolling: a method for program speedup," IEEE Symposium on Application-Specific Systems and Software Engineering and Technology (ASSET) in Richardson, Texas, pp.244-248, 1999.
10 Jae-Jin Kim, Seok-Young Lee, Soo-Mook Mook, Suhyun Kim, "Comparison of LLVM and GCC on the ARM Platform", Embedded and Multimedia Computing (EMC), 2010 5th International Conference on, vol., no., pp.1,6, 11-13 Aug.2010.