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

Potentially interpret tuple as an index type in zip_iterator #70

Closed
jaredhoberock opened this issue May 7, 2012 · 0 comments
Closed
Labels
P3: backlog Unprioritized thrust type: enhancement New feature or request.

Comments

@jaredhoberock
Copy link
Contributor

z_iter[(i,j,k)] could potentially make sense if the tuple is the right size and the element types are each convertible to zip_iterator::difference_type

Comment 1 by andrew.corrigan, Sep 16, 2011
I implemented a new iterator called multi_permutation_iterator [1]. It is a new iterator which is like a permutation_iterator but with tuple-valued indexes, and thus dereferences to produce tuples of values from ElementIterator, as opposed to a single value like permutation_iterator. This implements the functionality I described last year, which led to this issue being opened. [2]

As compared to a combination of zip_iterator and multiple permutation_iterators, this new iterator has the advantage of only using one ElementIterator, which can reduce register usage and also parameter size (and thus avoid launch_closure_by_pointer and its memory allocation and copy). This has already helped speed up my code quite a bit, where so far I use it to implement non-contiguous, coalesced multi-dimensional arrays. This multi_permutation_iterator should also help others implement things like finite-difference stencils without excessive register usage, as discussed in [3].

[1] https://code.google.com/r/andrewcorrigan-thrust/source/detail?r=22958c2f47c02cb1a67d8e5c2ad1f788da99f7ac
[2] http://groups.google.com/group/thrust-users/browse_thread/thread/d76e6f7d6206790e/1a7a307e843241f7
[3] http://groups.google.com/group/thrust-users/browse_thread/thread/853579a9bccff08c/33c67c39e7e380a1

Forwarded from http://code.google.com/p/thrust/issues/detail?id=205

kshitij12345 pushed a commit to kshitij12345/thrust that referenced this issue Mar 24, 2022
…-trivial

ctor)

https://github.com/NVlabs/cub/issues/71

Doc fixes for Issue NVIDIA#70 (1.5.5 breaks BlockScan API)

https://github.com/NVlabs/cub/issues/70
Former-commit-id: eb1c1432ad3df4d29dc055d45f4ccc3b00c8b2ba
@alliepiper alliepiper added the P3: backlog Unprioritized label Apr 28, 2022
@jrhemstad jrhemstad added this to CCCL Aug 11, 2022
@jrhemstad jrhemstad closed this as not planned Won't fix, can't repro, duplicate, stale Mar 7, 2023
@github-project-automation github-project-automation bot moved this to Done in CCCL Mar 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
P3: backlog Unprioritized thrust type: enhancement New feature or request.
Projects
Archived in project
Development

No branches or pull requests

3 participants