diff --git a/pkgs/development/libraries/nvidia-thrust/default.nix b/pkgs/development/libraries/nvidia-thrust/default.nix index 1c673837c28c..545607ead2d1 100644 --- a/pkgs/development/libraries/nvidia-thrust/default.nix +++ b/pkgs/development/libraries/nvidia-thrust/default.nix @@ -7,12 +7,20 @@ , cudaPackages , symlinkJoin , tbb - # Upstream defaults: , hostSystem ? "CPP" -, deviceSystem ? if config.cudaSupport or false then "CUDA" else "CPP" +, deviceSystem ? if config.cudaSupport or false then "CUDA" else "OMP" }: -assert builtins.elem deviceSystem [ "CPP" "OMP" "TBB" "CUDA" ]; +# Policy for device_vector +assert builtins.elem deviceSystem [ + "CPP" # Serial on CPU + "OMP" # Parallel with OpenMP + "TBB" # Parallel with Intel TBB + "CUDA" # Parallel on GPU +]; + +# Policy for host_vector +# Always lives on CPU, but execution can be made parallel assert builtins.elem hostSystem [ "CPP" "OMP" "TBB" ]; let