variorum
variorum copied to clipboard
Vendor-neutral library for exposing power and performance features across diverse architectures
Print package power limits internally reads the MSR_RAPL_POWER_UNIT and stores the conversion units for future use. Other printing of power limits, such as printing the DRAM power limits, does not...
Reproducer: ``` #include int main(){ init_msr(); finalize_msr(); return 0; } ``` After executing `# echo 0 > /sys/devices/system/cpu/7/online` the `7` directory disappears. Running the reproducer looks like: ``` $./examples/variorum-batch-example Warning:...
The number of batch ops (and their allocated memory) is set by `allocate_batch()` but there is nothing to prevent `load_*_batch()` from writing past the end of that allocated memory.
`allocate_batch()` works under the assumption that all msr ops in a batch will be allocated at once. Subsequent calls to `allocate_batch()` will overwrite the previous operations and print the cryptic...
The first call to `perf_storage_temp()` will either allocate `2UL * nsockets` or `2UL * nthreads` memory (depending on whether or not the function parameter `control_domains` is `SOCKET` or `CORE`) and...
Add a set of tests to do sanity checks on the several flavors of counters. For example, we have several different methods for measuring reference cycles. Make sure they're all...