Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Why does the RAPL sampling interval have to be >= 50ms? #4

Open
JaykumarPatel4802 opened this issue Feb 19, 2024 · 1 comment
Open
Assignees
Labels
question Further information is requested

Comments

@JaykumarPatel4802
Copy link

JaykumarPatel4802 commented Feb 19, 2024

tracer.py logs a critical error if rapl_interval_sec < 0.05.

@HongyuHe HongyuHe self-assigned this Feb 25, 2024
@HongyuHe HongyuHe added the question Further information is requested label Feb 25, 2024
@HongyuHe
Copy link
Owner

Hi @JaykumarPatel4802, thanks for asking! The RAPL MSRs update approximately every millisecond, but the actual measurement period is not precisely 1 ms, leading to variations in sample periods.

In fact, RAPL provides energy consumption data rather than power consumption, and lacks timestamps for each counter update [1]. This limitation makes it impractical to achieve rates exceeding 20 samples/s if the goal is to keep systematic error below 5%. Also, continuously polling the RAPL registers not only consumes processor core resources but also distorts the accuracy of the measurements [2], which might increase the cost of energy tracing.

Hope this explanation helps a bit. Feel free to reach out if you have any other questions!

[1] Khan, Kashif Nizam, et al. "RAPL in Action: Experiences in Using RAPL for Power measurements." ACM Transactions on Modeling and Performance Evaluation of Computing Systems (TOMPECS) 3.2 (2018): 1-26.
[2] Hackenberg, Daniel, et al. "Power measurement techniques on standard compute nodes: A quantitative comparison." 2013 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS). IEEE, 2013.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants