Description
max_total_num_items is needed to communicate an upper bound on the total number of items processed (e.g. the combined size of all segments in cub::DeviceBatchedTopK), which an algorithm can use to choose offset types (e.g., tile offset size) as well as sizing temporary storage buffers. Since this bound-information may not be attachable to a specific parameter (e.g., on a DeviceBatchedTopK and similarly for some other segmented algorithms that do not have a number of items parameter), we decided that for these cases it should go into the guarantees API.
Description
max_total_num_itemsis needed to communicate an upper bound on the total number of items processed (e.g. the combined size of all segments incub::DeviceBatchedTopK), which an algorithm can use to choose offset types (e.g., tile offset size) as well as sizing temporary storage buffers. Since this bound-information may not be attachable to a specific parameter (e.g., on aDeviceBatchedTopKand similarly for some other segmented algorithms that do not have anumber of itemsparameter), we decided that for these cases it should go into the guarantees API.