Skip to main content

softgpu_core/
lib.rs

1//! Vendor-neutral SoftGPU core.
2//!
3//! Owns profiles, generation-safe handles, runtime session state, virtual
4//! agents, memory/signals/queues, and structured traces. AMD/HSA ABI types
5//! stay in `softgpu-hsa`.
6
7pub mod agent;
8pub mod aql;
9pub mod error;
10pub mod fidelity;
11pub mod handle;
12pub mod memory;
13pub mod profile;
14pub mod queue;
15pub mod runtime;
16pub mod signal;
17pub mod trace;
18
19pub use agent::{AgentInfoAttr, AgentKind, VirtualAgent, AGENT_FEATURE_KERNEL_DISPATCH};
20pub use aql::{
21    golden_kernel_dispatch_1d, parse_kernel_dispatch, parse_supported_packet, replay_dispatch,
22    AqlParseError, DispatchDescriptor, KernargClass, PacketType, DIAGNOSTIC_COMPLETE_NO_EXECUTION,
23    DIAGNOSTIC_REJECTED, PACKET_TYPE_AGENT_DISPATCH, PACKET_TYPE_BARRIER_AND,
24    PACKET_TYPE_BARRIER_OR,
25};
26pub use error::{Error, ErrorCategory, Result};
27pub use fidelity::FidelityLevel;
28pub use handle::{HandleKind, PackedHandle};
29pub use memory::{AllocationMeta, MemorySpace, MemoryViewKind};
30pub use profile::{
31    CapabilityProvenance, DeviceProfile, ProfileField, ProfileIdentity, SupportState,
32};
33pub use queue::{HsaQueueAbi, PacketObservation, SoftGpuQueue};
34pub use runtime::{PoolInfoAttr, RegionInfoAttr, Runtime, RuntimeError};
35pub use signal::{SignalCondition, SignalWaitOutcome, SoftGpuSignal};
36pub use trace::{TraceEvent, TraceLog, TraceSink};
37
38/// SoftGPU core crate version.
39pub const VERSION: &str = env!("CARGO_PKG_VERSION");
40
41/// Active roadmap phase label for this crate revision.
42pub const ACTIVE_PHASE: &str = "phase-6";