{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,8,6]],"date-time":"2026-08-06T10:59:19Z","timestamp":1786013959626,"version":"3.56.0"},"reference-count":32,"publisher":"MDPI AG","issue":"11","license":[{"start":{"date-parts":[[2018,11,21]],"date-time":"2018-11-21T00:00:00Z","timestamp":1542758400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Sensors"],"abstract":"<jats:p>The Internet of Things (IoT) is faced with challenges that require green solutions and energy-efficient paradigms. Architectures (such as ARM) have evolved significantly in recent years, with improvements to processor efficiency, essential for always-on devices, as a focal point. However, as far as software is concerned, few approaches analyse the advantages of writing efficient code when programming IoT devices. Therefore, this proposal aims to improve source code optimization to achieve better execution times. In addition, the importance of various techniques for writing efficient code for Raspberry Pi devices is analysed, with the objective of increasing execution speed. A complete set of tests have been developed exclusively for analysing and measuring the improvements achieved when applying each of these techniques. This will raise awareness of the significant impact the recommended techniques can have.<\/jats:p>","DOI":"10.3390\/s18114066","type":"journal-article","created":{"date-parts":[[2018,11,22]],"date-time":"2018-11-22T09:18:25Z","timestamp":1542878305000},"page":"4066","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":8,"title":["Evaluation of Strategies for the Development of Efficient Code for Raspberry Pi Devices"],"prefix":"10.3390","volume":"18","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-4682-9389","authenticated-orcid":false,"given":"Javier","family":"Corral-Garc\u00eda","sequence":"first","affiliation":[{"name":"C\u00e9nitS\u2013COMPUTAEX, Extremadura Supercomputing, Technological Innovation and Research Center, 10071 C\u00e1ceres, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Jos\u00e9-Luis","family":"Gonz\u00e1lez-S\u00e1nchez","sequence":"additional","affiliation":[{"name":"C\u00e9nitS\u2013COMPUTAEX, Extremadura Supercomputing, Technological Innovation and Research Center, 10071 C\u00e1ceres, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9417-9974","authenticated-orcid":false,"given":"Miguel-\u00c1ngel","family":"P\u00e9rez-Toledano","sequence":"additional","affiliation":[{"name":"Computer Science Department, University of Extremadura, 10003 C\u00e1ceres, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"1968","published-online":{"date-parts":[[2018,11,21]]},"reference":[{"key":"ref_1","doi-asserted-by":"crossref","first-page":"2347","DOI":"10.1109\/COMST.2015.2444095","article-title":"Internet of Things: A Survey on Enabling Technologies, Protocols, and Applications","volume":"17","author":"Guizani","year":"2015","journal-title":"IEEE Commun. Surv. Tutor."},{"key":"ref_2","doi-asserted-by":"crossref","first-page":"367","DOI":"10.1007\/s11235-017-0343-y","article-title":"Challenges and research directions for Internet of Things","volume":"67","author":"Hammoudi","year":"2018","journal-title":"Telecommun. Syst."},{"key":"ref_3","unstructured":"(2018, October 13). Raspberry Pi Foundation. Available online: https:\/\/www.raspberrypi.org."},{"key":"ref_4","doi-asserted-by":"crossref","unstructured":"Abbas, N., Yu, F., and Fan, Y. (2018). Intelligent Video Surveillance Platform for Wireless Multimedia Sensor Networks. Appl. Sci., 8.","DOI":"10.3390\/app8030348"},{"key":"ref_5","doi-asserted-by":"crossref","unstructured":"Noriega-Linares, J.E., and Navarro Ruiz, J.M. (2016). On the Application of the Raspberry Pi as an Advanced Acoustic Sensor Network for Noise Monitoring. Electronics, 5.","DOI":"10.3390\/electronics5040074"},{"key":"ref_6","doi-asserted-by":"crossref","first-page":"24408","DOI":"10.3390\/s141224408","article-title":"A Smart City Application: A Fully Controlled Street Lighting Isle Based on Raspberry-Pi Card, a ZigBee Sensor Network and WiMAX","volume":"14","author":"Leccese","year":"2014","journal-title":"Sensors"},{"key":"ref_7","doi-asserted-by":"crossref","unstructured":"Garc\u00eda Guzm\u00e1n, J., Prieto Gonz\u00e1lez, L., Pajares Redondo, J., Montalvo Mart\u00ednez, L., and Boada, M.J. (2018). Real-Time Vehicle Roll Angle Estimation Based on Neural Networks in IoT Low-Cost Devices. Sensors, 18.","DOI":"10.20944\/preprints201804.0255.v1"},{"key":"ref_8","doi-asserted-by":"crossref","unstructured":"Bayo-Monton, J.L., Martinez-Millana, A., Han, W., Fernandez-Llatas, C., Sun, Y., and Traver, V. (2018). Wearable Sensors Integrated with Internet of Things for Advancing eHealth Care. Sensors, 18.","DOI":"10.3390\/s18061851"},{"key":"ref_9","doi-asserted-by":"crossref","unstructured":"Hajji, W., and Tso, F.P. (2016). Understanding the Performance of Low Power Raspberry Pi Cloud for Big Data. Electronics, 5.","DOI":"10.3390\/electronics5020029"},{"key":"ref_10","doi-asserted-by":"crossref","first-page":"98","DOI":"10.1186\/s13007-017-0248-5","article-title":"PYM: A new, affordable, image-based method using a Raspberry Pi to phenotype plant leaf area in a wide diversity of environments","volume":"13","author":"Valle","year":"2017","journal-title":"Plant Methods"},{"key":"ref_11","doi-asserted-by":"crossref","unstructured":"K\u00f6lling, M. (2016). Educational Programming on the Raspberry Pi. Electronics, 5.","DOI":"10.3390\/electronics5030033"},{"key":"ref_12","doi-asserted-by":"crossref","unstructured":"Abrahamsson, P., Helmer, S., Phaphoom, N., Nicolodi, L., Preda, N., Miori, L., Angriman, M., Rikkila, J., Wang, X., and Hamily, K. (2013, January 2\u20135). Affordable and energy-efficient cloud computing clusters: The bolzano raspberry pi cloud cluster experiment. Proceedings of the 2013 IEEE 5th International Conference on Cloud Computing Technology and Science (CloudCom), Bristol, UK.","DOI":"10.1109\/CloudCom.2013.121"},{"key":"ref_13","unstructured":"(2018, October 13). GCC, the GNU Compiler Collection. Available online: https:\/\/gcc.gnu.org."},{"key":"ref_14","unstructured":"Dawson-Haggerty, S., Krioukov, A., and Culler, D.E. (2009). Power Optimization-a Reality Check, EECS Department, University of California. Tech. Rep. UCB\/EECS-2009-140."},{"key":"ref_15","doi-asserted-by":"crossref","unstructured":"Pereira, R., Couto, M., Ribeiro, F., Rua, R., Cunha, J., Fernandes, J.A.P., and Saraiva, J.A. (2017, January 23\u201324). Energy Efficiency Across Programming Languages: How Do Energy, Time, and Memory Relate?. Proceedings of the 10th ACM SIGPLAN International Conference on Software Language Engineering (SLE 2017), Vancouver, BC, Canada.","DOI":"10.1145\/3136014.3136031"},{"key":"ref_16","doi-asserted-by":"crossref","unstructured":"Abdulsalam, S., Lakomski, D., Gu, Q., Jin, T., and Zong, Z. (2014, January 3\u20135). Program energy efficiency: The impact of language, compiler and implementation choices. Proceedings of the International Green Computing Conference, Dallas, TX, USA.","DOI":"10.1109\/IGCC.2014.7039169"},{"key":"ref_17","unstructured":"Shore, C. (2010, January 10). Efficient C Code for ARM Devices. Proceedings of the ARM Technology Conference, Santa Clara, CA, USA."},{"key":"ref_18","doi-asserted-by":"crossref","unstructured":"Corral-Garc\u00eda, J., Gonz\u00e1lez-S\u00e1nchez, J.L., and P\u00e9rez-Toledano, M.A. (2016, January 18\u201322). Towards automatic parallelization of sequential programs and efficient use of resources in HPC centers. Proceedings of the 2016 International Conference on High Performance Computing Simulation (HPCS), Innsbruck, Austria.","DOI":"10.1109\/HPCSim.2016.7568436"},{"key":"ref_19","unstructured":"Fog, A. (2018). Optimizing Software in C++\u2014An Optimization Guide for Windows, Linux and Mac Platforms, Copenhagen University College of Engineering."},{"key":"ref_20","unstructured":"Sloss, A., Symes, D., and Wright, C. (2004). ARM System Developer\u2019s Guide: Designing and Optimizing System Software, Elsevier."},{"key":"ref_21","unstructured":"Goldthwaite, L. (2006). Technical Report on C++ Performance, International Organization for Standardization. ISO\/IEC PDTR 18015."},{"key":"ref_22","unstructured":"Guntheroth, K. (2016). Optimized C++: Proven Techniques for Heightened Performance, O\u2019Reilly Media, Inc."},{"key":"ref_23","first-page":"4753","article-title":"Code Optimization using Code Purifier","volume":"6","author":"Malviya","year":"2015","journal-title":"Int. J. Comput. Sci. Inf. Technol. (IJCSIT)"},{"key":"ref_24","first-page":"2050","article-title":"Optimal Code Compiling in C","volume":"6","author":"Gupta","year":"2015","journal-title":"Int. J. Comput. Sci. Inf. Technol. (IJCSIT)"},{"key":"ref_25","unstructured":"Cooper, K.D., Mckinley, K.S., and Torczon, L. (2018, October 13). Compiler-Based Code-Improvement Techniques. Available online: https:\/\/www.clear.rice.edu\/comp512\/Lectures\/Papers\/survey.pdf."},{"key":"ref_26","unstructured":"Lee, M.E. (2018, October 13). Optimization of Computer Programs in C. Available online: http:\/\/leto.net\/docs\/C-optimization.php."},{"key":"ref_27","unstructured":"Ghosh, K. (2018, October 13). Writing Efficient C and C Code Optimization. Available online: https:\/\/www.codeproject.com\/Articles\/6154\/Writing-Efficient-C-and-C-Code-Optimization."},{"key":"ref_28","unstructured":"Isensee, P. (2018, October 13). C++ Optimization Strategies and Techniques. Available online: http:\/\/www.tantalon.com\/pete\/cppopt\/main.htm."},{"key":"ref_29","doi-asserted-by":"crossref","unstructured":"Kim, D., Hong, J.E., Yoon, I., and Lee, S.H. (2016). Code refactoring techniques for reducing energy consumption in embedded computing environment. Clust. Comput.","DOI":"10.1007\/s10586-016-0691-5"},{"key":"ref_30","doi-asserted-by":"crossref","unstructured":"Park, J.J., Hong, J.E., and Lee, S.H. (2014, January 1\u20133). Investigation for Software Power Consumption of Code Refactoring Techniques. Proceedings of the Twenty-Sixth International Conference on Software Engineering and Knowledge Engineering (SEKE 2014), Vancouver, BC, Canada.","DOI":"10.3745\/KTSDE.2014.3.3.109"},{"key":"ref_31","doi-asserted-by":"crossref","first-page":"2","DOI":"10.1007\/s40568-013-0030-4","article-title":"Energy-efficient code by refactoring","volume":"33","author":"Gottschalk","year":"2013","journal-title":"Softwaretechnik-Trends"},{"key":"ref_32","doi-asserted-by":"crossref","unstructured":"Bekaroo, G., and Santokhee, A. (2016, January 3\u20136). Power consumption of the Raspberry Pi: A comparative analysis. Proceedings of the IEEE International Conference on Emerging Technologies and Innovative Business Practices for the Transformation of Societies (EmergiTech), Balaclava, Mauritius.","DOI":"10.1109\/EmergiTech.2016.7737367"}],"container-title":["Sensors"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/1424-8220\/18\/11\/4066\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,11]],"date-time":"2025-10-11T15:31:07Z","timestamp":1760196667000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/1424-8220\/18\/11\/4066"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,11,21]]},"references-count":32,"journal-issue":{"issue":"11","published-online":{"date-parts":[[2018,11]]}},"alternative-id":["s18114066"],"URL":"https:\/\/doi.org\/10.3390\/s18114066","relation":{},"ISSN":["1424-8220"],"issn-type":[{"value":"1424-8220","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018,11,21]]}}}