A Comparative Study of Programming Languages for a Real-Time Smart Grid Application
dc.contributor.author | Rooney, Michael P. | |
dc.contributor.author | Rao, Nakul | |
dc.contributor.author | Liebers, Nicholas | |
dc.contributor.author | St. Leger, Aaron | |
dc.contributor.author | Matthews, Suzanne J. | |
dc.date.accessioned | 2024-06-03T12:30:43Z | |
dc.date.available | 2024-06-03T12:30:43Z | |
dc.date.issued | 2023-11-13 | |
dc.description.abstract | With security an increasing concern, SCADA system designers should consider the programming language used to implement critical smart grid applications. In this paper, we compare the performance of an anomaly detection workflow implemented in a common programming language used in SCADA systems (C) to equivalent implementations in three less commonly-known languages (Numba Python, Cython, and Rust). We benchmark our implementations on two real-world datasets of synchrophasor data and compare their performance on two Arm-based single board computers. Our results demonstrate that the Numba Python implementations achieve real-time performance in many contexts that pure Python counterparts cannot. In all tested scenarios, the Rust implementations achieve real-time performance while consuming similar amounts of power to their C counterparts. Our results suggest that SCADA designers should take a closer look at Numba Python and Rust for performant WAMS applications. | |
dc.description.sponsorship | Department of Defense | |
dc.identifier.citation | M. P. Rooney, N. Rao, N. Liebers, A. S. Leger and S. J. Matthews, "A Comparative Study of Programming Languages for a Real-Time Smart Grid Application," 2023 IEEE Green Energy and Smart Systems Conference (IGESSC), Long Beach, CA, USA, 2023, pp. 1-6, doi: 10.1109/IGESSC59090.2023.10321761. | |
dc.identifier.doi | https://doi.org/10.1109/IGESSC59090.2023.10321761 | |
dc.identifier.other | https://www.suzannejmatthews.com/docs/Rooney2023b.pdf | |
dc.identifier.uri | https://hdl.handle.net/20.500.14216/1503 | |
dc.publisher | IEEE | |
dc.relation.ispartof | 2023 IEEE Green Energy and Smart Systems Conference (IGESSC) | |
dc.subject | Wide Area Monitoring System | |
dc.subject | Synchrophasor | |
dc.subject | Linear State Estimation | |
dc.subject | Anomaly Detection | |
dc.subject | Rust | |
dc.subject | C | |
dc.subject | Numba | |
dc.subject | Raspberry Pi | |
dc.title | A Comparative Study of Programming Languages for a Real-Time Smart Grid Application | |
dc.type | Conference proceedings | |
local.peerReviewed | Yes |