heartbeats simple
1.0.0
提供簡化的性能,準確性和功率跟踪。
有關支持共享內存並自動管理內存和能量讀取器的原始庫,請參閱心跳。
另外,請參見心跳式典型經典,它包裝了該庫和能量蒙克,以提供類似於原始心跳設計的界面。
該項目使用CMAKE。
要構建,運行:
mkdir _build
cd _build
cmake ..
make要安裝,以適當的特權運行:
make install在Linux上,安裝通常將庫放入/usr/local/lib和標頭文件中/usr/local/include 。
必須在卸載之前運行安裝,以便有清單。
要卸載,以適當的特權運行:
make uninstall如果您的項目使用Cmake,則可以找到HeartbeatsSimple軟件包,並與該名稱空間中的heartbeats-simple庫目標鏈接,例如:
find_package (HeartbeatsSimple REQUIRED)
target_link_libraries (foo PRIVATE HeartbeatsSimple::heartbeats-simple)否則,使用pkg-config獲取標誌和鏈接器信息,例如:
pkg-config --cflags heartbeats-simple
pkg-config --libs heartbeats-simple以下是一個簡單的心跳示例,忽略了錯誤檢查和其他特定於平台的#include語句。
#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 );
}在Github的LibheartBeat組織中找到此和相關的項目來源。
該項目始於:https://github.com/libheartbeats/heartbeats-simple
歡迎錯誤報告和提取錯誤的請求和增強功能。