Sprzętowa akceleracja międzyrdzeniowa
Badacze z Intela i North Carolina State University (NCSU) opracowali nową sprzętową metodę znacznego przyspieszenia komunikacji pomiędzy rdzeniami procesora.
Współczesne programy wykorzystują często więcej niż jeden rdzeń, to zaś wymaga skoordynowania pracy pomiędzy rdzeniami. Obecnie koordynuje się ją za pomocą instrukcji programowych, jednak odczytywanie i wykonywanie tych instrukcji wymaga czasu.
Efektem współpracy Intela i NCSU jest taki projekt układu scalonego, w którym instrukcje programowe zastąpiono wbudowanym sprzętem, który koordynuje współpracę pomiędzy rdzeniami. Podejście to, nazwane strukturą przyspieszenia komunikacji pomiędzy rdzeniami (core-to-core communication acceleration framework - CAF) zwiększa prędkość komunikacji od 2 do 12 razy - mówi profesor Yan Solihin z NCSU.
Kluczowym elementem CAF jest urządzenie do zarządzania kolejką (queue management device - QMD). Znajduje się ono na samym chipie i jest w stanie przeprowadzać podstawowe operacje logiczne oraz śledzić komunikację pomiędzy rdzeniami bez potrzeby odwoływania się do oprogramowania. Okazało się również, że dzięki zdolności do przeprowadzania podstawowych operacji logicznych QMD może być wykorzystane do zbierania danych z wielu rdzeni i odciążania ich o nawet 15% zadań. Obecnie pracujemy nad innymi urządzeniami, które będą w stanie przyspieszać obliczenia w układach wielordzeniowych - dodaje Solihin.
Szczegóły nowej technologii zostaną zaprezentowane podczas 25. Konferencji na temat architektur równoległych i technik kompilacji, która odbędzie się w dniach 11-15 września w Hajfie.
Komentarze (3)
wilk, 8 września 2016, 16:48
Czyli od wielu rdzeni powracamy do centralnego układu wspomagającego.
ojciec detecktor, 8 września 2016, 18:36
porównanie: czyli od wielu gwiazd powracamy do czarnej dziury?
Przemek Kobel, 9 września 2016, 08:47
Też mi się skojarzyło. Ale nie, tu raczej nie chodzi o istniejące już automaty nadzorujące prawidłową pracę procesora (jakieś tam czyszczenie kolejek, czy pilnowanie zbieżności wspólnie obrabianych danych), tylko (podejrzewam) zdjęcie roboty z programistów, którzy musieli odpowiednio pisać kod, żeby w pełni sobie poużywać na wielordzeniowcach. A zatem "powracamy do pisania jednowątkowego"?