Twoje PC  
Zarejestruj się na Twoje PC
TwojePC.pl | PC | Komputery, nowe technologie, recenzje, testy
M E N U
  0
 » Nowości
0
 » Archiwum
0
 » Recenzje / Testy
0
 » Board
0
 » Rejestracja
0
0
 
Szukaj @ TwojePC
 

w Newsach i na Boardzie
 
TwojePC.pl © 2001 - 2024
Środa 6 lipca 2016 
    

Microsoft ułatwi implementację obsługi Multi-GPU w DirectX 12


Autor: Wedelek | źródło: Hexus | 19:01
(12)
API DirectX 12 wprowadza kilka istotnych zmian i udoskonaleń dzięki którym twórcy gier mogą tworzyć produkty wykorzystujące zasoby sprzętowe w sposób bardziej efektywny. Sam Microsoft przekonuje, że w niektórych przypadkach ilość FPSów w miejscach mocno eksploatujących karty graficzne może wzrosnąć nawet o 20%, a tam gdzie większą rolę gra CPU może to być nawet 50% skok wydajności. DirectX 12 to też funkcja Explicit Multi Adaptor (EMA), która pozwala łączyć ze sobą karty graficzne różnych producentów i bazujące na innych architekturach.

Niestety implementacja EMA nie należy do najłatwiejszych, przez co niemal wszyscy deweloperzy omijają tę funkcję szerokim łukiem. W zasadzie na dzień dzisiejszy jest tylko jedna, duża produkcja, która z opisywanej nowinki korzysta. Mowa oczywiście o Ashes of the Singularity.

Gigant z Redmond postanowił coś z tym zrobić i zapowiedział wprowadzenie nowej wyższej warstwy abstrakcji, która pozwoli zaimplementować podstawową obsługę EMA poprzez dodanie do kodu gry zaledwie kilku linii kodu. Rozwiązanie to nie będzie co prawda tak wydajne jak dotychczas istniejący sposób, ale za to jego implementacja będzie dziecinnie prosta. Szczegółowa instrukcja korzystania z zapowiadanych funkcji wraz z przykładami ma niebawem trafić na portal GitHub, skąd będą mogli pobrać ją wszyscy zainteresowani.



 
    
