O-13: distarray local API -- elemental and pure procedures (optional)
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- python
- Domain
- distributed-systems
Research direction
The issue does not name files or tests. Start by locating the existing odin.local decorator and its runtime handling, then define how users declare local functions as pure or elemental. Done means the API and runtime behavior support these declarations for map-reduce-style work and safe handling of redundant or overlapping data.
Written by the indexing model from the issue text.
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.
- Dominant language
- Python
- Stars
- 5
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from enthought/distarray
-
Difficulty 4/5 3-5 days Newbie friendliness 42/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 35/100
-
bug
Difficulty 3/5 1-2 days Newbie friendliness 30/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 35/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
All issues in enthought/distarray
Similar issues
-
bug confirmed issue
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
open-webui/open-webui#30750 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
OpenwaterHealth/openmotion-bloodflow-app#604 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
good first issue
Difficulty 1/5 Under an hour Newbie friendliness 90/100