Examples described herein relate to memory
thin provisioning in a
memory pool of one or more dual in-line memory modules or memory devices. At any instance, any
central processing unit (CPU) can request and receive a full virtual allocation of memory in an amount that exceeds the physical memory attached to the CPU (near memory). A remote
pool of additional memory can be dynamically utilized to fill the gap between allocated memory and near memory. This remote
pool is shared between multiple CPUs, with dynamic assignment and address re-mapping provided for the remote
pool. To improve performance, the near memory can be operated as a cache of the pool memory. Inclusive or exclusive content storage configurations can be applied. An inclusive cache configuration can include an entry in a near memory cache also being stored in a
memory pool whereas an exclusive cache configuration can provide an entry in either a near memory cache or in a
memory pool but not both. Near memory
cache management includes current
data location tracking, access counting and other caching
heuristics, eviction of data from near memory cache to pool memory and movement of data from pool memory to memory cache.