Wie kann man FRP aus gerichteten azyklischen Diagrammen ableiten?

Ich recherchiere gerade für mein nächstes Projekt. Dies befindet sich in einer Vorplanungsphase, daher dient diese Frage nur dazu, einen Überblick über die vorhandene Technologie zu erhalten.

Installiere

Ich habe einen gerichteten azyklischen Graphen (DAG) mit mehreren Ein- und Ausgängen, denke vorerst an ein künstliches neuronales Netzwerk:

Die übliche Art, eine solche Struktur zu verarbeiten, besteht darin, bei jedem (Zeit-) Schritt das gesamte Netzwerk zu verarbeiten. Ich glaube, das ist die Methode, die von FP-Bibliotheken wie @ verwendet wirnetwire.

Nun bin ich in der glücklichen Lage, dass ich eine Reihe von Ereignissen habe, die jeweils die Änderung in @ darstelleein der Eingangsknoten. Die Idee ist, dass ich wahrscheinlich nicht jeden Knoten im Netzwerk wechseln muss, wenn ich statisch wissen kann, dass eine bestimmte Änderung nur einen Teil davon betrifft.

Beispie

In dem Bild über 5, 7 und 3 sind Eingänge, 11 und 8 sind "versteckt" und 2, 9 und 10 sind Ausgangsknoten. Eine Änderung an Knoten 5 wirkt sich nur auf Knoten 11 und im Endeffekt auf die Knoten 2, 9 und 10 aus. Ich muss die Knoten 7, 3 und 8 nicht verarbeiten.

Das Zie

Verarbeiten Sie diese Art von Netzwerk mit möglichst geringer Latenz. Die Größe der Graphen wird wahrscheinlich bis zu 100.000 Knoten erreichen, wobei ein moderater Rechenaufwand pro Knoten durchgeführt wird.

Der Pla

Ich hoffe, dass jemand für die Bibliothek X wirbt, die gerade die Arbeit erledigt.

Andernfalls ist mein aktueller Plan, eine Berechnung pro Eingangsknoten aus der Diagrammbeschreibung abzuleiten. Wahrscheinlich werde ich das @ verwendPar monad, damit ich mich nicht selbst um Datenabhängigkeiten kümmern muss und trotzdem von Multicore-Maschinen profitieren kann.

Die FrageIst da draußen eine Bibliothek, die genau das tut, was ich brauche?Ist meinParplan machbar? Inwieweit hängt dies vom Umfang der in den einzelnen Knoten erforderlichen Verarbeitung ab?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage