Blender
V3.3
|
#include <profiling.h>
Public Member Functions | |
Profiler () | |
~Profiler () | |
void | reset (int num_shaders, int num_objects) |
void | start () |
void | stop () |
void | add_state (ProfilingState *state) |
void | remove_state (ProfilingState *state) |
uint64_t | get_event (ProfilingEvent event) |
bool | get_shader (int shader, uint64_t &samples, uint64_t &hits) |
bool | get_object (int object, uint64_t &samples, uint64_t &hits) |
bool | active () const |
Protected Member Functions | |
void | run () |
Protected Attributes | |
vector< uint64_t > | event_samples |
vector< uint64_t > | shader_samples |
vector< uint64_t > | object_samples |
vector< uint64_t > | shader_hits |
vector< uint64_t > | object_hits |
volatile bool | do_stop_worker |
thread * | worker |
thread_mutex | mutex |
vector< ProfilingState * > | states |
Definition at line 69 of file util/profiling.h.
CCL_NAMESPACE_BEGIN Profiler::Profiler | ( | ) |
Definition at line 11 of file profiling.cpp.
Profiler::~Profiler | ( | ) |
Definition at line 15 of file profiling.cpp.
bool Profiler::active | ( | ) | const |
Definition at line 161 of file profiling.cpp.
References worker.
Referenced by PathTraceWorkCPU::render_samples().
void Profiler::add_state | ( | ProfilingState * | state | ) |
Definition at line 94 of file profiling.cpp.
References lock, mutex, object_hits, PROFILING_UNKNOWN, shader_hits, state, and states.
Referenced by CPUKernelThreadGlobals::start_profiling().
uint64_t Profiler::get_event | ( | ProfilingEvent | event | ) |
Definition at line 133 of file profiling.cpp.
References event_samples, NULL, and worker.
Referenced by RenderStats::collect_profiling().
Definition at line 150 of file profiling.cpp.
References NULL, object_hits, object_samples, and worker.
Referenced by RenderStats::collect_profiling().
Definition at line 139 of file profiling.cpp.
References NULL, shader_hits, shader_samples, and worker.
Referenced by RenderStats::collect_profiling().
void Profiler::remove_state | ( | ProfilingState * | state | ) |
Definition at line 113 of file profiling.cpp.
References lock, mutex, object_hits, blender::bke::attribute_accessor_functions::remove(), shader_hits, state, and states.
Referenced by CPUKernelThreadGlobals::stop_profiling().
void Profiler::reset | ( | int | num_shaders, |
int | num_objects | ||
) |
Definition at line 56 of file profiling.cpp.
References event_samples, NULL, object_hits, object_samples, PROFILING_NUM_EVENTS, shader_hits, shader_samples, start(), stop(), and worker.
Referenced by Session::run_update_for_next_iteration().
|
protected |
Definition at line 20 of file profiling.cpp.
References do_stop_worker, event_samples, lock, mutex, object_samples, PROFILING_NUM_EVENTS, shader_samples, state, and states.
Referenced by start().
void Profiler::start | ( | ) |
Definition at line 76 of file profiling.cpp.
References do_stop_worker, function_bind, NULL, run(), and worker.
Referenced by reset(), and Session::thread_render().
void Profiler::stop | ( | ) |
Definition at line 83 of file profiling.cpp.
References do_stop_worker, thread::join(), NULL, and worker.
Referenced by reset(), and Session::thread_render().
|
protected |
Definition at line 105 of file util/profiling.h.
Definition at line 94 of file util/profiling.h.
Referenced by get_event(), reset(), and run().
|
protected |
Definition at line 108 of file util/profiling.h.
Referenced by add_state(), remove_state(), and run().
Definition at line 103 of file util/profiling.h.
Referenced by add_state(), get_object(), remove_state(), and reset().
Definition at line 96 of file util/profiling.h.
Referenced by get_object(), reset(), and run().
Definition at line 102 of file util/profiling.h.
Referenced by add_state(), get_shader(), remove_state(), and reset().
Definition at line 95 of file util/profiling.h.
Referenced by get_shader(), reset(), and run().
|
protected |
Definition at line 109 of file util/profiling.h.
Referenced by add_state(), remove_state(), and run().
|
protected |
Definition at line 106 of file util/profiling.h.
Referenced by active(), get_event(), get_object(), get_shader(), reset(), start(), stop(), and ~Profiler().