Benchmark-Based Study of CPU/GPU Power-Related Features Through JAX and TensorFlow
Résumé
Energy has become a critical resource in the modern computing landscape, making power management a central focus in High-Performance Computing (HPC) and Artificial Intelligence (AI). While power management techniques like Dynamic Voltage and Frequency Scaling (DVFS), Power Capping, and ACPI/P-State CPU governors are well-established, their effectiveness is significantly influenced by the high-level structure of software frameworks. This paper presents a comprehensive empirical study of this interplay, evaluating the three aforementioned power management techniques on a dual-socket Intel Xeon “Ice Lake” CPU, a single-socket AMD EPYC “Zen3” CPU, and an NVIDIA A100 GPU. We run a suite of computational kernels using both TensorFlow and JAX to expose how framework-specific design choices mediate hardware-level power controls. Our results reveal that the best strategy for energy efficiency is highly context-dependent and relies on the specific combination of hardware, workload, and framework. We find that DVFS is the most effective on both Intel Xeon and AMD EPYC platforms, delivering significant Energy-Delay Product (EDP) reductions with minimal performance loss. In contrast, Power Capping is the most efficient technique for NVIDIA A100. A key finding is the notable influence of the software stack; for instance, JAX exhibits operational instability at the lowest GPU frequencies on the A100, while there is no limitation with TensorFlow under identical conditions. Our findings provide operational platform-specific guidance for practitioners, expose crucial robustness considerations for framework developers, and highlight the necessity of considering the software stack as an active variable in energy-aware computing.
