Preprint / Version 1

Performance Evaluation of C++ and Java Programs for Portable Devices

##article.authors##

  • Venkata Sai Smaran Vallabhaneni The Stony Brook School

DOI:

https://doi.org/10.58445/rars.1783

Keywords:

Java, C , Evaluation

Abstract

In the world of software development for portable devices, performance optimization is crucial for responsiveness and general ease of use. This is particularly true for embedded systems and mobile devices like smartphones, where memory and processing speed are often limiting factors. This paper presents a comparative analysis of the Java and C++ programming languages, focusing on the runtime of a broad range of algorithms and emphasizes the range in runtimes between the algorithms. The study, conducted via the Termux terminal emulator, aims to highlight the performance differences between Java and C++ implementations across various algorithms. It also underscores the importance of metrics such as runtime in the context of software designed for portable devices. The findings reveal a significant performance edge for C++ over Java, as the results consistently demonstrate a speed factor of up to 200 times in favor of C++, underscoring the potential for utilizing performance enhancements in software implementing C++ in certain task-heavy algorithms such as regression for resource-constrained devices. In the end, this study contributes valuable insights for developers seeking to optimize software efficiency on portable devices.

References

Chatzigeorgiou, Alexander. Performance and power evaluation of cpp object-oriented programming in embedded processors. U of Macedonia, 2015.

Durrani, Omar Khan and Sayed AbdulHallan. Performance measurement of popular sorting algorithms implemented using java and python. Ghousia College of Engineering, pages 5–6,

Georges, Andy, Dries Buytaert, et al. Statistically rigorous java performance evaluation. Ghent U, 2007.

Plauska, Ignas. Performance evaluation of c/c++, micropython, rust and tinygo programming languages on esp32 microcontroller. Kaunas U of T echnology, 2022.

Oancea, Bogdan, Ion Gh. Rosca, et al. Evaluating java performance for linear algebra numerical computations. Nicolae Titulescu U, 2010.

Sengottaiyan, Gayathri Kandasamy and T arik Eltaeib. Memory management in c++ and java. U of Bridgeport, pages 3–5, 2015.

Serebryany, Kostya, Evgenii Stepanov, et al. Memory tagging and how it improves c/c++ memory safety. Google, page 5, 2018.

Wu, Pei-Chi and Feng-Jian Wang. On efficiency and optimization of c++ programs. National Chiao Tung U, 1996.

Zehra, Farzeen, Maha Javed, et al. Comparative analysis of c++ and python in terms of memory and time. NED U of Engineering and T echnology, 2020.

Downloads

Posted

2024-10-18