Skip to content

[EPIC]: CUB large input support #50

@jrhemstad

Description

@jrhemstad

As a lower-level interface, CUB should optimize for flexibility and performance. As a result, CUB will not guarantee a large input will work by default. However, it should enable users to specify their desired offset type.

This means CUB should not perform any dynamic dispatch based on the input size. Instead, users should have a way to statically specify the offset type. In previous discussion we favored making the type of num_items a template and infer the offset type from the type of num_items.

Design-related research

Testing large number of items

Enable large num_items in CUB algorithms that are sensitive to the choice of offset_t

Limit the number of kernel template instantiations by reducing the set of offset types

Clean up interim testing infrastructure

  • Switch tests for large number of items to use Device* interface in DeviceSelect
  • Switch tests for large number of items to use Device* interface in DeviceScan

Documentation

Sub-issues

Metadata

Metadata

Assignees

Labels

cubFor all items related to CUB

Projects

Status

In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions