enthought / enthought/distarray

O-13: distarray local API -- elemental and pure procedures (optional)

Open
#193 3 comments 0 reactions 0 assignees View on GitHub
SBIR-year-2
Dominant language
Python
Stars
5
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Objective: To provide functionality that allows end users to specify that a local function is “elemental” or “pure”. Elemental routines can be applied on an element-by-element basis to the contents of its arguments without modifying those arguments, and pure routines guarantee that they will not modify their arguments.

Relevance: Elemental and pure routines, by guaranteeing not to modify their arguments or the contents of their arguments if container objects, allow for certain patterns that are difficult to accomplish with non-pure routines. This functionality will allow end users to accomplish map-reduce style work flows, for example.

Description: This task will provide either a separate decorator analogous to the odin.local decorator described above, or allow the end user to specify in another manner that a local function is pure or elemental. Once specified, the ODIN runtime is allowed to take these functions and possibly apply them in a manner that has more latitude when working with redundant data that is reproduced for fault tolerance or for overlapping regions in finite differencing style computations.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.