heartbeats simple
1.0.0
단순화 된 성능, 정확도 및 전력 추적을 제공합니다.
공유 메모리를 지원하고 메모리 및 에너지 리더를 자동으로 관리하는 원래 라이브러리의 경우 하트 비트를 참조하십시오.
또한이 라이브러리와 EnergyMon을 포장하여 원래의 하트 비트 디자인과 유사한 인터페이스를 제공하는 Heartbeats-Simple Classic을 참조하십시오.
이 프로젝트는 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의 LibheartBeats 조직 에서이 프로젝트 및 관련 프로젝트 소스를 찾으십시오.
이 프로젝트는 https://github.com/libheartbeats/heartbeats-simple에서 시작됩니다
버그 보고서 및 풀 요청 및 버그 수정 및 개선 요청을 환영합니다.