Ich würde gerne wissen, ob es möglich ist zu identifizieren, physischen Prozessor (Kern) wird von Thread mit bestimmten Thread-ID verwendet?Identifizieren Prozessor (Kern) wird von bestimmten Thread verwendet
Zum Beispiel habe ich eine Multithread-Anwendung, die 2 Threads (Threadid = 10 und Threadid = 20, zum Beispiel) hat. Ich führe die Anwendung auf einem System mit einem Dual-Core-Prozessor (Core 1 und Core 2). Also, wie man die Anzahl der Kern kennenlernen wird von Thread mit Threadid = 20 verwendet?
P.S. Windows-Plattformen.
Vielen Dank,
Denis.
Vielen Dank für Ihre Antwort, Patrick! Es taucht also eine andere Frage auf - ist es möglich zu erfahren, wie viel Zeit ein bestimmter Thread auf einem bestimmten Kern läuft? (Zum Beispiel läuft ein Thread 20% seiner Zeitscheibe auf Kern 1 und 80% seiner Zeitscheibe läuft auf Kern 2) – DenisL
Nicht dass ich Denis kenne. Sie können einen Thread auf bestimmte Kerne beschränken (dies wird als Thread-Affinität bezeichnet). Vielleicht können Sie Ihren Prozess in mehrere Threads aufteilen, wobei jeder Thread einem Kern zugewiesen wird. Kannst du erklären, was das ursprüngliche Problem ist? (was zu Ihrer ursprünglichen Frage führt) Vielleicht kann Ihr Problem auf andere Weise gelöst werden. – Patrick
Ich wurde beauftragt, zwei Funktionen zu erstellen: 1. Die erste Funktion gibt die gesamte Multicore-Prozessor-Nutzung durch spezifische Thread-ID zurück. Ich habe die Funktion mit Leistungszählerfunktionen implementiert. 2. Die zweite Funktion gibt spezifische Kernnutzung durch spezifische Thread-ID zurück. Ich habe keine Ahnung, wie man die Funktion erstellt, es scheint unmöglich zu sein. – DenisL