summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/include/nvgpu/linux/vm.h
diff options
context:
space:
mode:
authorJoshua Bakita <jbakita@cs.unc.edu>2022-05-30 12:20:48 -0400
committerJoshua Bakita <jbakita@cs.unc.edu>2022-05-31 11:32:12 -0400
commit745b3ef2ac4d7afa99202e6afc441e3f0b97f5b4 (patch)
treea3bf20ee2975666318a7275231d15fec451c1b10 /drivers/gpu/nvgpu/include/nvgpu/linux/vm.h
parentff66847a00ac27d8d94b3664ec156a195dbf3676 (diff)
gpu-paging: Support asynchronous paging
- Fully enables *_ASYNC API - Allows page mapping to be overlapped with I/O, resulting in an 11% speedup to synchronous reads Benchmarks, 1,000 iters, before: gpu_paging_speed, write: 185.5ms +/- 3.58 gpu_paging_speed, read: 180.5ms +/- 1.42 gpu_paging_overhead_speed, write start: 183.3ms +/- 3.89 gpu_paging_overhead_speed, write finish: 3.4ms +/- 2.61 gpu_paging_overhead_speed, read start: 181.6ms +/- 3.34 gpu_paging_overhead_speed, read finish: 41.1ms +/- 2.69 Benchmarks, 1,000 iters, after: gpu_paging_speed, write: 185.8ms +/- 3.70 gpu_paging_speed, read: 161.3ms +/- 0.97 gpu_paging_overhead_speed, write start: 38.9ms +/- 5.47 gpu_paging_overhead_speed, write finish: 3.1ms +/- 2.42 gpu_paging_overhead_speed, read start: 79.4 +/- 6.42 gpu_paging_overhead_speed, read finish: 44.3 +/- 1.53
Diffstat (limited to 'drivers/gpu/nvgpu/include/nvgpu/linux/vm.h')
-rw-r--r--drivers/gpu/nvgpu/include/nvgpu/linux/vm.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/include/nvgpu/linux/vm.h b/drivers/gpu/nvgpu/include/nvgpu/linux/vm.h
index b86a428a..85abce6f 100644
--- a/drivers/gpu/nvgpu/include/nvgpu/linux/vm.h
+++ b/drivers/gpu/nvgpu/include/nvgpu/linux/vm.h
@@ -51,6 +51,7 @@ struct nvgpu_mapped_buf_priv {
51 struct sg_table *sgt; 51 struct sg_table *sgt;
52 // For fast reverse lookup (FD -> mapped_buf) 52 // For fast reverse lookup (FD -> mapped_buf)
53 struct list_head nvmap_priv_entry; 53 struct list_head nvmap_priv_entry;
54 struct completion swap_io_done;
54}; 55};
55 56
56/* NVGPU_AS_MAP_BUFFER_FLAGS_DIRECT_KIND_CTRL must be set */ 57/* NVGPU_AS_MAP_BUFFER_FLAGS_DIRECT_KIND_CTRL must be set */