Skip to content

[FEA] Add DECIMAL128 support to streaming groupby #24065

Description

@PointKernel

Is your feature request related to a problem? Please describe.

Based on the offline discussion with @kjmph

Streaming groupby does not support DECIMAL128. Workloads that need it fall back to the classic groupby::aggregate path, which holds the full hash aggregation state for the whole input at once.

This came up while investigating TPC-H SF3K OOMs on AWS g73.48xlarge. Q18 was only fixable via host spilling, which was very slow, and DECIMAL128 streaming groupby would help.

Describe the solution you'd like

Accept DECIMAL128 in streaming groupby for keys and for the aggregations it already supports. The missing piece is 128-bit atomics for the aggregation path.

Describe alternatives you've considered

Host spilling. Works but too slow.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature requestNew feature or requestlibcudfAffects libcudf (C++/CUDA) code.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions