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 executable;
11pub mod fidelity;
12pub mod handle;
13pub mod memory;
14pub mod profile;
15pub mod queue;
16pub mod runtime;
17pub mod signal;
18pub mod trace;
19
20pub use agent::{AgentInfoAttr, AgentKind, VirtualAgent, AGENT_FEATURE_KERNEL_DISPATCH};
21pub use aql::{
22    golden_kernel_dispatch_1d, parse_kernel_dispatch, parse_supported_packet, replay_dispatch,
23    AqlParseError, DispatchDescriptor, KernargClass, PacketType, DIAGNOSTIC_COMPLETE_NO_EXECUTION,
24    DIAGNOSTIC_REJECTED, KERNEL_SUCCESS, PACKET_TYPE_AGENT_DISPATCH, PACKET_TYPE_BARRIER_AND,
25    PACKET_TYPE_BARRIER_OR,
26};
27pub use error::{Error, ErrorCategory, Result};
28pub use executable::{CodeObjectReader, ExecutableSymbol, SoftGpuExecutable};
29pub use fidelity::FidelityLevel;
30pub use handle::{HandleKind, PackedHandle};
31pub use memory::{AllocationMeta, MemorySpace, MemoryViewKind};
32pub use profile::{
33    CapabilityProvenance, DeviceProfile, ProfileField, ProfileIdentity, SupportState,
34};
35pub use queue::{HsaQueueAbi, PacketObservation, SoftGpuQueue};
36pub use runtime::{PoolInfoAttr, RegionInfoAttr, RegisteredIsaKernel, Runtime, RuntimeError};
37pub use signal::{SignalCondition, SignalWaitOutcome, SoftGpuSignal};
38pub use trace::{TraceEvent, TraceLog, TraceSink};
39
40/// SoftGPU core crate version.
41pub const VERSION: &str = env!("CARGO_PKG_VERSION");
42
43/// Active roadmap phase label for this crate revision.
44pub const ACTIVE_PHASE: &str = "phase-hip-load";