You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/cudf/source/cudf_polars/engine_options.md
+7
Original file line number
Diff line number
Diff line change
@@ -23,3 +23,10 @@ engine = GPUEngine(
23
23
result = query.collect(engine=engine)
24
24
```
25
25
Note that passing `chunked: False` disables chunked reading entirely, and thus `chunk_read_limit` and `pass_read_limit` will have no effect.
26
+
27
+
## Disabling CUDA Managed Memory
28
+
29
+
By default `cudf_polars` will default to [CUDA managed memory](https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#unified-memory-introduction) with RMM's pool allocator. On systems that don't support managed memory, a non-managed asynchronous pool
30
+
allocator is used.
31
+
Managed memory can be turned off by setting `POLARS_GPU_ENABLE_CUDA_MANAGED_MEMORY` to `0`. System requirements for managed memory can be found [here](
Copy file name to clipboardExpand all lines: docs/cudf/source/cudf_polars/index.rst
+6
Original file line number
Diff line number
Diff line change
@@ -9,6 +9,12 @@ and run on the CPU.
9
9
10
10
Benchmark
11
11
---------
12
+
13
+
.. note::
14
+
The following benchmarks were performed with `POLARS_GPU_ENABLE_CUDA_MANAGED_MEMORY` environment variable set to `"0"`.
15
+
Using managed memory (the default) imposes a performance cost in order to avoid out of memory errors.
16
+
Peak performance can still be attained by setting the environment variable to 1.
17
+
12
18
We reproduced the `Polars Decision Support (PDS) <https://github.com/pola-rs/polars-benchmark>`__ benchmark to compare Polars GPU engine with the default CPU settings across several dataset sizes. Here are the results:
0 commit comments