Was ist der Zweck von M: N (Hybrid) Threading?


12

Mit anderen Worten, welche Vorteile hat Hybrid-Threading gegenüber 1: 1 (nur Kernel) und N: 1 (nur Benutzer)?

Dies ist eine Fortsetzung von Was ist der Unterschied zwischen Threads auf Benutzerebene und Threads auf Kernelebene?


1
Bitte erläutern Sie die Konzepte in Kürze oder verweisen Sie auf entsprechende Referenzen.
Raphael

3
Ähm, dass Sie die Vorteile von beiden bekommen? (@Raphael Done.)
Gilles '

Auch der Wikipedia-Artikel scheint einige (Nachteile) aufzuzählen. Was suchen Sie konkret?
Raphael

Antworten:


7

Ich denke, dass Hybrid-Threading einem Thread-Pool sehr ähnlich ist .

NMMN

Der Vorteil gegenüber dem Threading nur durch Benutzer besteht darin, dass Sie mehrere CPUs oder mehrere CPU-Kerne nutzen können. Wenn eine Task blockiert wird, können Sie einen weiteren Kernel-Thread erstellen, um die verfügbare CPU effizienter zu nutzen.

Auf diese Weise erhalten Sie die Vorteile beider Ansätze auf Kosten einer zusätzlichen Benutzermodusplanung.

Ein Nachteil gegenüber der Zeitplanung nur für den Kernel ist möglicherweise die höhere Latenz: Wenn alle Threads im Pool ausgelastet sind und Sie eine neue kurze Task hinzufügen, können Sie lange warten, bis die Ausführung beginnt.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.