Skip to content

Use an increased release threshold for the default async pool when using DeviceMemoryResource #771

Closed

Description

@shwina

As reported in #756 (comment), allocation via DeviceMemoryResource can be very slow when there are no active allocations. This is due to the default pool being configured with a release threshold of 0.

A fix for this could be for DeviceMemoryResource to configure the default pool to have a larger (or maximum) release threshold via cuMemPoolSetAttribute.

Activity

  1. self-assigned this
    on Jul 21, 2025
  2. added
    enhancementAny code-related improvements
    P0High priority - Must do!
    cuda.coreEverything related to the cuda.core module
    and removed
    triageNeeds the team's attention
    on Jul 21, 2025
  3. added this to the cuda.core beta 6 milestone on Jul 21, 2025
  4. leofang commented on Aug 21, 2025

    @leofang
    Member

    We need to upstream this workaround
    https://github.com/NVIDIA/cccl/blob/cf69aecbbadcd80a1107b0db41896b9d697301c9/python/cuda_cccl/cuda/cccl/parallel/experimental/_utils/temp_storage_buffer.py#L21-L33
    done in cuda-cccl back to cuda-core. This should be done in DeviceMemoryResource as noted. This performance improvement should be release-noted.

  5. moved this from Todo to Done in CCCLon Aug 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

P0High priority - Must do!cuda.coreEverything related to the cuda.core moduleenhancementAny code-related improvements

Type

No type

Projects

  • Status
    Done

Relationships

None yet

Development

No branches or pull requests

Issue actions