K O M E N T A R Z E
    

  1. Ułatwi? (autor: Kenjiro | data: 6/07/16 | godz.: 20:09)
    Ale po co cokolwiek ułatwiać? Niektórzy twierdzą, że DX12 wszystko uprościł i ułatwił, że już łatwiej i prościej się nie da...

    A gdyby tak naprawdę było, to MS nie robiłby dodatkowych bibliotek, które pozwalają szybciej uruchomić obsługę Explicit MA. Niestety, z bieżących informacji wynika, że owe biblioteki nie ułatwią zarządzaniem pamięcią kart, shaderami itp., a pozwolą po prostu uruchomić EMA. Całą resztę trzeba będzie zrobić samemu jak obecnie.


  2. abstrakcją dla Ciebie Wedelek (autor: Giray | data: 6/07/16 | godz.: 21:26)
    jest DirectX 12 ;) Ja ten temat poruszałem już jakiś czas temu, po prostu obecnie zaimplementowana wersja tego API nie wspiera konfiguracji multi GPU i potrzebne są sztuczki w stylu SLI i CF.

  3. Giray wspiera i nie potrzeba SLI czy CF (autor: Sławekpl | data: 6/07/16 | godz.: 22:33)
    tylko twórcy gry muszą chcieć to uruchomić i muszą poświęcić na to czas
    jak z teksturami, jak w grze masz szare to nawet mając monitor z miliardem kolorów nadal będą szare i żaden dx tego nie zmieni, piłka po stronie twórców gry
    masz łopatologicznie w newsie rozpisane, skoro nadal tego nie skumałeś, a proste to jest jak technologia budowy cepa, to wątpię byś kiedykolwiek skumał, może przy użyciu łopaty i szpadla dałoby się to przystępniej wyłożyć dla Ciebie ale tego na odległość się nie da zrobić :E
    a tak w ogóle to miłego wieczoru :)


  4. @up (autor: Giray | data: 6/07/16 | godz.: 22:52)
    sugeruję skorzystanie z innych źródeł niż ten news :)

  5. DX12 (autor: Mario2k | data: 7/07/16 | godz.: 00:18)
    Mial z zalozenia kozystac z multi gpu bez jakichs ceregieli , wiadomo ze bez napisania kodu gry w odpowiedni sposob wykozystanie to moze byc rozne
    ale DX12 mial to robic z automatu.


  6. @5. (autor: Kenjiro | data: 7/07/16 | godz.: 08:32)
    Bzdura, żeby tak zrozumieć, to chyba trzeba opierać się na tłumaczeniu Google. MS od początku pisał, że da "niższy" dostęp do bibliotek, dzięki czemu będzie można mieć większą kontrolę nad sprzętem, nad całym procesem renderingu, poza tym biblioteki obsługują wielowątkowość itp., itd. Nigdzie nie pisał, że będzie ogólnie łatwiej, a tylko łatwiej (bo w ogóle) będzie osiągnąć rzeczy wcześniej niedostępne (jak np. EMA). W DX11 można wyświetlić proste 3D za pomocą kilkunastu linijek kodu, w DX12 bez kilku setek się nie obejdzie, ot co.
    Do tego dochodzi konieczność własnej obsługi wielu elementów wcześniej zarządzanych przez DX, jak algorytm rozdziału pracy pomiędzy karty (w przypadku EMA) co jest bardzo rozbudowanym tematem (patrz np. scheduler Linuksa i jego perypetie ok. 10 lat temu). Oczywiście nie ma takiego obowiązku i zawsze można skorzystać z trybu DX11...


  7. @6. (autor: Kenjiro | data: 7/07/16 | godz.: 08:34)
    PS. Oczywiście głównym problemem były właśnie tłumaczenia newsmanów, którzy produkowali informacje przekręcone i nieścisłe. Oczywiście sam MS również nie ułatwiał pisząc zbyt marketingowo.

  8. Giray (autor: Wedelek | data: 7/07/16 | godz.: 22:39)
    Głupoty to opowiadasz, ale Ty... DirectX 12 jak już któryś z moich przedmówców napisał, daje większą swobodę twórcom gier. Da się po prostu zejść na niższy poziom abstrakcji i poświęcając wygodę ustawić wiele rzeczy po swojemu. Można też między innymi łączyć dwa GPU czy IGP z GPU, przesyłając pomiędzy nimi dane oraz rozdzielając pracę w sposób niestandardowy. Tyle tylko, że to wszystko trzeba zaprogramować samemu bo krasnoludki tego za devów nie zrobią. Zresztą MS nigdy nie mówił, że będzie łatwo. DirectX12 daje tylko i aż nowe możliwości.

  9. A przy okazji. (autor: Kenjiro | data: 8/07/16 | godz.: 11:12)
    Wszyscy twierdzący, że DX12 w CF/SLI to taka fajna sprawa niech udadzą się teraz przejrzeć testy RX480 i zobaczyć ile gier DX12 obsługuje taki tryb pracy (słownie jedna oficjalnie, bo "podobno" TW:W też obsługuje z nieoficjalną łatką), po czym zapodać sobie karnego kopniaka w zadek za pisanie głupot.
    Za rok będzie można wrócić do dyskusji o sensie DX12 + CF/SLI jak już wszystkie większe silniki zaczną to obsługiwać, o ile zaczną, bo to wcale nie jest takie pewne...


  10. @wedelek (autor: Giray | data: 8/07/16 | godz.: 20:34)
    wiem, że lubujesz się w dawaniu rad innym, przemilczę, ile te rady są warte :) I dam Ci przy okazji jedną - nie zabieraj głosu w sprawach o których nie masz zielonego pojęcia.
    M$ z DX12 wpakował się na minę i nie wiadomo, czy zadeklarowana funkcjonalność tego API pojawi się w Redstone 2 na początku przyszłego roku. Z założenia DirectX 12 miał umożliwiać bezproblemową pracę rożnych konfiguracji akceleratorów graficznych, jedynym wymogiem miała być zgodność oprogramowania z tym API. W praktyce miało to wyglądać tak, że po dołożeniu drugiej karty graficznej do systemu (nie wiem na 100% czy wymagana była jej zgodność z DX12, ale chyba nie) użytkownik miał odczuwać tylko poprawę jakości grania, reszta miała odbywać się całkowicie automatycznie.
    Chyba nie muszę mówić, że do takiego stanu rzeczy jest jeszcze baardzo daleko.


  11. @giray (autor: Wedelek | data: 9/07/16 | godz.: 08:12)
    Nie przypominam sobie żeby MS zapowiadał automatyczną obsługę multi GPU. Cały czas mówiło się, że nowe API da dostęp do niższego poziomu abstrakcji w programowaniu, a to z kolei pozwoli kontrolować rzeczy których w DirectX 11 nie dało się ustawić. Jednak nikt z MS nie mówił o automatyzmie czegokolwiek. Przekonywano tylko że da się tak zoptymalizować grę, że będzie ona działać na danym sprzęcie znacznie szybciej. No i tej obietnicy dotrzymano. Tyczy się to też zapowiadanej funkcji obsługi multiGPU. Ashes of the Singularity obsługuje tę nowość, więc to działa.

    Jeśli zaś chodzi o automatyzm, to dośpiewali sobie tę bajeczkę sami użytkownicy i newsmani którzy źle zinterpretowali pewne wypowiedzi i szczątki dostarczanych informacji. Rzecz, która zdarza się bardzo często. Trzeba jednak o tym pamiętać i nie zrzucać winy na zły MS.


  12. @ rzecz w tym, że ja to pamiętam (autor: Giray | data: 9/07/16 | godz.: 21:37)
    j.w :) tyle, że potem coraz rzadziej o tym m$ wspominał

    
D O D A J   K O M E N T A R Z
    

Aby dodawać komentarze, należy się wpierw zarejestrować, ewentualnie jeśli posiadasz już swoje konto, należy się zalogować.