| Termin | Definicja |
|---|---|
| Explicit Multi-GPU (DirectX 12) | Explicit Multi-GPU w DirectX 12 pozwala programistom bezpośrednio zarządzać wieloma kartami graficznymi jednocześnie, oferując większą elastyczność niż automatyczne rozwiązania jak SLI/CrossFire. Czym jest Explicit Multi-GPU w DirectX 12Explicit Multi-GPU to sposób wykorzystania kilku układów graficznych, w którym za podział pracy odpowiada bezpośrednio aplikacja korzystająca z interfejsu DirectX 12. Program nie przekazuje całej decyzji sterownikowi, lecz sam rozpoznaje dostępne adaptery graficzne, określa ich możliwości i przydziela im konkretne zadania. Dotyczy to zarówno dedykowanych kart graficznych, jak i innych obsługiwanych układów obecnych w komputerze, o ile aplikacja potrafi poprawnie z nich skorzystać. W praktyce można rozdzielać pracę między procesory graficzne na kilka sposobów. Jeden układ może zajmować się renderowaniem głównego obrazu, a drugi wykonywać wybrane obliczenia, przygotowywać część klatek albo obsługiwać określone zasoby. Możliwe jest także podzielenie obrazu na obszary lub rozłożenie kolejnych etapów renderowania, jednak skuteczność takiego rozwiązania zależy od konstrukcji programu. Nie wystarcza samo zamontowanie dwóch kart. Potrzebne są odpowiednie mechanizmy w silniku aplikacji, zgodność urządzeń z wymaganiami DirectX 12 oraz prawidłowe zarządzanie pamięcią, synchronizacją i przesyłaniem danych. Najważniejszą cechą tego modelu jest jawna kontrola nad zasobami. Aplikacja może sprawdzić, jaki adapter jest dostępny, jakie funkcje udostępnia i jaką rolę może pełnić w konkretnym zadaniu. Dzięki temu możliwe jest dopasowanie obciążenia do rzeczywistych możliwości sprzętu, ale jednocześnie zwiększa się odpowiedzialność twórców oprogramowania za obsługę różnych konfiguracji. Kontekst techniczny i porównanie sposobów pracy kart graficznychW starszych rozwiązaniach współpraca wielu kart była często uzależniona od warstwy sterownika oraz gotowych profili przygotowanych dla określonych aplikacji. Sterownik próbował ustalić, jak podzielić obciążenie, a program zazwyczaj nie miał pełnej wiedzy o tym, w jaki sposób powstaje wynik. DirectX 12 umożliwia przeniesienie części tych decyzji do aplikacji. Zyskuje się większą elastyczność, lecz kosztem bardziej złożonego kodu i konieczności przeprowadzania dokładnych testów. W modelu Explicit Multi-GPU można wyróżnić kilka istotnych obszarów zarządzania:
Ważne znaczenie ma również model pamięci. Każdy układ może posiadać własną pamięć graficzną, dlatego zasób załadowany do jednej karty nie zawsze jest automatycznie dostępny dla drugiej. Czas potrzebny na kopiowanie danych może ograniczyć korzyści z dodatkowego procesora graficznego. W niektórych przypadkach bardziej efektywne okazuje się użycie jednej karty z większą ilością pamięci i wysoką przepustowością niż rozdzielenie pracy między dwa słabiej współpracujące urządzenia. Wydajność należy oceniać nie tylko na podstawie liczby kart. Liczą się także opóźnienia, przepustowość połączeń, sposób synchronizacji, rodzaj obciążenia oraz to, czy zadania da się wykonywać równolegle. Renderowanie grafiki, obliczenia fizyczne, analiza danych i generowanie obrazu mogą mieć różne wymagania. Dlatego rozwiązanie korzystne w jednej aplikacji może nie przynieść poprawy w innej. Typowe problemy i błędy przy konfiguracji Explicit Multi-GPUJednym z częstych nieporozumień jest oczekiwanie automatycznego wzrostu wydajności po zainstalowaniu drugiej karty. W DirectX 12 obsługa wielu układów nie powstaje samoczynnie. Jeżeli program nie zawiera odpowiedniej logiki, dodatkowy sprzęt może pozostać niewykorzystany albo wykonywać zadania, które nie przynoszą mierzalnej korzyści. Problemem bywa także błędne rozpoznanie adapterów. Aplikacja może wybrać układ zintegrowany zamiast wydajniejszej karty dedykowanej, potraktować kilka wpisów sterownika jako osobne urządzenia albo nieprawidłowo ocenić obsługiwane funkcje. W rezultacie pojawiają się spadki płynności, długie czasy ładowania, błędy inicjalizacji lub uruchamianie programu na niewłaściwym procesorze graficznym. Drugą grupę trudności stanowi zarządzanie pamięcią i zasobami. Do typowych przyczyn problemów należą:
Może wystąpić również zjawisko pozornego przyspieszenia, gdy średnia liczba klatek rośnie, lecz zwiększają się opóźnienia albo nierówność czasu ich generowania. Wtedy obraz może wydawać się mniej płynny mimo wyższego wyniku pomiaru. Osobnej uwagi wymagają temperatury, pobór energii, hałas wentylatorów i stabilność zasilania. Kilka aktywnych układów może znacząco zwiększyć obciążenie całego komputera, a niewystarczające chłodzenie może powodować obniżanie taktowania lub wyłączanie urządzeń. W diagnostyce trzeba rozróżnić błąd programu, sterownika, systemu operacyjnego i sprzętu. Przydatne jest sprawdzenie dzienników zdarzeń, wersji sterowników, poprawności wykrywania adapterów, temperatur, obciążenia pamięci oraz zachowania aplikacji przy pracy tylko z jednym układem. Takie porównanie pozwala ustalić, czy problem wynika z samej obsługi Explicit Multi-GPU, czy z usterki karty, gniazda, przewodów, zasilania albo płyty głównej. Kiedy trzeba przekazać urządzenie do naprawy - Explicit Multi-GPU (DirectX 12)Zgłoszenie do serwisu jest uzasadnione, gdy komputer przestaje prawidłowo wykrywać jedną z kart, aplikacje uruchamiają się na niewłaściwym układzie, pojawiają się artefakty obrazu albo system zawiesza się podczas równoczesnej pracy kilku urządzeń. Warto skorzystać z pomocy także wtedy, gdy po zmianie konfiguracji występują restarty, wyłączanie ekranu, nietypowy hałas chłodzenia lub wyraźne spadki wydajności bez jednoznacznej przyczyny. W Warszawie takie przypadki można przekazać do Warszawskiego Pogotowia Komputerowego 24/7, gdzie usterka laptopa może zostać poprzedzona darmową diagnozą LAPTOPA. W ramach sprawdzenia można ocenić poprawność wykrywania kart, stan sterowników, temperatury, działanie zasilania, stabilność obciążenia oraz zgodność konfiguracji z wymaganiami używanej aplikacji. Pozwala to oddzielić problem programowy od awarii podzespołu i dobrać dalsze postępowanie bez pochopnej wymiany sprawnych elementów. Przed wizytą warto przygotować informacje o modelach kart, wersji systemu, nazwie programu, momencie wystąpienia problemu oraz zmianach wykonanych przed pojawieniem się objawów. Pomocne mogą być również zrzuty komunikatów, opis zachowania obrazu i informacja, czy problem znika po wyłączeniu jednego z układów. Tak zebrane dane skracają czas ustalania przyczyny i ułatwiają odtworzenie usterki w warunkach serwisowych. |