Intel Unified Memory Framework documentation# Introduction About UMF Architecture Memory Providers Pool Allocators Memory Pools Inter-Process Communication Fundamentals Logging Examples Basic Memory provider usage Memory pool usage GPU shared memory Memspace Custom memory provider CTL example Custom CTL example IPC example with Level Zero Memory Provider API Documentation Globals UMF_MAKE_VERSION UMF_MAJOR_VERSION UMF_MINOR_VERSION UMF_VERSION_CURRENT umf_result_t umf_memory_property_id_t umf_ctl_query_type_t umf_ctl_query_source_t Pools Memory Pool Disjoint Pool Jemalloc Pool Proxy Pool Scalable Pool Providers Memory Provider Fixed Memory Provider OS Memory Provider Level Zero Provider CUDA Provider DevDax Memory Provider File Memory Provider Memspace Memspace Mempolicy Mempolicy Memtarget Memtarget Memory Properties Memory Properties Inter-Process Communication IPC caching IPC API CTL Main concepts Pool / Provider addressing Wildcards Default addressing Environment variables CTL nodes Reading below sections Logger nodes umf.logger.timestamp() umf.logger.pid() umf.logger.level() umf.logger.flush_level() umf.logger.output() Provider nodes Common provider statistics OS memory provider (OS) Fixed memory provider (FIXED) DevDAX memory provider (DEVDAX) File memory provider (FILE) CUDA memory provider (CUDA) Level Zero memory provider (LEVEL_ZERO) Pool nodes Common pool statistics Disjoint pool (disjoint) Scalable pool (scalable) Jemalloc pool (jemalloc) Adding CTL support to custom providers and pools Glossary