Memberikan kinerja, akurasi, dan pelacakan daya yang disederhanakan.
Untuk perpustakaan asli yang mendukung memori bersama dan mengelola pembaca memori dan energi secara otomatis, lihat detak jantung.
Juga lihat Detak Jantung-Simple-Klasik, yang membungkus perpustakaan ini dan EnergyMon untuk menyediakan antarmuka yang mirip dengan desain detak jantung asli.
Proyek ini menggunakan CMake.
Untuk membangun, jalankan:
mkdir _build
cd _build
cmake ..
makeUntuk menginstal, jalankan dengan hak istimewa yang tepat:
make install Di Linux, instalasi biasanya menempatkan perpustakaan di /usr/local/lib dan file header di /usr/local/include .
Instal harus dijalankan sebelum menghapus instalasi untuk memiliki manifes.
Untuk menghapus instalasi, jalankan dengan hak istimewa yang tepat:
make uninstall Jika proyek Anda menggunakan cmake, Anda dapat menemukan paket HeartbeatsSimple dan tautan dengan target perpustakaan heartbeats-simple di namespace itu, misalnya:
find_package (HeartbeatsSimple REQUIRED)
target_link_libraries (foo PRIVATE HeartbeatsSimple::heartbeats-simple) Kalau tidak, dapatkan informasi bendera dan linker dengan pkg-config , misalnya:
pkg-config --cflags heartbeats-simple
pkg-config --libs heartbeats-simple Berikut ini adalah contoh detak jantung sederhana, mengabaikan pemeriksaan kesalahan dan pernyataan #include tambahan, yang spesifik platform.
#include <heartbeats-simple.h>
void do_application_loop ( uint64_t iterations , uint64_t window_len ) {
heartbeat_context hb ;
heartbeat_record * window_buf = malloc ( window_len * sizeof ( heartbeat_record ));
int fd = open ( "heartbeat.log" , O_CREAT | O_WRONLY | O_TRUNC , S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH );
heartbeat_init ( & hb , window_len , window_buf , fd , NULL );
hb_ctx_log_header ( & hb );
for ( uint64_t i = 0 ; i < iterations ; i ++ ) {
uint64_t start_time = get_time_in_ns ();
do_work ();
uint64_t end_time = get_time_in_ns ();
heartbeat ( & hb , i , 1 , start_time , end_time );
}
hb_ctx_log_window_buffer ( & hb ); // flush remaining window data to log file
close ( fd );
free ( window_buf );
} Temukan ini dan sumber proyek terkait di organisasi LibheartBeats di GitHub.
Proyek ini berasal dari: https://github.com/libheartbeats/heartbeats-simple
Laporan bug dan permintaan tarik untuk perbaikan bug dan peningkatan dipersilakan.