60 log::debug(
" hamiltonian_application: {:8.1f} ms",
95 [[nodiscard]] std::map<std::string, double>
as_map()
const {
140 previous, observed, std::memory_order_relaxed)) {}
157 log::info(
" memory after {:<22}= {} (peak {})",
175 log::debug(
" memory released after {:<19}= {} (now {}, peak {})",
192 log::debug(
" memory after {:<22}= {} (peak {})",
void debug(spdlog::format_string_t< Args... > fmt, Args &&... args)
void info(spdlog::format_string_t< Args... > fmt, Args &&... args)
std::uint64_t release_unused_heap()
double orthogonalize_time_ms
double total_time_ms() const
double subspace_update_time_ms
double ritz_vector_time_ms
double hamiltonian_projector_overlap_time_ms
The projector overlaps <beta|psi> of the nonlocal term, a part of nonlocal above.
void print_summary() const
double hamiltonian_nonlocal_time_ms
double hamiltonian_application_time_ms
double diagonalize_time_ms
std::map< std::string, double > as_map() const
double hamiltonian_kinetic_time_ms
double hamiltonian_fft_time_ms
void log_resident_checkpoint_debug(const std::string &label)
std::atomic< long long > fft_call_count
ResidentMemorySample record_resident_memory()
void log_resident_checkpoint(const std::string &label)
static ProfilingCounters & instance()
std::uint64_t peak_resident_bytes_now()
std::atomic< long long > hamiltonian_application_count
void print_memory_summary()
Print the peak resident set, omitted when no platform source could be read.
std::atomic< std::uint64_t > peak_resident_bytes
void release_unused_heap(const std::string &label)
std::atomic< long long > davidson_iteration_count
DavidsonTimingAccumulator davidson_timing
static ResidentMemorySample sample()
Platforms without a known source report nothing rather than guessing.
static std::string format_gibibytes(std::uint64_t bytes)
std::uint64_t current_bytes
Resident set size at the moment of sampling.
std::uint64_t peak_bytes
High-water mark of the resident set over the life of the process.
bool available
Whether any source could be read.