paper-with-me

홈 › Papers

Probabilistic energy profiler for statically typed JVM-based programming languages

2025-12-02 · Joel Nyholm, Wojciech Mostowski, Christoph Reichenbach arxiv

Energy consumption is a growing concern in several fields, from mobile devices to large data centers. Developers need detailed data on the energy consumption of their software to mitigate consumption issues. Previous approaches have a broader focus, such as on specific functions or programs, rather than source code statements. They primarily focus on estimating the CPU's energy consumption using point estimates, thereby disregarding other hardware effects and limiting their use for statistical reasoning and explainability. We developed a novel methodology to address the limitations of measuring only the CPU's consumption and using point estimates, focusing on predicting the energy usage of statically typed JVM-based programming languages, such as Java and Scala. We measure the energy consumption of Bytecode patterns, the translation from the programming language's source code statement to their Java Bytecode representation. With the energy measurements, we construct a statistical model using Bayesian statistics, which allows us to predict the energy consumption through statistical distributions and analyze individual factors. The model includes three factors we obtain statically from the code: data size, data type, operation, and one factor about the hardware platform the code executes on: device. To validate our methodology, we implemented it for Java and evaluated its energy predictions on unseen programs. We observe that all four factors are influential, notably that two devices of the same model may differ in energy consumption and that the operations and data types cause consumption differences. The experiments also show that the energy prediction of programs closely follows the program's real energy consumption, validating our approach. Our work presents a methodology for constructing an energy model that future work, such as verification tools, can use for their energy estimates.

📄 PDF Abstract BibTeX arXiv:2512.02738

Code (0)

등록된 구현이 없습니다.

Similar Papers 제목 키워드 기반

Advanced Graph-Based Deep Learning for Probabilistic Type Inference

2020-09-13 · Fangke Ye, Jisheng Zhao, Vivek Sarkar

Dynamically typed languages such as JavaScript and Python have emerged as the most popular programming languages in use. Important benefits can accrue from including type annotations in dynamically typed programs. This a…

Deep LearningGraph Neural NetworkVocal Bursts Type Prediction

Monadic Deep Learning

2023-07-23 · Bo Yang, Zhihao Zhang Kirisame Marisa, Kai Shi

The Java and Scala community has built a very successful big data ecosystem. However, most of neural networks running on it are modeled in dynamically typed programming languages. These dynamically typed deep learning fr…

Deep LearningDynamic neural networks

Hailstorm : A Statically-Typed, Purely Functional Language for IoT Applications

2021-05-27 · Abhiroop Sarkar, Mary Sheeran

With the growing ubiquity of Internet of Things(IoT), more complex logic is being programmed on resource-constrained IoT devices, almost exclusively using the C programming language. While C provides low-level control ov…

Management

Conditional independence by typing

2020-10-22 · Maria I. Gorinova, Andrew D. Gordon, Charles Sutton, Matthijs Vákár

A central goal of probabilistic programming languages (PPLs) is to separate modelling from inference. However, this goal is hard to achieve in practice. Users are often forced to re-write their models in order to improve…

Probabilistic Programming

Can Proof Assistants Verify Multi-Agent Systems?

2025-03-10 · Julian Alfredo Mendez, Timotheus Kampik

This paper presents the Soda language for verifying multi-agent systems. Soda is a high-level functional and object-oriented language that supports the compilation of its code not only to Scala, a strongly statically typ…