Udostępnij przez


Używanie zasobów między adapterami w systemie hybrydowym

W tym artykule opisano systemy hybrydowe i sposób używania zasobów między adapterami w systemie hybrydowym.

Począwszy od systemu Windows 8.1, sterownik Windows Display Driver Model (WDDM) może obsługiwać system hybrydowy, gdzie:

  • Zasoby między kartami są współużytkowane między zintegrowanym procesorem GPU i dyskretnym procesorem GPU.
  • Aplikację można uruchomić na każdym procesorze GPU, w zależności od potrzeb aplikacji.

W takim systemie system operacyjny i sterownik określają, na którym procesorze GPU powinna działać aplikacja.

Definicja i właściwości systemu hybrydowego

  • System zawiera jeden zintegrowany procesor GPU i jeden dyskretny procesor GPU:
    • Zintegrowany GPU jest zintegrowany z chipsetem procesora CPU i przesyła sygnał do zintegrowanego panelu wyświetlacza, takiego jak panel LCD.
    • Dyskretna karta GPU jest zazwyczaj wymienną kartą, która łączy się z mostkiem północnym mikroukładu płyty głównej przez magistralę, taką jak PCI.
  • Dyskretny procesor GPU ma wyższą wydajność niż zintegrowany procesor GPU.
  • Dyskretny procesor GPU jest urządzeniem tylko do renderowania, a żadne dane wyjściowe wyświetlania nie są z nim połączone.
  • Oba procesory GPU są fizycznie ujęte w tej samej obudowie, a dyskretny procesor GPU nie może być podłączony ani odłączony podczas pracy komputera.
  • System operacyjny wykrywa konfigurację systemu hybrydowego w następujących sytuacjach:
    • Podczas uruchamiania procedur samodzielnego testowania (POST, Power-On Self-Test)
    • Po zainstalowaniu nowego sterownika
    • Gdy karta wyświetlania jest włączona lub wyłączona

Definicja i właściwości zasobu międzyadapterowego

  • Zasób współdzielony przez adaptery jest dostępny dopiero w systemie Windows 8.1.
  • Można go stronicować tylko do segmentu pamięci GPU w przysłonie.
  • Jest przydzielany jako zasób udostępniony.
  • Ma tylko jedną alokację w formacie liniowym.
  • Ma standardowe wyrównanie wysokości 128 bajtów (zdefiniowane przez stałą D3DKMT_CROSS_ADAPTER_RESOURCE_PITCH_ALIGNMENT ).
  • Ma standardowe wyrównanie wysokości 4 wierszy (zdefiniowane przez stałą D3DKMT_CROSS_ADAPTER_RESOURCE_HEIGHT_ALIGNMENT ).
  • Adres początkowy pamięci jest wyrównany do krawędzi jednostronicowej.
  • Sterownik wyświetlania trybu jądra (KMD) może utworzyć zasób między adapterami jako standardową alokację, którą sterownik trybu użytkownika (UMD) może otworzyć później.
  • Usługa UMD może ją utworzyć.

Implementacja sterownika dla systemów hybrydowych

KMD może zapewniać obsługę wielo-adapterowych zasobów, ustawiając człon CrossAdapterResource struktury DXGK_VIDMMCAPS.

Sterowniki uzyskują informacje na różne sposoby w zależności od typu alokacji.

  • Jeśli alokacja jest tradycyjnym głównym pełnoekranowym oknem, UMD otrzymuje informacje zazwyczaj udostępniane podczas tworzenia głównego ekranu. Takie informacje obejmują flagę podstawową, identyfikator źródła sieci wideo (VidPN), częstotliwość odświeżania i informacje o rotacji.
  • Jeśli jednak alokacja jest bezpośrednim przypisaniem typu direct flip, alokacja między adapterami może być używana jako podstawowa, ale UMD nie otrzyma zwykłych informacji dostarczanych podczas tworzenia głównego. Ponadto w tym przypadku dyskretne urządzenie UMD otrzymuje informacje o obiekcie podstawowym, ale nie powinno ich weryfikować. Zintegrowany sterownik nie otrzymuje informacji, które wskazują, że jest to podstawowy sterownik.

Następujące artykuły zawierają więcej szczegółowych informacji na temat implementacji sterowników dla systemów hybrydowych: