MCPcopy Create free account
hub / github.com/Xtra-Computing/thundersvm / checkpoint

Method checkpoint

src/thundersvm/util/log.cpp:2591–2622  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2589}
2590
2591void PerformanceTracker::checkpoint(const std::string& id, const char* file, base::type::LineNumber line,
2592 const char* func) {
2593#if !defined(ELPP_DISABLE_PERFORMANCE_TRACKING) && ELPP_LOGGING_ENABLED
2594 if (m_enabled) {
2595 base::threading::ScopedLock scopedLock(lock());
2596 base::utils::DateTime::gettimeofday(&m_endTime);
2597 base::type::string_t formattedTime = m_hasChecked ? getFormattedTimeTaken(m_lastCheckpointTime) : ELPP_LITERAL("");
2598 PerformanceTrackingData data(PerformanceTrackingData::DataType::Checkpoint);
2599 data.init(this);
2600 data.m_checkpointId = id;
2601 data.m_file = file;
2602 data.m_line = line;
2603 data.m_func = func;
2604 data.m_formattedTimeTaken = formattedTime;
2605 PerformanceTrackingCallback* callback = nullptr;
2606 for (const std::pair<std::string, base::type::PerformanceTrackingCallbackPtr>& h
2607 : ELPP->m_performanceTrackingCallbacks) {
2608 callback = h.second.get();
2609 if (callback != nullptr && callback->enabled()) {
2610 callback->handle(&data);
2611 }
2612 }
2613 base::utils::DateTime::gettimeofday(&m_lastCheckpointTime);
2614 m_hasChecked = true;
2615 m_lastCheckpointId = id;
2616 }
2617#endif // !defined(ELPP_DISABLE_PERFORMANCE_TRACKING) && ELPP_LOGGING_ENABLED
2618 ELPP_UNUSED(id);
2619 ELPP_UNUSED(file);
2620 ELPP_UNUSED(line);
2621 ELPP_UNUSED(func);
2622}
2623
2624const base::type::string_t PerformanceTracker::getFormattedTimeTaken(struct timeval startTime) const {
2625 if (ELPP->hasFlag(LoggingFlag::FixedTimeFormat)) {

Callers

nothing calls this directly

Calls 4

initMethod · 0.45
getMethod · 0.45
enabledMethod · 0.45
handleMethod · 0.45

Tested by

no test coverage detected