26 "Accumulates ray tracing results (information about the trace) on a per-processor basis.");
28 params.
addRequiredParam<UserObjectName>(
"study",
"The RayTracingStudy to get results from");
30 const std::string result_names =
31 "rays_started rays_traced chunks_traced rays_received buffers_received rays_sent "
32 "buffers_sent intersections generation_time propagation_time num_probes ray_pool_created "
33 "receive_ray_pool_created receive_buffer_pool_created send_buffer_pool_created face_hit "
34 "vertex_hit edge_hit moved_through_neighbors backface_culling_successes "
35 "backface_culling_failures intersection_calls vertex_neighbor_builds vertex_neighbor_lookups "
36 "edge_neighbor_builds edge_neighbor_lookups point_neighbor_builds failed_traces";
50 _pid_values(declareVector(
"pid"))
58 std::string lower_result_name;
60 std::transform(result.name().begin(),
62 std::back_inserter(lower_result_name),
65 auto id = result.id();
178 "' in PerProcessorRayTracingResultsVectorPostprocessor ",
registerMooseObject("RayTracingApp", PerProcessorRayTracingResultsVectorPostprocessor)
static InputParameters validParams()
const std::string & name() const
void mooseError(Args &&... args) const
unsigned long long int localWorkExecuted() const
Gets the total amount of work executed on this processor.
unsigned long long int localChunksExecuted() const
Gets the total number of chunks of work executed on this processor.
unsigned long long int buffersSent() const
Gets the total number of buffers sent from this processor.
unsigned long long int poolParallelDataCreated() const
Gets the total number of parallel data created in all of the threaded pools.
unsigned long long int parallelDataSent() const
Gets the total number of parallel data objects sent from this processor.
const ReceiveBuffer< ParallelDataType, ParallelStudy< WorkType, ParallelDataType > > & receiveBuffer() const
Gets the receive buffer.
unsigned long long int localWorkStarted() const
Gets the total amount of work started from this processor.
unsigned long long int sendBufferPoolCreated() const
Gets the total number of send buffer pools created.
Outputs per-processor metrics from a RayTracingStudy.
virtual void execute() override
static InputParameters validParams()
virtual void finalize() override
VectorPostprocessorValue & _pid_values
Vector to hold PIDs.
PerProcessorRayTracingResultsVectorPostprocessor(const InputParameters ¶meters)
std::map< processor_id_type, VectorPostprocessorValue * > _result_values
The VPP values.
const MultiMooseEnum & _results
The results that were chosen.
virtual void initialize() override
processor_id_type _pid
For convenience and speed.
const RayTracingStudy & _study
The study to pull data from.
Base class for Ray tracing studies that will generate Rays and then propagate all of them to terminat...
Real generationTime() const
Duration for creation of all Rays in seconds.
const ParallelRayStudy & parallelRayStudy() const
Real propagationTime() const
Duration for creation of all Rays in seconds.
unsigned long long int localTraceRayResult(const int result) const
@ BACKFACE_CULLING_FAILURES
@ VERTEX_NEIGHBOR_LOOKUPS
@ BACKFACE_CULLING_SUCCESSES
@ MOVED_THROUGH_NEIGHBORS
VectorPostprocessorValue & declareVector(const std::string &vector_name)
processor_id_type n_processors() const