Package: powerapi
PowerAPI is a middleware toolkit for building software-defined power meters.
Software-defined power meters are configurable software libraries that can estimate the power consumption of software in real-time.
PowerAPI supports the acquisition of raw metrics from a wide diversity of sensors (eg., physical meters, processor interfaces, hardware counters, OS counters) and the delivery of power consumptions via different channels (including file system, network, web, graphical).
As a middleware toolkit, PowerAPI offers the capability of assembling power meters«à la carte»to accommodate user requirements.AboutPowerAPI is an open-source project developed by theSpirals project-team, a joint research group between theUniversity of LilleandInria.The documentation of the project is availablehere.Mailing listYou can follow the latest news and asks questions by subscribing to ourmailing list.ContributingIf you would like to contribute code you can do so through GitHub by forking the repository and sending a pull request.When submitting code, please make every effort tofollow existing conventions and stylein order to keep the code as readable as possible.PublicationsSelfWatts: On-the-fly Selection of Performance Events to Optimize Software-defined Power Meters: G. Fieni, R. Rouvoy, L. Seinturier.IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing(CCGrid). May 2021, Melbourne, AustraliaPower Budgeting of Big Data Applications in Container-based Clusters: J. Enes, G. Fieni, R. Expósito, R. Rouvoy, J. Tourino.IEEE Cluster, September 2020, Kobe, JapanSmartWatts: Self-Calibrating Software-Defined Power Meter for Containers: G. Fieni, R. Rouvoy, L. Seinturier.IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing(CCGrid). May 2020, Melbourne, AustraliaTaming Energy Consumption Variations in Systems Benchmarking: Z. Ournani, M.C. Belgaid, R. Rouvoy, P. Rust, J. Penhoat, L. Seinturier.ACM/SPEC International Conference on Performance Engineering(ICPE). April 2020, Edmonton, CanadaWattsKit: Software-Defined Power Monitoring of Distributed Systems: M. Colmant, P. Felber, R. Rouvoy, L. Seinturier.IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing(CCGrid). April 2017, Spain, FranceProcess-level Power Estimation in VM-based Systems: M. Colmant, M. Kurpicz, L. Huertas, R. Rouvoy, P. Felber, A. Sobe.European Conference on Computer Systems(EuroSys). April 2015, Bordeaux, FranceMonitoring Energy Hotspots in Software: A. Noureddine, R. Rouvoy, L. Seinturier.Journal of Automated Software Engineering, Springer, 2015Unit Testing of Energy Consumption of Software Libraries: A. Noureddine, R. Rouvoy, L. Seinturier.International Symposium On Applied Computing(SAC), March 2014, Gyeongju, South KoreaInformatique : Des logiciels mis au vert: L. Seinturier, R. Rouvoy.J'innove en Nord Pas de Calais,NFIDPowerAPI: A Software Library to Monitor the Energy Consumed at the Process-Level: A. Bourdon, A. Noureddine, R. Rouvoy, L. Seinturier.ERCIM News, Special Theme: Smart Energy Systems, 92,  pp.43-44.ERCIM, 2013Mesurer la consommation en énergie des logiciels avec précision: A. Bourdon, R. Rouvoy, L. Seinturier.01 Business & Technologies, 2013A review of energy measurement approaches: A. Noureddine, R. Rouvoy, L. Seinturier.ACM SIGOPS Operating Systems Review, ACM, 2013, 47 (3)Runtime Monitoring of Software Energy Hotspots: A. Noureddine, A. Bourdon, R. Rouvoy, L. Seinturier.International Conference on Automated Software Engineering(ASE), September 2012, Essen, GermanyA Preliminary Study of the Impact of Software Engineering on GreenIT: A. Noureddine, A. Bourdon, R. Rouvoy, L. Seinturier.International Workshop on Green and Sustainable Software(GREENS), June 2012, Zurich, SwitzerlandUse CasesPowerAPI is used in a variety of projects to address key challenges of GreenIT:SmartWattsis a self-adaptive power meter that can estimate the energy consumption of software containers in real-time.GenPackprovides a container scheduling strategy to minimize the energy footprint of cloud infrastructures.VirtualWattsprovides process-level power estimation of applications running in virtual machines.Web Energy Archiveranks popular websites based on the energy footpring they imposes to browsers.Greenspectoroptimises the power consumption of software by identifying potential energy leaks in the source code.LicensePowerAPI is licensed under the BSD-3-Clause License. See theLICENSEfile for details.