Powerapi adalah toolkit middleware untuk membangun meter daya yang ditentukan perangkat lunak. Meter daya yang ditentukan perangkat lunak adalah pustaka perangkat lunak yang dapat dikonfigurasi yang dapat memperkirakan konsumsi daya perangkat lunak secara real-time. Powerapi mendukung akuisisi metrik mentah dari beragam sensor ( mis. , Meter fisik, antarmuka prosesor, penghitung perangkat keras, penghitung OS) dan pengiriman konsumsi daya melalui saluran yang berbeda (termasuk sistem file, jaringan, web, grafis). Sebagai toolkit middleware, Powerapi menawarkan kemampuan merakit meter daya «à la carte» untuk mengakomodasi persyaratan pengguna.
Tentang
Powerapi adalah proyek open-source yang dikembangkan oleh The Spirals Research Group (University of Lille 1 dan Inria) dan sepenuhnya dikelola dengan SBT.
Dokumentasi tersedia di sini.
Milis
Anda dapat mengikuti berita terbaru dan mengajukan pertanyaan dengan berlangganan milis kami.
Berkontribusi
Jika Anda ingin menyumbangkan kode, Anda dapat melakukannya melalui GitHub dengan membayar repositori dan mengirim permintaan tarik.
Saat mengirimkan kode, silakan lakukan segala upaya untuk mengikuti konvensi dan gaya yang ada untuk menjaga kode tetap dapat dibaca sebanyak mungkin.
Publikasi
- Wattskit: Pemantauan daya yang ditentukan perangkat lunak dari sistem terdistribusi : M. Colmant, P. Felber, R. Rouvoy, L. Seinturier. Simposium Internasional IEEE/ACM tentang Komputasi Cluster, Cloud dan Grid (CCGRID). April 2017, Spanyol, Prancis. hal.1-14.
- Estimasi daya tingkat proses dalam sistem berbasis VM : M. Colmant, M. Kurpicz, L. Huertas, R. Rouvoy, P. Felber, A. Sobe. Konferensi Eropa tentang Sistem Komputer (Eurosys). April 2015, Bordeaux, Prancis. hal.1-14.
- Monitoring Energy Hotspot dalam Perangkat Lunak : A. Noureddine, R. Rouvoy, L. Seinturier. Jurnal Rekayasa Perangkat Lunak Otomatis , Springer, 2015, pp.1-42.
- Pengujian Unit Konsumsi Energi Perpustakaan Perangkat Lunak : A. Noureddine, R. Rouvoy, L. Seinturier. Simposium Internasional tentang Komputasi Terapan (SAC), Maret 2014, Gyeongju, Korea Selatan. hal.1200-1205.
- Informatique: des Logiciels Mis Au Vert : L. Seinturier, R. Rouvoy. J'innove en nord pas de calais , nfid, 2013.
- Powerapi: Perpustakaan perangkat lunak untuk memantau energi yang dikonsumsi pada tingkat proses : A. Bourdon, A. Noureddine, R. Rouvoy, L. Seinturier. Ercim News, Tema Khusus: Smart Energy Systems , 92, hlm.43-44. Ercim, 2013.
- Mesurer la consommation en énergie des logiciels avec précision : A. Bourdon, R. Rouvoy, L. Seinturier. 01 Business & Technologies , 2013.
- Tinjauan Pendekatan Pengukuran Energi : A. Noureddine, R. Rouvoy, L. Seinturier. ACM SIGOPS Operating Systems Review , ACM, 2013, 47 (3), hlm.42-49.
- Pemantauan Runtime Hotspot Energi Perangkat Lunak : A. Noureddine, A. Bourdon, R. Rouvoy, L. Seinturier. Konferensi Internasional tentang Rekayasa Perangkat Lunak Otomatis (ASE), September 2012, Essen, Jerman. hal.160-169.
- Studi pendahuluan tentang dampak rekayasa perangkat lunak pada Greenit : A. Noureddine, A. Bourdon, R. Rouvoy, L. Seinturier. Lokakarya Internasional tentang Perangkat Lunak Hijau dan Berkelanjutan (Greens), Juni 2012, Zurich, Swiss. hal.21-27.
Menggunakan kasus
Powerapi digunakan dalam berbagai proyek untuk mengatasi tantangan utama Greenit:
- Genpack menyediakan strategi Docker Swarm untuk meminimalkan jejak energi dari wadah Docker yang digunakan dalam sebuah cluster
- Bitwatts menyediakan estimasi daya tingkat proses dari aplikasi yang berjalan di mesin virtual
- Web Energy Archive peringkat situs web populer berdasarkan footpring energi yang mereka bebankan ke browser
- Greenspector mengoptimalkan konsumsi daya perangkat lunak dengan mengidentifikasi potensi kebocoran energi dalam kode sumber.
Ucapan Terima Kasih
Kita semua berdiri di atas bahu raksasa dan bertahan dengan sedikit bantuan dari teman -teman kita. Powerapi ditulis dalam Scala (versi 2.12.1 di bawah lisensi BSD 3-klausa) dan dibangun di atas:
- Akka (versi 2.4.14 di bawah lisensi Apache 2), untuk pemrosesan asinkron.
- TypeSafe Config (versi 1.3.1 di bawah lisensi Apache 2), untuk membaca file konfigurasi.
- Scala-logging (Versi 3.5.0 di bawah lisensi Apache 2), untuk Scala Wrapping SL4J.
- Logback (versi 1.1.7 di bawah lisensi LGPL 2.1), untuk tujuan logging.
- Powerspy.scala (versi 1.2 di bawah lisensi AGPL), untuk menggunakan meter daya PowerSpy.
- Bridj (versi 0.7.0 di bawah lisensi BSD 3-klausa), untuk panggilan sistem atau C.
- JNA (versi 4.2.2 di bawah lisensi LGPL 2.1), untuk panggilan sistem atau C.
- Perfmon2 (versi 4.7.0 di bawah lisensi MIT), untuk mengakses penghitung kinerja perangkat keras.
- JFREECHART (versi 1.0.19 di bawah lisensi LGPL), untuk pembuatan grafik interaktif dan animasi.
- Grizzled-Scala (versi 4.0.0 di bawah lisensi BSD 3-klausa), untuk kelas dan objek utilitas baru.
- Sigar (versi 1.6.5 di bawah lisensi Apache 2), untuk menyediakan antarmuka portabel untuk mengumpulkan informasi sistem.
- Semprot-json (versi 1.3.2 di bawah lisensi Apache 2), untuk (DE) Serializing JSON.
- Scala-InfluxDB-Client (versi 0.5.2 di bawah lisensi MIT), untuk menggunakan API Scala Asynchronous untuk InfluxDB.
Lisensi
Perangkat lunak ini dilisensikan di bawah Lisensi Publik Umum GNU Affero , yang dikutip di bawah ini.
Hak Cipta (C) 2011-2017 Inria, Universitas Lille 1.
PowerAPI adalah perangkat lunak gratis: Anda dapat mendistribusikannya kembali dan/atau memodifikasinya berdasarkan ketentuan Lisensi Publik Umum GNU Affero seperti yang diterbitkan oleh Free Software Foundation, baik versi 3 lisensi, atau (di opsi Anda) versi selanjutnya.
Powerapi didistribusikan dengan harapan akan bermanfaat, tetapi tanpa jaminan apa pun; bahkan tanpa jaminan tersirat dari dapat diperjualbelikan atau kebugaran untuk tujuan tertentu. Lihat Lisensi Publik Umum GNU Affero untuk lebih jelasnya.
Anda seharusnya menerima salinan Lisensi Publik Umum GNU Affero bersama dengan Powerapi. Jika tidak, silakan berkonsultasi dengan http://www.gnu.org/licenses/agpl-3.0.html.