ให้ประสิทธิภาพความแม่นยำและการติดตามพลังงานที่ง่ายขึ้น
สำหรับไลบรารีดั้งเดิมที่รองรับหน่วยความจำที่ใช้ร่วมกันและจัดการหน่วยความจำและเครื่องอ่านพลังงานโดยอัตโนมัติดู HeartBeats
นอกจากนี้ยังดู Heartbeats-Simple-Classic ซึ่งห่อหุ้มห้องสมุดและ Energymon นี้เพื่อให้อินเทอร์เฟซคล้ายกับการออกแบบ heartbeats ดั้งเดิม
โครงการนี้ใช้ 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) มิฉะนั้นรับข้อมูลธงและ linker ด้วย 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 );
} ค้นหาสิ่งนี้และแหล่งที่มาของโครงการที่เกี่ยวข้องที่ LibheartBeats Organization บน GitHub
โครงการนี้มีต้นกำเนิดที่: https://github.com/libheartbeats/heartbeats-simple
รายงานข้อผิดพลาดและการร้องขอดึงสำหรับการแก้ไขข้อผิดพลาดและการปรับปรุงยินดีต้อนรับ