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

Support __{u,}int128_t in radix sort#607

Merged
gevtushenko merged 4 commits into
NVIDIA:mainfrom
gevtushenko:enh-main/github/sort_128
Jan 7, 2023
Merged

Support __{u,}int128_t in radix sort#607
gevtushenko merged 4 commits into
NVIDIA:mainfrom
gevtushenko:enh-main/github/sort_128

Conversation

@gevtushenko

Copy link
Copy Markdown
Collaborator

This PR supports __int128_t and __uint128_t in block/device radix sort as well as block radix rank. It's partially answering the question on 128 bit types support. Performance wise, __int128_t utilize BW similarly to 64 bit types.

@gevtushenko gevtushenko added the P2: nice to have Desired, but not necessary. label Jan 2, 2023
gevtushenko added a commit to gevtushenko/thrust that referenced this pull request Jan 2, 2023
@gevtushenko gevtushenko added the testing: gpuCI in progress Started gpuCI testing. label Jan 2, 2023
@gevtushenko gevtushenko added testing: gpuCI passed Passed gpuCI testing. and removed testing: gpuCI in progress Started gpuCI testing. labels Jan 3, 2023

@miscco miscco left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is awesome, thanks a lot. I assume that int128 implicitly requires uint128 which has the same switch?

@elstehle elstehle left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work, looks solid!

Comment thread cub/util_ptx.cuh
Comment thread cub/util_type.cuh
Comment thread cub/util_type.cuh
Comment thread test/test_device_radix_sort.cu Outdated
Comment thread test/test_util.h
Comment thread test/test_util.h
Comment thread test/test_util.h
Comment thread test/test_util.h
Comment thread test/test_util.h
@gevtushenko gevtushenko requested a review from canonizer January 6, 2023 09:05
gevtushenko added a commit to gevtushenko/thrust that referenced this pull request Jan 6, 2023

@canonizer canonizer left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved, provided that the comments are addressed.

Comment thread test/catch2_test_printing.cu
Comment thread test/catch2_test_printing.cu
Comment thread test/test_device_radix_sort.cu
Comment thread test/test_block_radix_rank.cu
Comment thread test/test_device_batch_memcpy.cu
Comment thread cub/util_type.cuh
Comment thread cub/util_type.cuh
@gevtushenko gevtushenko force-pushed the enh-main/github/sort_128 branch from 56cad37 to 475f96f Compare January 7, 2023 10:53
@gevtushenko gevtushenko merged commit 3abfcc1 into NVIDIA:main Jan 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

P2: nice to have Desired, but not necessary. testing: gpuCI passed Passed gpuCI testing.

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

4 participants