O-14: Execution contexts for user control and performance feedback (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
No files, tests, or entry points are named. Start by mapping the distributed array computation APIs, then define the decorator and context-manager scope for debugging, performance feedback, computation strategy, and implicit communication. Done means users can control these behaviors as described.
Written by the indexing model from the issue text.
Description
Objective: To provide features that allow an ODIN user to control how certain operations are carried out, and to provide performance feedback.
Relevance: By providing features that allow users to control how operations are performed, ODIN users can adapt the framework to their specific usecase, and choose where they fall on the performance-usability spectrum.
Description: This task will implement, via Python decorators and context managers, features that allow the end user to control how distributed array computations are performed. These modifications will allow capabilities such as:
• Debugging and performance feedback – this will turn on full feedback for easy debugging, allowing a user to easily determine if an exception was raised on a worker node and get the context and contents of that exception. The performance feedback will optionally provide information on what and how much data was communicated between nodes, and how much communication overhead was involved in a computation, for example.
• Control over the computation strategy for distributed array expressions: whether source computes, destination computes, or whether the operation should minimize communication.
• Control over whether communication should be allowed implicitly. For performance reasons, a user may desire the ability to disallow any implicit communication for an array computation, and this context manager would provide this performance-oriented feature, requiring the end user to explicitly allocate all arrays and ensure that they are distributed in an identical fashion before performing computations with them.
- 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
-
sponsored
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
Diaoul/subliminal#1382 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 92/100
-
triage/confirmed
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
agentscope-ai/agentscope#2775 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100