Saya ingin secara terprogram menentukan pada saat runtime berapa banyak memori kartu video yang digunakan oleh program saya. Secara khusus saya bertanya-tanya tentang bagaimana melakukannya pada mesin Windows menggunakan OpenGL, tetapi saya tertarik dengan cara untuk melakukannya pada platform lain juga.
Saya tahu ada utilitas di luar sana yang akan menunjukkan kepada saya penggunaan memori saat program saya berjalan, tetapi saya ingin dapat menanyakan informasi itu dari kode saya.
Jawaban:
Anda dapat menemukan memori video kartu Nvidia menggunakan ekstensi NVX_gpu_memory_info , atau kartu ATI menggunakan ATI_meminfo . Ini adalah potongan kode yang saya temukan yang mungkin bisa membantu Anda memulai.
Namun, Paul Nettle di flipcode bertanya-tanya mengapa orang ingin menemukan memori video yang tersedia, dengan mengatakan :
Dan selanjutnya menjelaskan, pada dasarnya, bahwa "jumlah memori video" mungkin tidak berarti apa-apa . Saya setuju dengannya tentang alasan bahwa, misalnya, jumlah memori "bebas" di mesin Windows Vista / 7 tidak relevan; semoga tidak ada memori bebas, karena memori bebas memori terbuang. Tetapi selalu ada beberapa area memori yang didedikasikan untuk cache yang dihapus oleh Windows, jika suatu aplikasi membutuhkannya.
sumber