Új kiterjesztéssel javít a memóriamenedzsmenten a Vulkan API

A friss lehetőségek sokat segíthetnek a többfelhasználós multitaszk operációs rendszereken.

A Khronos Group bejelentette a Vulkan API legújabb, 1.2.191-es verzióját, amely a hibákra vonatkozó változások mellett bevezeti a VK_EXT_pageable_device_local_memory kiterjesztést, ami segíti az alkalmazások memóriamenedzsmentjét a többfelhasználós multitaszk operációs rendszereken.

Ha belegondolunk, hogy már majdnem mindegyik modern operációs rendszer ilyen, akkor érthető, hogy miért kerül bevezetésre az újítás. A problémát az adja, hogy a Vulkan API korábban nem kínált fel a fejlesztők felé egy hatékony módszert arra, hogy miképpen kezeljék azokat a szituációkat, amikor több alkalmazás is ugyanannak az erőforrásnak a memóriáját szeretné használni. Funkcionálisan mindez nem szokott probléma lenni, de manapság egy Vulkan alkalmazás hiheti azt, hogy a GPU eszközlokális memóriája foglalt, akkor is ha amúgy nem, és ilyenkor a rendszermemóriából fog egy megfelelő területet allokálni, ami a teljesítmény tekintetében nem szerencsés.

Az új kiterjesztéssel a Vulkan implementációk jelezhetik az alkalmazásnak, hogy az adott operációs rendszer támogatja a lapozható eszközlokális memóriát, és a programok ennek megfelelő döntéseket hozhatnak a memóriamenedzsment tekintetében. Egy új funkció is kapcsolódik a korábban elkészült, VK_EXT_memory_priority kiterjesztéshez, amivel az alkalmazás jelezheti a létrehozott memóriaallokációk prioritását. Ez akkor hasznos, ha több Vulkan alkalmazás fut egymás mellett, mivel ilyenkor az operációs rendszer segítséget kap abban, hogy az alkalmazások váltásánál mely allokációkat érdemes először visszahelyezni az eszközlokális memóriába.

A fentiekkel a fejlesztők összességében kedvezőbb alapot kapnak a memóriamenedzsmentjük meghatározására, amely jobban igazodhat a körülményekhez.

Azóta történt

Előzmények

Hirdetés