From 621df211f31086387e992be2460461da629c6788 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20=27Griwes=27=20Dominiak?= Date: Thu, 12 Sep 2019 21:59:41 +0200 Subject: [PATCH 001/822] Add mentions of 1.9.6 to the documentation. --- doc/branching.md | 1 + doc/changelog.md | 18 ++++++++++++++++++ thrust/version.h | 2 +- 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/doc/branching.md b/doc/branching.md index 947ab1062..347add55b 100644 --- a/doc/branching.md +++ b/doc/branching.md @@ -13,6 +13,7 @@ versions don't directly map to any CUDA Toolkit version. | Thrust version | CUDA version | | ----------------- | ------------- | +| 1.9.6 | 10.1 Update 2 | | 1.9.5 | 10.1 Update 1 | | 1.9.4 | 10.1 | | 1.9.3 | 10.0 | diff --git a/doc/changelog.md b/doc/changelog.md index 98923388a..ca0af3044 100644 --- a/doc/changelog.md +++ b/doc/changelog.md @@ -1,3 +1,21 @@ +# Thrust v1.9.6 (CUDA 10.1 Update 2) # + +## Summary + +Thrust v1.9.6 is a minor release accompanying the CUDA 10.1 Update 2 release. + +## Bug Fixes + +- NVBug 2509847 Inconsistent alignment of `thrust::complex` +- NVBug 2586774 Compilation failure with Clang + older libstdc++ that doesn't + have `std::is_trivially_copyable` +- NVBug 200488234 CUDA header files contain unicode characters which leads + compiling errors on Windows +- #949, #973, NVBug 2422333, NVBug 2522259, NVBug 2528822 `thrust::detail::aligned_reinterpret_cast` + must be annotated with __host__ __device__ +- NVBug 2599629 Missing include in the OpenMP sort implementation +- NVBug 200513211 Truncation warning in test code under VC142 + # Thrust v1.9.5 (CUDA 10.1 Update 1) ## Summary diff --git a/thrust/version.h b/thrust/version.h index eec81f3eb..dcc08c379 100644 --- a/thrust/version.h +++ b/thrust/version.h @@ -47,7 +47,7 @@ * THRUST_VERSION / 100 % 1000 is the minor version. * THRUST_VERSION / 100000 is the major version. */ -#define THRUST_VERSION 100906 +#define THRUST_VERSION 100907 /*! \def THRUST_MAJOR_VERSION * \brief The preprocessor macro \p THRUST_MAJOR_VERSION encodes the From de845f906ec047882348eed97c628424d72e9761 Mon Sep 17 00:00:00 2001 From: Bryce Adelstein Lelbach aka wash Date: Fri, 11 Oct 2019 13:28:02 -0700 Subject: [PATCH 002/822] Makefile: Don't force any C++ dialect, instead use the host compiler's default. --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 12f9d964c..6bee8ef68 100644 --- a/Makefile +++ b/Makefile @@ -30,8 +30,8 @@ # Makefile for building Thrust unit test driver -# Force C++11 mode. NVCC will ignore it if the host compiler doesn't support it. -#export CXX_STD = c++11 +# Don't force any C++ mode, use the host compiler's default. +export CXX_STD = export VERBOSE = 1 From b36f2c9059939039eb7b8c68539364b73d1655b7 Mon Sep 17 00:00:00 2001 From: Bryce Adelstein Lelbach aka wash Date: Mon, 14 Oct 2019 17:46:39 -0700 Subject: [PATCH 003/822] Remove unused functions from the CUDA backend which call slow CUDA attribute query APIs. --- thrust/system/cuda/detail/core/util.h | 133 ++++---------------------- 1 file changed, 16 insertions(+), 117 deletions(-) diff --git a/thrust/system/cuda/detail/core/util.h b/thrust/system/cuda/detail/core/util.h index a2c6b88cc..abf455bac 100644 --- a/thrust/system/cuda/detail/core/util.h +++ b/thrust/system/cuda/detail/core/util.h @@ -36,7 +36,6 @@ #include #include - THRUST_BEGIN_NS namespace cuda_cub { @@ -56,13 +55,13 @@ namespace core { // Typelist - a container of types, supports up to 10 types // -------------------------------------------------------------------------- - + class _; template struct typelist; // ------------------------------------- - + // supported SM arch // --------------------- struct sm30 { enum { ver = 300, warpSize = 32 }; }; @@ -94,7 +93,7 @@ namespace core { // metafunction to match next viable PtxPlan specialization // -------------------------------------------------------------------------- - + __THRUST_DEFINE_HAS_NESTED_TYPE(has_tuning_t, tuning) __THRUST_DEFINE_HAS_NESTED_TYPE(has_type_t, type) @@ -121,7 +120,7 @@ namespace core { template class Tuning, class _0> struct has_sm_tuning_impl > : has_type_t > {}; - + // specializing for Tunig which needs 2 args template class Tuning, @@ -131,9 +130,9 @@ namespace core { template