OpenNN
Open-source neural networks library
Loading...
Searching...
No Matches
configuration.h File Reference
#include "pch.h"

Go to the source code of this file.

Classes

struct  opennn::TypeInfo< Type::FP32 >
 TypeInfo specialization for 32-bit floating point (FP32) tensors. More...
 
struct  opennn::TypeInfo< Type::BF16 >
 TypeInfo specialization for bfloat16 (BF16) tensors. More...
 
struct  opennn::TypeInfo< Type::INT8 >
 TypeInfo specialization for signed 8-bit integer (INT8) tensors. More...
 
class  opennn::Configuration
 Global singleton holding the OpenNN device and precision configuration. More...
 
struct  opennn::Configuration::Resolved
 Resolved configuration after Auto values are mapped to concrete device and types. More...
 

Namespaces

namespace  opennn
 

Enumerations

enum class  opennn::Device { opennn::Auto , opennn::CPU , opennn::CUDA }
 Execution device selection for OpenNN runtime (auto-detected, CPU or CUDA GPU). More...
 
enum class  opennn::Type { opennn::Auto , opennn::FP32 , opennn::BF16 , opennn::INT8 }
 Numeric precision used for training or inference tensors. More...
 

Functions

template<Type... Supported, typename F>
void opennn::visit_type (Type t, F &&f)
 Dispatches f with the TypeInfo of the runtime Type t (must be in Supported).
 
template<Type... Supported, typename F>
void opennn::visit_type_pair (Type t_in, Type t_out, F &&f)
 Dispatches f with the TypeInfo pair for an input and output runtime Type.
 
cudnnDataType_t opennn::to_cudnn (Type type) noexcept
 Returns the cuDNN data type matching the given OpenNN Type (Auto resolves to FP32).
 
cudaDataType_t opennn::to_cuda (Type type) noexcept
 Returns the CUDA data type matching the given OpenNN Type (Auto resolves to FP32).
 
Index opennn::type_bytes (Type type) noexcept
 Returns the byte size of one element of the given OpenNN Type.
 
bool opennn::is_gpu ()
 Returns true when the resolved configuration runs on a CUDA GPU.
 
bool opennn::is_cpu ()
 Returns true when the resolved configuration runs on CPU.
 
bool opennn::is_bf16_training ()
 Returns true when training is configured to use BF16 precision.
 
bool opennn::is_bf16_inference ()
 Returns true when inference is configured to use BF16 precision.
 
Device opennn::current_device ()
 Returns the active runtime device (CUDA if available, otherwise CPU).