Skip to content
This repository was archived by the owner on Mar 21, 2024. It is now read-only.

Thrust 1.13.0 (NVIDIA HPC SDK 21.7)

Compare
Choose a tag to compare
@alliepiper alliepiper released this 15 Jun 16:42
· 644 commits to main since this release
8b2a322

Thrust 1.13.0 is the major release accompanying the NVIDIA HPC SDK 21.7 release.

Notable changes include bfloat16 radix sort support (via thrust::sort) and memory handling fixes in the reserve method of Thrust's vectors. The CONTRIBUTING.md file has been expanded to include instructions for building CUB as a component of Thrust, and API documentation now refers to cppreference instead of SGI's STL reference.

Breaking Changes

  • #1459: Remove deprecated aliases thrust::host_space_tag and thrust::device_space_tag. Use the equivalent thrust::host_system_tag and thrust::device_system_tag instead.

New Features

  • NVIDIA/cub#306: Add radix-sort support for bfloat16 in thrust::sort. Thanks to Xiang Gao (@zasdfgbnm) for this contribution.
  • #1423: thrust::transform_iterator now supports non-copyable types. Thanks to Jake Hemstad (@jrhemstad) for this contribution.
  • #1459: Introduce a new THRUST_IGNORE_DEPRECATED_API macro that disables deprecation warnings on Thrust and CUB APIs.

Bug Fixes

  • NVIDIA/cub#277: Fixed sanitizer warnings when thrust::sort calls into cub::DeviceRadixSort. Thanks to Andy Adinets (@canonizer) for this contribution.
  • #1442: Reduce extraneous comparisons in thrust::sort's merge sort implementation.
  • #1447: Fix memory leak and avoid overallocation when calling reserve on Thrust's vector containers. Thanks to Kai Germaschewski (@germasch) for this contribution.

Other Enhancements

  • #1405: Update links to standard C++ documentations from sgi to cppreference. Thanks to Muhammad Adeel Hussain (@AdeilH) for this contribution.
  • #1432: Updated build instructions in CONTRIBUTING.md to include details on building CUB's test suite as part of Thrust.