Pulp
1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
health_provider.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <
pulp_tooling/gpu_health/health_result.hpp
>
4
5
#include <memory>
6
#include <string>
7
8
namespace
pulp::tooling::gpu_health
{
9
18
class
HealthProvider
{
19
public
:
20
virtual
~HealthProvider
() =
default
;
21
23
virtual
ProbeEvidence
probe_renderer3d
() = 0;
25
virtual
ProbeEvidence
probe_headless_surface
() = 0;
27
virtual
ProbeEvidence
probe_compute
() = 0;
28
};
29
34
struct
HealthProbeOptions
{
35
bool
seed_headless_content_mismatch
=
false
;
36
};
37
39
std::unique_ptr<HealthProvider>
make_default_health_provider
(
40
HealthProbeOptions
options = {});
41
47
HealthResult
run_health_check
(
HealthProvider
& provider,
48
bool
render_requested =
true
);
49
51
int
exit_code
(
const
HealthResult
& result);
53
std::string
render_human
(
const
HealthResult
& result);
54
55
}
// namespace pulp::tooling::gpu_health
pulp::tooling::gpu_health::HealthProvider
Blocking producer interface for the three independent GPU health probes.
Definition
health_provider.hpp:18
pulp::tooling::gpu_health::HealthProvider::probe_headless_surface
virtual ProbeEvidence probe_headless_surface()=0
Acquire a bounded headless Graphite render/readback observation.
pulp::tooling::gpu_health::HealthProvider::~HealthProvider
virtual ~HealthProvider()=default
pulp::tooling::gpu_health::HealthProvider::probe_renderer3d
virtual ProbeEvidence probe_renderer3d()=0
Acquire Renderer3D evidence, including a bounded render/readback oracle.
pulp::tooling::gpu_health::HealthProvider::probe_compute
virtual ProbeEvidence probe_compute()=0
Acquire a bounded GPU compute/map observation and CPU-oracle comparison.
health_result.hpp
pulp::tooling::gpu_health
Bounded, typed evidence returned by Pulp GPU health diagnostics.
Definition
health_provider.hpp:8
pulp::tooling::gpu_health::exit_code
int exit_code(const HealthResult &result)
Map pass to 0, fail to 1, and unavailable or unverified to 2.
pulp::tooling::gpu_health::render_human
std::string render_human(const HealthResult &result)
Render an owning human-readable report; machine consumers use to_json().
pulp::tooling::gpu_health::run_health_check
HealthResult run_health_check(HealthProvider &provider, bool render_requested=true)
Execute the requested probes serially and derive one closed HealthResult.
pulp::tooling::gpu_health::make_default_health_provider
std::unique_ptr< HealthProvider > make_default_health_provider(HealthProbeOptions options={})
Create the native blocking provider and transfer sole ownership to the caller.
pulp::tooling::gpu_health::HealthProbeOptions
Fault controls applied after real GPU work completes.
Definition
health_provider.hpp:34
pulp::tooling::gpu_health::HealthProbeOptions::seed_headless_content_mismatch
bool seed_headless_content_mismatch
Definition
health_provider.hpp:35
pulp::tooling::gpu_health::HealthResult
Closed versioned aggregate returned by the GPU health diagnostic.
Definition
health_result.hpp:206
pulp::tooling::gpu_health::ProbeEvidence
Evidence and aggregate verdict for one independently executed probe.
Definition
health_result.hpp:193
tools
cli
gpu_health
include
pulp_tooling
gpu_health
health_provider.hpp
Generated by
1.15.0