Closed wmalpica closed 3 years ago
Regarding:
Improve cache_events_logger by making sure all caching events are logged (adding to cacheMachines) and when we downgrading data (MemoryMonitor). I dont think we need to log when we pull out of cacheMachines.
Downgrading data is currently captured by batch_logger
in CacheMachine.cpp
in the function downgradeCacheData
. We dont want batch_logger
to capture that anymore. We want cache_events_logger
to capture that somehow.
The following is a summary of all the logs we have, what they log and what are their deficiencies:
input_comms/output_comms
queries_logger
kernels_logger
kernels_edges_logger
kernels_logger
graph::add_edge
events_logger
::do_process
functions. If we want to use this, it needs to be universally in all::do_process
functions.cache_events_logger
BatchSequence::next()
(and other similar next() functions)OutputKernel::run()
kernel::add_to_output_cache
::next()
functions.batch_logger
queries_logger
Information we would like to be able to know
PROPOSED ACTIONS
batch_logger
task_logger Task logger would log tasks executed by the executor. It should only need to be in
task::run(...)
:output_num_bytes (lets add this at a later time)
(lets add this at a later time) We would make it so that all
do_process
would return rows and bytes output, so that we can log it.In this alternate proposal, then we would be able to analyze time spent in all processing, caching (via
cache_events_logger
) and decaching (via task_logger). In this proposal, we would not be able to explicitly track every batch how it goes in and out and to where it come from and goes to. That is information that could be useful in a very very detailed debugging analysis. We have right now a little more of that info, but not by a lot.