Skip to content
  • Jérôme Glisse's avatar
    hmm: heterogeneous memory management documentation · bffc33ec
    Jérôme Glisse authored
    Patch series "HMM (Heterogeneous Memory Management)", v25.
    
    Heterogeneous Memory Management (HMM) (description and justification)
    
    Today device driver expose dedicated memory allocation API through their
    device file, often relying on a combination of IOCTL and mmap calls.
    The device can only access and use memory allocated through this API.
    This effectively split the program address space into object allocated
    for the device and useable by the device and other regular memory
    (malloc, mmap of a file, share memory, â) only accessible by
    CPU (or in a very limited way by a device by pinning memory).
    
    Allowing different isolated component of a program to use a device thus
    require duplication of the input data structure using device memory
    allocator.  This is reasonable for simple data structure (array, grid,
    image, â) but this get extremely complex with advance data
    structure (list, tree, graph, â) that rely on a web of memory
    pointers.  This is becom...
    bffc33ec