int main(int argc, char **argv) { int i = 0; int ret = 0; /* Clean up if we're told to exit */ signal(SIGINT, sigint_handler); // First init the RAPL library if (0 != init_rapl()) { fprintf(stdout, "Init failed!\n"); terminate_rapl(); return MY_ERROR; } num_node = get_num_rapl_nodes_pkg(); ret = cmdline(argc, argv); if (ret) { terminate_rapl(); return ret; } do_print_energy_info(); terminate_rapl(); }
void sigint_handler(int signum) { int i, domain; uint64_t freq; fprintf(stdout, "end_time=%f\n", measurement_end_time); fprintf(stdout, "duration=%f\n", measurement_end_time - measurement_start_time); if (cum_energy_J != NULL) { for (i = 0; i < num_node; i++) { if (cum_energy_J[i] == NULL) { continue; } for (domain = 0; domain < RAPL_NR_DOMAIN; ++domain) { if (is_supported_domain(domain)) { char *domain_string = RAPL_DOMAIN_STRINGS[domain]; fprintf(stdout, "cpu%d_%s_Joules=%f\n", i, domain_string, cum_energy_J[i][domain]); } } } } terminate_rapl(); exit(0); }
int main(int argc, char **argv) { int i = 0; int ret = 0; // First init the RAPL library ret = init_rapl(); if (ret) { fprintf(stdout, "Init failed (%d)!\n",ret); terminate_rapl(); return ret; } num_node = get_num_rapl_nodes_pkg(); ret = cmdline(argc, argv); if (ret) { terminate_rapl(); return ret; } ret = do_set_power_limit(); terminate_rapl(); return ret; }
/* * Called once (from main) to clean up STM infrastructure. */ _CALLCONV void stm_exit(void) { PRINT_DEBUG("==> stm_exit()\n"); if (!_tinystm.initialized) return; tls_exit(); stm_quiesce_exit(); terminate_rapl(); #ifdef EPOCH_GC gc_exit(); #endif /* EPOCH_GC */ _tinystm.initialized = 0; }
void sigint_handler(int signum) { terminate_rapl(); exit(0); }