Próbuję dowiedzieć się, w jaki sposób system operacyjny (Windows, Linux) przypisuje numery do logicznego procesora cps w środowisku z włączoną funkcją Hyper threading. ?Numeracja procesora w systemie obsługującym hiperłącze
Czy oba systemy operacyjne najpierw szeregowo przypisują numery do procesorów fizycznych, a następnie rozpoczynają numerowanie logicznego procesora lub czy istnieje jakaś inna zasada? .. na przykład w 2 fizycznym systemie cpu z hiperwątkowem, czy OS przypisuje numer 0.2 do pierwszego fizycznego procesora, a następnie od 1,3 do drugiego fizycznego procesora ...?
Wszelkie odniesienia byłyby naprawdę doceniane.
Z góry dziękuję.
Pozdrawiam, -Jay.
Edycja: Odpowiadanie na pytanie Alana: Muszę to wiedzieć, ponieważ w mojej pracy potrzebuję powiązać różne wątki z konkretnymi procesorami, aby uniknąć przełączeń kontekstowych i chcę się upewnić, że pewne Zadania (THreads) są powiązane z oddzielne fizyczne cpusy:. Dzięki
Chcę wiedzieć, ponieważ chcę powiązać różne zadania (wątki) z różnymi procesami logicznymi. –
Ale dlaczego? Program planujący wątek zadba o prawidłowe wyważenie obciążenia między rdzeniami. Zazwyczaj nie ma potrzeby robienia tego ręcznie (może to nawet zaszkodzić wydajności) i może powodować nieoczekiwane efekty uboczne w przypadku krawędzi. –
Niektóre z algorytmów, których używamy, mają ograniczenia czasowe w mikrosekundach. Jeśli więc nie wymuszamy koligacji procesora na tych wielu wątkach, które przetwarzają te algos, przełączniki kontekstu uniemożliwiają osiągnięcie tych terminów synchronizacji. . –