[RFC 00/13] drm/i915/svm: Add SVM support

Joonas Lahtinen joonas.lahtinen at linux.intel.com
Tue Nov 26 14:03:21 UTC 2019


Quoting Niranjana Vishwanathapura (2019-11-22 22:57:21)
> Shared Virtual Memory (SVM) allows the programmer to use a single virtual
> address space which will be shared between threads executing on CPUs and GPUs.
> It abstracts away from the user the location of the backing memory, and hence
> simplifies the user programming model.
> SVM supports two types of virtual memory allocation methods.
> Runtime allocator requires the driver to provide memory allocation and
> management interface, like buffer object (BO) interface.
> Whereas system allocator makes use of default OS memory allocation and
> management support like malloc().
> 
> This patch series adds both SVM system and runtime allocator support
> to i915 driver.
> 
> The patch series includes
>  - SVM support for both system and runtime allocation.
>  - Plugin in device memory with the Linux kernel.
>  - User API advertising SVM capability and configuration by user on per
>    vm basis.
>  - User API to bind an address range or a BO with a device page table.
>  - User API to migrate an address range to device memory.
>  - Implicit migration by moving pages or BOs back from device to host
>    memory upon CPU access.
>  - CPU copy and blitter copy support for migrating the pages/BOs.
>  - Large page mapping support
>  - Page table dump support.

Link to the IGTs, any selftests?
Link to userspace changes?

Regards, Joonas


More information about the dri-devel mailing list