Új hozzászólás Aktív témák

  • Abu85

    HÁZIGAZDA

    válasz DraXoN #15 üzenetére

    Az a baj, hogy csupa DX12-es játékról van szó. Az AMD DirectX 12-es meghajtójának ilyen a memóriakezelése:

    Ezzel annyit csinál az AMD-féle SAM, hogy a Heap 2-t megszünteti, és a Heap 0 kapacitása lényegében megegyezik majd a VRAM kapacitásával, amihez tartozik egy Type 0 típus, de nem csak eszközlokális flaggel lesz ellátva, hanem host visible és coherent is lesz. A Heap 2-höz tartozó Type 2 típus is megszűnik.

    Az AMD-nél a játékokat eleve erre az egyszerűsített modellre építik, tehát nagyon egyszerű a meghajtó oldalán áttérni egy SAM-es dizájnra. Amelyik játékot megírták a SAM nélkülire, az nem fog anomáliát okozni SAM-mel.

    Az NV DirectX 12-es meghajtójának memóriaszegmentálása sokkal bonyolultabb:

    Az NV ezzel annyit csinál, hogy megszüntetik a Type 9-et, és a Type 7 és 8 host visible és coherent lesz eszközlokális flaggel. A problémát itt az adja, hogy nagyon sok játék nem erre számít, mert az NV hardvereknél arra van felkészítve a gyártóspecifikus kód, hogy nem a VRAM-ban van a GPU BAR, hanem a rendszermemóriában. Ezt úgy lehetne kezelni, hogy minden játékot átírnak visszamenőleg, de ez nem fog megtörténni, így az NV-nek kell valamilyen módon lekezelnie a GeForce-okra írt gyártóspecifikus optimalizációkat, amelyek az új resizable BAR modellel nem működnek jól együtt. Ezért profiloznak bőszen per játék alapon, mert lényegében minden játékra valami más beállítás kell a driver oldalán, és nem biztos, hogy optimális szegmentálást lehet kialakítani a nem teljesen optimális kódokhoz.

    Nincs tehát semmi hardveres dolog, pusztán az AMD sokkal általánosabb memóriaszegmentálást használ DirectX 12 alatt, amivel egyszerűbb alkalmazni a resizable BAR-t.

    [ Szerkesztve ]

    Senki sem dől be a hivatalos szóvivőnek, de mindenki hisz egy meg nem nevezett forrásnak.

Új hozzászólás Aktív témák