|
Revision tags: v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1 |
|
| #
d69bb47d |
| 27-Jan-2022 |
Elena Agostini <[email protected]> |
gpudev: expose GPU memory to CPU
Enable the possibility to expose a GPU memory area and make it accessible from the CPU.
GPU memory has to be allocated via rte_gpu_mem_alloc().
This patch allows t
gpudev: expose GPU memory to CPU
Enable the possibility to expose a GPU memory area and make it accessible from the CPU.
GPU memory has to be allocated via rte_gpu_mem_alloc().
This patch allows the gpudev library to map (and unmap), through the GPU driver, a chunk of GPU memory and to return a memory pointer usable by the CPU to access the GPU memory area.
Signed-off-by: Elena Agostini <[email protected]>
show more ...
|
| #
c8557ed4 |
| 08-Jan-2022 |
Elena Agostini <[email protected]> |
gpudev: add alignment for memory allocation
Similarly to rte_malloc, rte_gpu_mem_alloc accepts as input the memory alignment size.
GPU driver should return GPU memory address aligned with the input
gpudev: add alignment for memory allocation
Similarly to rte_malloc, rte_gpu_mem_alloc accepts as input the memory alignment size.
GPU driver should return GPU memory address aligned with the input value.
Signed-off-by: Elena Agostini <[email protected]>
show more ...
|
|
Revision tags: v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2 |
|
| #
2d61b429 |
| 08-Nov-2021 |
Elena Agostini <[email protected]> |
gpudev: add memory barrier
Add a function for the application to ensure the coherency of the writes executed by another device into the GPU memory.
Signed-off-by: Elena Agostini <[email protected]
gpudev: add memory barrier
Add a function for the application to ensure the coherency of the writes executed by another device into the GPU memory.
Signed-off-by: Elena Agostini <[email protected]>
show more ...
|
| #
e818c4e2 |
| 08-Nov-2021 |
Elena Agostini <[email protected]> |
gpudev: add memory API
In heterogeneous computing system, processing is not only in the CPU. Some tasks can be delegated to devices working in parallel. Such workload distribution can be achieved by
gpudev: add memory API
In heterogeneous computing system, processing is not only in the CPU. Some tasks can be delegated to devices working in parallel. Such workload distribution can be achieved by sharing some memory.
As a first step, the features are focused on memory management. A function allows to allocate memory inside the device, or in the main (CPU) memory while making it visible for the device. This memory may be used to save packets or for synchronization data.
The next step should focus on GPU processing task control.
Signed-off-by: Elena Agostini <[email protected]> Signed-off-by: Thomas Monjalon <[email protected]>
show more ...
|
| #
a9af048a |
| 08-Nov-2021 |
Thomas Monjalon <[email protected]> |
gpudev: support multi-process
The device data shared between processes are moved in a struct allocated in a shared memory (a new memzone for all GPUs). The main struct rte_gpu references the shared
gpudev: support multi-process
The device data shared between processes are moved in a struct allocated in a shared memory (a new memzone for all GPUs). The main struct rte_gpu references the shared memory via the pointer mpshared.
The API function rte_gpu_attach() is added to attach a device from the secondary process. The function rte_gpu_allocate() can be used only by primary process.
Signed-off-by: Thomas Monjalon <[email protected]>
show more ...
|
| #
82e5f6b6 |
| 08-Nov-2021 |
Thomas Monjalon <[email protected]> |
gpudev: add child device representing a device context
The computing device may operate in some isolated contexts. Memory and processing are isolated in a silo represented by a child device. The con
gpudev: add child device representing a device context
The computing device may operate in some isolated contexts. Memory and processing are isolated in a silo represented by a child device. The context is provided as an opaque by the caller of rte_gpu_add_child().
Signed-off-by: Thomas Monjalon <[email protected]>
show more ...
|
| #
18cb0756 |
| 08-Nov-2021 |
Thomas Monjalon <[email protected]> |
gpudev: add event notification
Callback functions may be registered for a device event. Callback management is per-process and not thread-safe.
The events RTE_GPU_EVENT_NEW and RTE_GPU_EVENT_DEL ar
gpudev: add event notification
Callback functions may be registered for a device event. Callback management is per-process and not thread-safe.
The events RTE_GPU_EVENT_NEW and RTE_GPU_EVENT_DEL are notified respectively after creation and before removal of a device, as part of the library functions. Some future events may be emitted from drivers.
Signed-off-by: Thomas Monjalon <[email protected]>
show more ...
|
| #
8b8036a6 |
| 08-Nov-2021 |
Elena Agostini <[email protected]> |
gpudev: introduce GPU device class library
In heterogeneous computing system, processing is not only in the CPU. Some tasks can be delegated to devices working in parallel.
The new library gpudev i
gpudev: introduce GPU device class library
In heterogeneous computing system, processing is not only in the CPU. Some tasks can be delegated to devices working in parallel.
The new library gpudev is for dealing with GPGPU computing devices from a DPDK application running on the CPU.
The infrastructure is prepared to welcome drivers in drivers/gpu/.
Signed-off-by: Elena Agostini <[email protected]> Signed-off-by: Thomas Monjalon <[email protected]>
show more ...
|