enthought / enthought/distarray
O-9: distarray global API -- array expressions with partially overlapping arrays (optional)
- Vorherrschende Sprache
- Python
- Sterne
- 5
- Forks
- 1
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Objective: The goal of this sub-task is to define the semantics for distributed array expressions with arrays that are not identically distributed.
Relevance: Supporting array expressions when the component arrays are not identically distributed will allow ODIN to more closely align with NumPy’s functionality, will improve overall usability, and will more closely conform to what is expected for users coming from a NumPy background (i.e. the principle of least surprise).
Description: When partially overlapping distributed arrays are combined in an expression whose result is another distributed array, certain ambiguities arise: how should the result array be distributed? What nodes are responsible for the computation? In which circumstances is communication more costly than computation, and what heuristics can be devised to help guide these decisions at runtime?
Given these ambiguities, allowing end-user control in some form is a possible option to pursue, whether it be via decorators, context managers, or other mechanisms provided by Python control flow structures.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginnen Sie damit, die Semantik für Ausdrücke zu klären, die sich teilweise überschneidende verteilte Arrays kombinieren, einschließlich der Verteilung des Ergebnisses und der Frage, welche Knoten die Berechnung durchführen. Vergleichen Sie das gewünschte Verhalten mit der Funktionalität von NumPy und bewerten Sie anschließend die Abwägungen zwischen Kommunikation und Berechnung sowie mögliche Steuerungsmöglichkeiten für Benutzer, etwa Decorators oder Context Managers. Erledigt ist die Aufgabe, wenn die Unklarheiten beseitigt und eine Implementierungsrichtung festgelegt ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- distributed-systems
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 20/100