[FEA] dynamic_map device-side API
Nobody has claimed this yet.
- Dominant language
- Cuda
- Stars
- 667
- Forks
- 120
- Avg merge
- 7d 5h
- Merged PRs (30d)
- 4
Description
Currently, the dynamic_map has only a host-side API, which supports insert, find, contains. It would be useful to have an additional, advanced-usage API supporting __device__ versions of insert, find, and contains.
There are some important considerations in designing this API:
- The map will not be able to dynamically resize when using the device-side API. This is because control must be returned to the host to resize. There is no preventing the user from inserting too many keys for the capacity of the map.
- The size field of the
dynamic_mapas well as its constituentstatic_mapobjects needs to be updated as the device-sideinsertis used. This could potentially be done automatically, such as with an RAII wrapper around thedevice_mutable_viewobject. It could also be done manually by the user.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the existing dynamic_map host-side API for insert, find, and contains, then inspect the device_mutable_view mentioned in the issue. Define how the device operations handle fixed capacity and how size fields are updated after device-side inserts. Done means the device-side API and its size-update behavior are specified and implemented without device-side resizing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- data
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100