2016-04-20 21 views
2

Ich arbeite an einem Algorithmus, der ein großes Datenproblem unterteilt und Arbeit über viele Knoten ausführt. Die lokale Lösung für jede Unterteilung des Problems kann modifiziert werden, um mit einer globalen Lösung übereinzustimmen, wenn jede Untereinheit eine begrenzte Menge an Information über die Unterteilungen um sie herum kennt.Begriff für einen Algorithmus, der in einer verteilten oder sequenziellen Weise funktioniert

Dies kann durch eine feste Anzahl von Kommunikationen zwischen jeder Unterteilung erreicht werden, was eine nahezu peinlich parallele Lösung ermöglicht.

Ein up-shot ist jedoch, dass, wenn das Problem auf einem einzelnen Kern durchgeführt wurde, jedes Stück von Daten nur eine festgelegte Anzahl von Malen geladen werden muss, unabhängig von der Größe des Problems, zu erreichen Lösung.

Somit ist der Algorithmus gut parallelisiert, was schnelle Lösungen auf Supercomputern ermöglicht, wo genügend Knoten vorhanden sind, um alle Daten gleichzeitig zu speichern, aber auch sehr große Datensätze mit begrenzten Ressourcen verarbeitet werden können Festplatte eine feste Anzahl von Malen.

Gibt es ein Standardwort oder Ausdruck, der einen solchen Algorithmus mit dieser Eigenschaft bezeichnet?

+1

Peinlich parallel? –

+0

@DavidEisenstat: Es ist ein [gebräuchlicher Begriff] (https://en.wikipedia.org/wiki/Embarrassingly_parallel) für ein Problem, das in parallele Arbeitslasten ohne die Notwendigkeit für eine Kommunikation zwischen den Lasten oder Verarbeitung zu reduzieren/kombinieren kann Ergebnisse. – Richard

+0

@DavidEisenstat: Andere Begriffe dafür sind "perfekt parallel" und "gefällig parallel". Übrigens, obwohl es mir nichts ausmacht, etwas zu erklären, habe ich das Gefühl, dass Sie sich einen Moment Zeit genommen haben könnten, Google zu fragen, bevor Sie diese Frage stellen. – Richard

Antwort

1

könnte die theoretische Beschreibung des Problems sein, dass seine Komplexität in NC liegt, und vor allem eine sehr niedrige Ordnung Teilmenge von NC wobei c = 0 und k = 1