Changes: 24.06#

General

  • Deprecate LegateCheckCUDA() and LegateCheckCUDAStream() in favor of LEGATE_CHECK_CUDA() and LEGATE_CHECK_CUDA_STREAM(). However, unlike most deprecations, users are not encouraged to use the replacements. Rather, users should create their own variants of these macros as both LEGATE_CHECK_CUDA() and LEGATE_CHECK_CUDA_STREAM() are temporary and will be removed in a future release. As they are temporary, their removal will be immediate, and will not be precipitated by a deprecation period.

Data

  • Remove default constructor for LogicalArray, LogicalStore, PhysicalArray, PhysicalStore. These were never “valid” methods to construct these objects, and only existed to work around deficiencies in the Cython compiler. Users should use the various Runtime methods to construct these objects instead.

Mapping

Partitioning

  • Remove default constructor for Variable, and Constraint. These were never “valid” methods to construct these objects, and only existed to work around deficiencies in the Cython compiler. Users should use the various Task and constraint-generating methods (e.g. align(), scale()) to construct these objects instead.

Tasks

  • Remove default constructor for AutoTask, and ManualTask. These were never “valid” methods to construct these objects, and only existed to work around deficiencies in the Cython compiler. Users should use the various Runtime methods to construct these objects instead.

  • Allow declaring default task VariantOption’s per variant inline within the task declaration. If present, these default options will be used at task registration. See LegateTask for further discussion.

Types

  • Deprecate type_code_of in favor of type_code_of_v, as the latter is more idiomatically named in C++. In the future type_code_of may be changed to hold a value member to also be inline with idiomatic C++.

  • Deprecate type_of in favor of type_of_t, as the latter is more idiomatically named in C++. In the future type_of will be changed to hold a type member to also be inline with idiomatic C++.

Runtime

  • Remove default constructor for Library, and Type. These were never “valid” methods to construct these objects, and only existed to work around deficiencies in the Cython compiler. Users should use the various Runtime methods to construct these objects instead.

  • Add Runtime::get_executing_processor().

Utilities

  • Rename <core/cuda_help.h> to <core/cuda.h>. While this header is publicly exported, it is only done so out of necessity, and users are encouraged not to rely on it.