Bagikan melalui


Akses ke alokasi yang tidak dikenal

Akses GPU ke alokasi yang bukan residen adalah ilegal. Akses tersebut menghasilkan perangkat yang dihapus untuk aplikasi yang menghasilkan kesalahan.

Ada dua model berbeda dalam menangani akses yang tidak valid tersebut tergantung pada apakah mesin yang rusak mendukung alamat virtual GPU:

  • Untuk mesin yang tidak mendukung alamat virtual GPU dan menggunakan daftar lokasi alokasi dan patch untuk menambal referensi memori:

    Akses tidak valid terjadi ketika driver mode pengguna mengirimkan daftar alokasi yang mereferensikan alokasi yang tidak berada di perangkat (yaitu, driver mode pengguna tidak disebut MakeResidentCb pada alokasi tersebut). Ketika akses tidak valid ini terjadi, kernel grafis menempatkan konteks/perangkat yang rusak dalam kesalahan.

  • Untuk mesin yang mendukung alamat virtual GPU tetapi mengakses alamat virtual GPU (VA) yang tidak valid:

    GPU diharapkan untuk memunculkan kesalahan halaman yang tidak dapat dipulihkan dalam bentuk gangguan. Ketika gangguan kesalahan halaman terjadi, driver mode kernel perlu meneruskan kesalahan ke kernel grafis melalui pemberitahuan kesalahan halaman baru. Ketika kernel grafis menerima pemberitahuan ini, itu memulai reset mesin pada mesin yang rusak dan kesalahan menempatkan konteks/perangkat yang rusak. Jika reset mesin tidak berhasil, kernel grafis mempromosikan kesalahan ke deteksi dan pemulihan batas waktu lebar adaptor penuh (TDR).

    Mengakses VA yang tidak valid mungkin terjadi baik karena tidak ada alokasi di belakang VA atau ada alokasi yang valid tetapi tidak dibuat residen.