Changes: 25.10#

General

  • Add support for CUDA 13.

C++#

General

  • Remove legate/cuda/cuda.h.

  • Remove LEGATE_CHECK_CUDA() and LegateCheckCUDA().

  • Remove LEGATE_CHECK_CUDA_STREAM() and LegateCheckCUDAStream().

  • Remove LEGATE_THREADS_PER_BLOCK, LEGATE_MIN_CTAS_PER_SM, LEGATE_MAX_REDUCTION_CTAS, and LEGATE_WARP_SIZE. These were internal symbols accidentally exposed via legate/cuda/cuda.h and have been privatized as part of its removal.

Data

  • Make legate::ScopedAllocator copy-constructible.

  • Add legate::ScopedAllocator::allocate_aligned().

  • Add legate::ScopedAllocator::allocate_type().

  • Add legate::LogicalArray::as_struct_array().

  • Add legate::StructLogicalArray.

Mapping

Partitioning

  • Add LogicalStore::get_partition(). This method allows users to access the partition used by the runtime for optimizing task launches and data movement.

Tasks

Types

Runtime

  • Add legate::Runtime::create_struct_array().

Utilities

I/O

  • Change HDF5 Virtual File Driver (VFD) GPUDirectStorage (GDS) to enabled by default if Legate was built with support for it and Legate determines that GDS is likely to work. Previously this feature was disabled but could be toggled on via the --io-use-vfd-gds LEGATE_CONFIG option.

    Users should note that there is presently no way to reliably know ahead of time (i.e. before attempting cuFile calls) whether the filesystem supports GDS. Legate employs several heuristics to determine viability that – while rare – can provide both false positives and false negatives. Users relying on I/O performance who want this feature enabled should ensure it is on via the flag (as before), while users that encounter false positives should disable it via the flag and raise a bug report at nv-legate/legate#issues.

Python#

General

Data

  • Add legate.core.LogicalArray.as_struct_array().

  • Add legate.core.StructLogicalArray.

Mapping

  • Add legate.core.DimOrdering and legate.core.DimOrderingKind for dimension ordering

  • Add an optional argument of type DimOrderingKind to legate.core.Runtime.create_from_buffer() that denotes the dimension ordering kind

Partitioning

  • Add legate.core.LogicalStore.partition. This property allows users to access the partition used by the runtime for optimizing task launches and data movement.

Tasks

Types

Runtime

  • Add legate.core.Runtime.create_struct_array().

Utilities

I/O

  • Add legate.io.hdf5.from_file_batched() to read a HDF5 file in batches.