Catatan singkat: Saya tahu ini adalah situs tanya jawab pengembangan game tapi saya kira Anda semua tahu dan memiliki pengalaman dengan kartu grafis jadi saya menjawab pertanyaan ini untuk Anda. Jika menurut Anda ini sepenuhnya di luar topik, silakan rujuk saya ke situs / forum yang tepat. Sunting: Sebenarnya, ini terkait dengan gamedev: jika kode yang buruk dapat menyebabkan kartu menjadi terlalu panas atau rusak maka pengembang game harus menyadari hal itu dan memastikan aplikasi mereka tidak melakukan itu.
Ini mungkin tampak seperti pertanyaan aneh atau bodoh, tetapi apakah benar-benar memungkinkan untuk menulis aplikasi rendering grafik yang dapat merusak kartu grafis ( dengan cara apa pun )?
Alasan langsung yang membuat saya mengajukan pertanyaan ini adalah (tidak mengejutkan) kartu grafis saya yang rusak. Setelah diperbaiki reparasi mengatakan bahwa mereka menguji berbagai aplikasi (game) di dalamnya dan itu bekerja dengan baik. Tetapi ketika saya meluncurkan aplikasi saya sendiri (demo shading ditangguhkan) itu memanaskannya hingga lebih dari 100 derajat Celcius. Jadi kartu saya ternyata tidak diperbaiki setelah semua tetapi yang penting di sini adalah bahwa masalahnya tampaknya hanya terjadi ketika menjalankan aplikasi saya sendiri.
Saya telah memainkan berbagai game GPU-menuntut di atasnya (seperti Crysis) dan sering mendorongnya hingga batas dan lebih (memiliki pengaturan yang sangat tinggi sehingga game berjalan pada 5 FPS), beberapa tolok ukur juga ... Jadi saya telah memberikan kartu saya, berkali-kali, begitu banyak beban kerja sehingga tidak bisa mengejar (karena FPS rendah) tetapi tidak pernah mencapai suhu berbahaya. Tetapi aplikasi saya sendiri berhasil mencapai itu (setidaknya ketika v-sync dimatikan). : P Karena itu hanya aplikasi saya sendiri, saya tidak berpikir sistem pendinginan yang buruk adalah penyebabnya.
Jadi saya bertanya - apakah Anda pikir (atau mungkin tahu) apakah mungkin untuk memecahkan kartu grafis (dengan cara apa pun, tidak hanya dengan terlalu panas) oleh beberapa kode jahat?
Memperbarui:
Joe Swindell mengatakan bahwa overheating mungkin menjadi masalah (well, itu pasti dapat merusak kartu). Tetapi bukankah seharusnya sistem pendingin yang tepat mencegah hal itu terjadi (dalam keadaan apa pun)?
Boreal menunjukkan masalah lain. Jika saya mengerti dengan benar, FPS terikat oleh CPU dan GPU (apakah itu benar?). Jadi FPS yang rendah mungkin menandakan baik beban CPU tinggi atau beban GPU tinggi . Tetapi sekali lagi - bukankah seharusnya sistem pendingin yang tepat mencegah GPU dari kepanasan bahkan jika kartu "digunakan 100% setiap saat"?
Jawaban:
Bukan tanggung jawab aplikasi untuk memastikan GPU tidak terlalu panas, dan itu bukan kesalahan aplikasi jika itu terlalu panas.
Jika GPU tidak memiliki pendinginan yang tepat, maka ya, menjalankan aplikasi 3D dapat memanaskannya hingga level berbahaya. Saya tidak tahu mengapa aplikasi Anda melakukannya dan Crysis tidak, tetapi itu berarti kartu memiliki pendinginan yang tidak memadai, dan / atau telah kacau dengan (overclock, atau pengaturan / driver pabrik lainnya diubah).
Selain terlalu panas, saya tidak mengetahui adanya cara lain di mana perangkat lunak secara fisik dapat merusak chip yang sedang berjalan. Itu benar-benar tidak seharusnya mungkin; itu akan menjadi kegagalan desain yang sangat serius.
sumber
Itu telah terjadi di alam liar.
Starcraft II pada tahun 2010 memiliki masalah di mana framerate yang tidak terbuka pada layar menu menempatkan beban aneh pada kartu grafis, menghancurkan kartu dari beberapa vendor dengan perlindungan termal yang tidak memadai.
Desain dan kelemahan manufaktur pada GPU itu sendiri juga dapat menyebabkan kartu membongkar sendiri karena beban. GPU mobile G84 / G86 memiliki sambungan solder yang pecah karena beban suhu yang dapat diterima dan akhirnya pecah. Kami juga memiliki Cincin Merah Kematian XBox 360 yang terkenal yang memiliki masalah termal serupa dengan solder dan ekspansi.
Semua hal di atas adalah campuran dari cacat perangkat keras dan desain termal yang tidak memadai, diperkuat oleh beban perangkat lunak.
sumber
Pertanyaan Anda jauh lebih kompleks daripada apa yang Anda tulis. Saya akan mengatakan pertanyaan umum adalah "dapatkah perangkat lunak merusak perangkat keras?", Dan jawabannya adalah ya.
Pikiran Anda, tidak semua perangkat keras dapat secara teoritis rusak melalui perintah perangkat lunak, tetapi pada akhirnya, apa yang dilakukan perangkat lunak adalah mengirim sinyal listrik ke komponen perangkat keras yang sangat halus. Biasanya, komponen perangkat keras yang lebih halus adalah, semakin besar kemungkinan untuk menjadi rusak ketika ditangani dengan cara yang tidak dirancang.
Ada banyak cara menyenangkan yang bisa dihancurkan oleh perangkat keras, tetapi mari kita pertimbangkan overheating: pekerjaan pemrosesan menghasilkan panas, dan panas itu harus pergi ke suatu tempat. Bergantung pada karakteristik pembuangan kartu Anda, aliran udara dalam casing, dan suhu keseluruhan di ruangan, jumlah panas yang dikeluarkan dari sistem dapat lebih atau kurang dari apa yang dihasilkan olehnya.
Jika Anda meminta kartu video untuk melakukan pekerjaan yang menghasilkan lebih banyak panas daripada yang bisa dihamburkan secara efisien, maka suhu chip akan naik. Jika Anda terus melakukannya, maka suhu akan naik di atas tingkat operasi yang aman, dan chip akan pecah, kehilangan asap ajaibnya, dan bahkan mungkin menyebabkan bahaya kebakaran. Anda baru saja merusak kartu video Anda, saya harap Anda bahagia.
Sekarang, dapatkah Anda menulis perangkat lunak yang melakukan ini? Saya akan mengatakan kemungkinan besar tidak. Program apa pun (tingkat pengguna) yang Anda tulis tidak akan berbicara langsung dengan kartu video. Ada banyak perlindungan yang dirancang untuk mencegah situasi ini, dan semuanya harus gagal sehingga program rendering Anda akhirnya membakar rumah Anda.
Secara umum, disipator panas dan kipas dirancang sehingga mereka dapat dengan nyaman menghilangkan jumlah panas maksimum yang akan dihasilkan kartu, bahkan pada casing dengan ventilasi buruk pada iklim panas (dalam rentang operasi yang ditentukan oleh pabrikan)
Jika pembangkitan panas lebih besar dari pembuangan panas, garis pertahanan pertama adalah pengemudi. Sebagian besar driver akan memeriksa suhu inti GPU, dan jika naik, pengemudi dapat membatasi jumlah instruksi yang dikirim ke GPU untuk mencegah menghasilkan lebih banyak panas.
Jika gagal, firmware pada kartu grafis harus mendeteksi bahwa panas sedang menumpuk, dan karenanya akan mengurangi kecepatan clock dalam upaya mengurangi pembangkitan panas.
Jika setelah semua itu, panas masih menumpuk, dioda termal yang tersedia di sebagian besar CPU dan GPU modern akan mematikan kartu video sepenuhnya, dan pembangkit panas akan berhenti.
Jadi, jika Anda ingin memecahkan kartu video mahal Anda dari aplikasi tingkat pengguna melalui overheating, selain membangun perangkat lunak yang menekankan sistem secara maksimal, Anda perlu:
Sistem pembuangan panas yang rusak atau rusak. Cukup menempelkan jari Anda di kipas (selalu di tengah, bukan di bilah) harus melakukan trik. Kesulitan: Mudah
Pengemudi khusus (atau kereta) dengan fitur pelambatan dinonaktifkan atau rusak. Kesulitan: Normal
Firmware khusus dengan fitur pengurang jam dinonaktifkan atau rusak. Kesulitan: Sulit
Dioda termal yang rusak. Jika Anda terus-menerus memicu dioda termal, mungkin rusak. Kesulitan: Sangat sulit
... tapi bukan tidak mungkin! Jangan ragu untuk mencobanya *, tetapi pastikan Anda selalu memegang telepon pemadam kebakaran saat melakukannya.
*: Ini sarkasme. Saya sama sekali tidak memaafkan terciptanya bahaya kebakaran, atau kegiatan apa pun yang dapat membahayakan Anda, keluarga, anjing, atau komunitas Anda dengan cara apa pun. Dengan membaca posting ini Anda sepenuhnya membebaskan saya dari tanggung jawab apa pun atas tindakan Anda.
sumber
Bahkan dengan VSYNC mati, banyak game bisa gagal mencapai 98% penggunaan GPU. Semakin banyak gameplay aktual yang mereka implementasikan, semakin sedikit frame yang dapat mereka panggungkan dan semakin besar kemungkinan GPU akan kurang dimanfaatkan. Game multi-core yang dioptimalkan dengan baik dapat secara signifikan lebih dekat dengan pemanfaatan GPU 100%, tetapi secara umum logika gameplay membuat CPU cukup sibuk dengan tugas-tugas lain sehingga tidak mampu menjenuhkan GPU dengan beban kerja penuh. Aplikasi rendering murni dapat dengan mudah mencapai 100% beban GPU, tetapi game melakukan lebih banyak daripada rendering.
Di samping catatan, di mesin rumah saya GPU saya menghasilkan EMI signifikan di bawah beban tinggi dan mengganggu audio terintegrasi murah di motherboard saya. Saya dapat mendengar nada tinggi melengking di atas audio analog yang frekuensinya bervariasi sesuai dengan beban. Saya datang untuk menikmatinya dan menganggapnya sebagai fitur daripada cacat desain, itu membuat profil menarik karena saya benar - benar dapat mendengar tingkat beban tanpa harus mencicipi penghitung kinerja GPU. Namun, saya kira jika Anda memiliki beberapa perangkat yang sangat sensitif terhadap EMI dan tidak terlindungi dengan baik, ini bisa menjadi masalah ... beban GPU yang tinggi dapat menyebabkan kegagalan pada perangkat lain .
sumber
Terlalu panas ADALAH melanggar kartu grafis Anda. Melemparkan satu lingkaran besar data yang tidak dapat ditangani tentu akan, seperti yang Anda lihat, rusak dan mungkin merusak kartu Anda secara permanen.
sumber
Ya, bisa.
Dapat dihindari dengan sistem pendingin yang baik. Mengaktifkan V-sync juga merupakan cara yang baik untuk menghindari hal ini. V-sync mencegah GPU dari menghasilkan frame dengan kecepatan lebih cepat daripada yang bisa ditangani monitor, yaitu frame yang biasanya jatuh, tidak pernah terlihat.
Lebih sedikit frame = lebih sedikit pemrosesan = lebih sedikit beban kerja yang ekstrem.
Melacak kemampuan GPU juga penting. Saya membayangkan programmer di Crytek menulis kode untuk siap bagi seseorang untuk melebih-lebihkan kemampuan kartu grafis mereka. Jika mereka melakukannya, saya yakin itu adalah fitur yang telah menyelamatkan banyak-a-GPU, dan telah menyelamatkan banyak pemilik GPU yang tidak mengetahui dari frustrasi.
Dapat dihindari dengan pengkodean yang cermat dan pemeriksaan ganda pada saat run-time. (Tapi selalu ada bug. Jika tidak ada, itu karena mereka mempermainkanmu.)
Ini dapat dihindari dengan pengkodean yang cermat dan pemeriksaan ganda pada saat run-time.
sumber
Satu kata menjawab: YA.
Jawaban terinci: Ya. Itu bisa (dalam situasi tertentu). Bayangkan Anda menulis sebuah program yang secara drastis mentransfer data ke GPU Anda ke loop tanpa batas. Sudah pasti akan menjadi terlalu panas. Sekarang lagi bukankah sistem pendinginnya bertanggung jawab untuk merawatnya? Tentu saja. Tetapi Anda juga harus ingat bahwa, sistem pendingin juga memiliki beberapa tingkat ambang batas. Jika panas yang dihasilkan di luar kisaran operasi sistem pendingin Anda, maka sistem pendingin Anda hampir tidak ada gunanya. Saya tidak tahu apa yang dilakukan aplikasi Anda, tetapi berbicara dengan perspektif programmer, Anda dapat menulis program seperti itu yang mengarah ke situasi seperti ini.
sumber
Menginstal driver yang tidak cocok dengan kartu yang sebenarnya digunakan dapat dengan mudah menyebabkan kerusakan permanen. Teman saya entah bagaimana berhasil melakukannya melalui instalasi ulang OS yang berulang dan perubahan fisik HDD.
Jadikan PC Anda hidup dan mati berkali-kali. Tidak yakin apakah itu dapat menyebabkan kegagalan tetapi sangat mungkin. Bagaimanapun, tidak terdengar seperti
software
cara yang sangat baik untuk melakukannya.Manipulasi tingkat daya dalam sistem dengan menghidupkan dan mematikan perangkat USB yang mengonsumsi daya (contoh: HDD eksternal yang tidak menggunakan daya sendiri). Melakukan ini selalu membuat keyboard dan mouse saya tidak dapat digunakan sampai restart berikutnya dan telah (lebih dari 2 tahun setiap hari memasukkan 3 HDD masuk dan keluar) membakar beberapa sel di salah satu chip RAM saya yang menghasilkan BSOD setiap 10-20 menit.
sumber
Pengalaman pribadi saya:
Saya dulu memiliki Lenovo Thinkpad T61p dengan Quadro FX570M yang dibangun sekitar Agustus 2008, batch ini dikenal memiliki GPU yang salah yang suatu hari akan gagal (solder tidak optimal pada beberapa pin GPU.)
Semuanya baik-baik saja selama sekitar 5 tahun sampai saya menjalankan XCOM The Bureau on it (permainan yang dikenal tidak benar-benar dioptimalkan), laptopnya panas, penggemar dengan kecepatan penuh dan selama 1 jam bermain game itu membeku tetapi tidak membeku seperti biasa .
Tebak apa ? Saya mematikan laptop dan kembali, sudah mati dengan kode bip BIOS yang relevan menunjukkan kegagalan video.
Untuk menjawab pertanyaan Anda : ya (seperti orang lain telah menunjukkan), perangkat lunak pasti dapat mematahkan hardware jika mantan tidak dilindungi dalam beberapa cara ; jika misalnya kipas GPU dimatikan maka pasti akan meledak dengan peluang keberhasilan 100%: D
sumber
Saya pernah memiliki papan grafis GeForce 4 MX 440 dan saya ingin bermain Prince of Persia: pasir waktu. Tetapi permainan tidak diluncurkan karena tidak dapat menemukan dukungan Pixel Shader yang diharapkan. Ini agak tak terduga bagi saya, karena Pangeran Persia kemudian: Warrior Within bekerja dengan baik.
Jadi, pada akhirnya saya menemukan penganalisa 3d ( http://www.tommti-systems.com/main-Dateien/files.html ) dan memaksa game untuk menjalankan dan memainkan game selama beberapa hari. Setelah beberapa hari, kartu video saya rusak - tidak menampilkan apa-apa lagi. Saya memiliki komputer baru selama sekitar 5-6 bulan jadi saya berpikir bahwa memaksa permainan untuk menjalankan cara ini benar-benar merusak kartu video saya :(
sumber
Ya, saya telah memecahkan beberapa. Saya tidak menjalankan aplikasi menghitung jaringan gpu lagi. Beberapa aplikasi cenderung merusaknya terutama ketika mesin beralih ke mode tidur, tetapi dalam situasi normal ketika blower sedang bekerja / cairan pendingin bersirkulasi, seharusnya tidak ada masalah kecuali pendinginan terlalu kecil.
sumber
Bisa jika rangkaian kartu pendek, namun ini sangat tidak mungkin terjadi karena sistem terisolasi sampai suhu tinggi tertentu. Dalam beberapa kasus sistem termodinamika kartu dapat terganggu jika benar-benar dekat dengan sistem lain atau jika bahkan menyentuh bahan lain yang bukan sistem.
sumber
sendShortCircuit
, karena korsleting akan menjadi cacat dengan kartu grafis. Perangkat lunak tidak akan bertanggung jawab untuk ini. Pertanyaan ini tentang apakah misalnya kartu grafis diberi peringkat "penggunaan 100% hingga 1 detik, rata-rata penggunaan jangka panjang 90%" dan perangkat lunak itu diwajibkan untuk tidak melebihi peringkat itu