Changes: 25.03#
General
Add an environment variable
LEGATE_MAX_EXCEPTION_SIZE
that determines the maximum number of bytes for an exception that can be raised by a task.Improve specification of logging levels. These may now be specified in a more human-readable manner. Instead of
--logging some_logger=2
, the user may now pass--logging some_logger=info
. To see supported values for this feature, see the--help
output of the legate driver, or by running withLEGATE_CONFIG=--help
. To ease adoption, the old numeric logging values continue to be supported.Add support for
FORCE_COLOR
andNO_COLOR
environment variables. In keeping with https://force-color.org/ and https://no-color.org/ if both are defined, thenFORCE_COLOR
takes precedence.Move
legate-bind.sh
toshare/legate/libexec
. This is a low-level tool that is usually not invoked by the user directly, and moving it to this new directory reflects this. The user should instead launch their programs directly, or, for greater convenience use thelegate
launcher.
C++#
General
Data
Add
legate::PhysicalStore::is_partitioned()
that indicates if the store is partitioned.
Mapping
Partitioning
Tasks
Remove
legate::VariantOptions::return_size
.Add
legate::TaskInfo
. This class has technically always existed, but was undocumented.Add
legate::VariantInfo
. This class has technically always existed, but was undocumented.Add
legate::VariantOptions::has_side_effect
andlegate::VariantOptions::with_has_side_effect()
, to indicate that a variant has external side-effects, and therefore shouldn’t be replicated.Add
legate::VariantOptions::may_throw_exception
andlegate::VariantOptions::with_may_throw_exception()
to indicate that a variant may throw a C++ exception.Add
legate::VariantOptions::communicators
andlegate::VariantOptions::with_communicators()
to indicate that a variant will use the specified communicator(s).
Types
Change
legate::struct_type()
. It now returns an aligned struct type by default.
Runtime
Add
legate::Runtime::start_profiling_range
andlegate::Runtime::stop_profiling_range
to create Legion profile ranges.Change
legate::Library::register_task()
. It now takes aconst legate::TaskInfo &
instead of astd::unique_ptr<legate::TaskInfo>
Change
legate::Library::find_task()
. It now returns alegate::TaskInfo
instead of aconst legate::TaskInfo *
.
Utilities
Allow constructing a
legate::Span
directly from container-like objects.Allow constructing a
legate::Span
directly from astd::initializer_list
.Add
legate::Span::data()
.
I/O
Python#
General
Data
Mapping
Partitioning
Tasks
Add
legate.core.ProfileRange
context manager to activate the API for generating sub-boxes on the profiler.
Types
Change
legate.core.struct_type()
. It now returns an aligned struct type by default.
Runtime
Utilities
I/O