4 Task- und Datenparallelität

Die Parallelisierung von Anwendungen mithilfe von Threads ist ein mühsames Unterfangen. Man muss viel Zeit investieren, um ein Programm so zu parallelisieren, dass es die verfügbare Rechenleistung effizient ausnutzt. Ein Grund dafür ist, dass die Erzeugung und Verwaltung von Threads einen nicht unerheblichen Aufwand verursacht. Hinzu kommt, dass bei einem Threadwechsel der aktuelle Kontext (Prozessorregister etc.) gesichert und der des auszuführenden Threads wiederhergestellt werden muss. Sind wesentlich mehr Threads rechenbereit als Prozessorkerne vorhanden, kommt es zu einer Überbelegung des Systems, die aufgrund der damit verbundenen Kontextwechsel zu Leistungseinbußen führen kann. Deshalb eignen sich Threads ...

Get Multicore-Software now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.