Skip to content

Commit

Permalink
refactor(mem_manager): 计算器日志打印到日志文件
Browse files Browse the repository at this point in the history
Signed-off-by: YdrMaster <[email protected]>
  • Loading branch information
YdrMaster committed Nov 22, 2023
1 parent 746b147 commit 6442c37
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ namespace refactor::mem_manager {
};
std::optional<TraceInfo> _traceInfo;
// trace format :
// alloc/free begin end size allocTimes freeTimes peak rate freeCount minBlockSize maxBlockSize
// CALCULATOR this alloc/free begin end size allocTimes freeTimes peak rate freeCount minBlockSize maxBlockSize
void trace(std::string event);

public:
Expand Down
25 changes: 16 additions & 9 deletions src/02mem_manager/src/mem_offset_calculator.cc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#include "mem_manager/mem_offset_calculator.h"
#include "common.h"
#include "mem_manager/functions.h"
#include <utility>
#include <fmtlog.h>

namespace refactor::mem_manager {

Expand All @@ -18,7 +18,13 @@ namespace refactor::mem_manager {
_freeBlocks{},
_headAddrToBlockSize{},
_tailAddrToBlockSize{},
_traceInfo(trace ? std::make_optional(TraceInfo{0, 0}) : std::nullopt) {}
#ifndef NDEBUG
_traceInfo(trace ? std::make_optional(TraceInfo{0, 0}) : std::nullopt)
#else
_traceInfo(std::nullopt)
#endif
{
}

size_t OffsetCalculator::alloc(size_t size) {
// pad the size to the multiple of alignment
Expand Down Expand Up @@ -113,13 +119,14 @@ namespace refactor::mem_manager {
}

void OffsetCalculator::trace(std::string event) {
fmt::println("{} {:>5} {:>5} {:>#10} {:>#6f} {:>5} {:>#10} {:>#10}",
event,
_traceInfo->allocTimes, _traceInfo->freeTimes,
_peak, static_cast<double>(_used) / _peak,
_freeBlocks.size(),
_freeBlocks.empty() ? 0 : _freeBlocks.begin()->blockSize,
_freeBlocks.empty() ? 0 : _freeBlocks.rbegin()->blockSize);
logi("CALCULATOR {} {} {:>5} {:>5} {:>#10} {:>#6f} {:>5} {:>#10} {:>#10}",
reinterpret_cast<void *>(this),
event,
_traceInfo->allocTimes, _traceInfo->freeTimes,
_peak, static_cast<double>(_used) / _peak,
_freeBlocks.size(),
_freeBlocks.empty() ? 0 : _freeBlocks.begin()->blockSize,
_freeBlocks.empty() ? 0 : _freeBlocks.rbegin()->blockSize);
}

}// namespace refactor::mem_manager

0 comments on commit 6442c37

Please sign in to comment.