Java-Multi-Core-Verarbeitung
Ich würde gerne lernen über Java-multi-core-Verarbeitung. Von dem was ich verstehe, ist, dass Threading
ist eine Art von multi-core-ich glaube, ich habe einen anständigen Griff. Ich weiß, es gibt andere Wege, um multi-core-Verarbeitung, aber ich weiß nicht, was Sie sind. Kennt jemand eine gute einfache tutorials/Beispiele, oder haben Ihre eigenen, die ich mir ansehen konnte, erfahren Sie mehr über multi-core-Verarbeitung in Java?
Alle, die tutorials, die ich gefunden habe, zu sehr in die Tiefe mit Diagrammen, Grafiken, hintergrund Informationen, etc. und das ist wirklich nicht mein Stil lernen mit der Programmierung. Ich würde am Liebsten etwas schnelles und einfaches.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Der primäre Weg, Sie nutzen mehrere Kerne, ist die Verwendung mehrerer threads. Der einfachste Weg, diese zu verwenden, wenn Sie über das Hohe Parallelität Objekte, die Sie sollten bekannt sein mit. Diese threads verwendet, aber Sie nicht mit Ihnen zu tun haben direkt.
Andere Möglichkeit ist die Verwendung mehrerer Prozesse, aber dies ist ein Indirekter Weg, der über mehrere threads.
Finden Sie vielleicht diese Bibliothek interessant. Java-Thread-Affinität Es ermöglicht Ihnen die Zuordnung von thread sockets, cores oder cpus.
Dies ist der Oracle-tutorial über Java 7 fork/join-framework
http://docs.oracle.com/javase/tutorial/essential/concurrency/forkjoin.html
Jenseits der genannten High-Level-Parallelität von Objekten (fork/join Hinzugefügt werden sollte es), die Teil der Java-Implementierung, es gibt viele Bibliotheken und frameworks. Google nach "Akteur-framework", "Datenfluss-framework", mapreduce, "wissenschaftliche dataflow". Das Datenfluss-Modell ist das mainstream, alle anderen sind es Variationen (z.B. Akteur - Datenfluss-Knoten mit single-input-port, mapreduce - persistente verteilte Akteure erstellt durch Nachfrage, etc.). Die minimalen Datenfluss-framework (keine Persistenz oder der Verbreitung über ein Rechner-cluster) ist mir df4j Bibliothek.