Di Prime95, mengapa FFT kecil menghasilkan panas terbanyak, meskipun CPU 100% untuk semua opsi?

9

Saya baru saja membangun PC Skylake baru , dan saya akan melihat tentang sedikit overclocking dengan Prime95 sebagai penguji stres.

Ini berfungsi baik dalam penggunaan normal, tetapi dengan Prime95 saya memperhatikan sedikit pembatasan CPU di bawah beban tertentu.

Jika semua 4 core (8 thread) macet sampai 100%, mengapa pengaturan FFT Kecil di Prime95 mencapai suhu yang lebih tinggi daripada opsi 'Blend'?

ChrisA
sumber

Jawaban:

13

Kode vektor, terutama AVX, secara alami meningkatkan output panas CPU karena prosesor harus beroperasi pada tegangan yang lebih tinggi untuk menjalankan instruksi ini. FFT kecil membutuhkan lebih sedikit memori daripada mode campuran, sehingga prosesor menghabiskan lebih banyak waktu memproses data dan lebih sedikit waktu menunggu data.

  • Arsitektur x86-64 menyediakan kemampuan pemrosesan vektor yang luas , terutama pada prosesor terbaru. Pemrosesan vektor memungkinkan aplikasi untuk melakukan operasi matematika pada banyak item data sekaligus, dan digunakan oleh banyak aplikasi intensif komputer yang lebih baru untuk meningkatkan throughput pemrosesan.

  • Kode vektor, terutama instruksi AVX yang digunakan oleh Prime95, membutuhkan prosesor untuk beroperasi pada tegangan yang lebih tinggi dari biasanya. Ini menghasilkan konsumsi daya dan keluaran panas yang lebih besar dari yang dialami dalam beban kerja normal. Karena alasan ini, Intel memperingatkan bahwa beban AVX yang berat dapat menyebabkan prosesor melambat atau tidak mempertahankan laju jam Turbo Boost penuh (catatan kaki 1):

    Intel® Advanced Vector Extensions (Intel® AVX) dirancang untuk mencapai throughput yang lebih tinggi untuk operasi integer dan floating point tertentu. Karena karakteristik daya prosesor yang beragam, penggunaan instruksi AVX dapat menyebabkan a) beberapa bagian beroperasi pada frekuensi yang lebih rendah dan b) beberapa bagian dengan Intel® Turbo Boost Technology 2.0 untuk tidak mencapai frekuensi turbo maksimum atau maksimum.

    Intel menjelaskan ini secara lebih rinci dalam buku putih ini . Secara khusus, ini mencatat:

    Intel AVX dirancang untuk mencapai throughput yang lebih tinggi untuk operasi integer dan floating-point tertentu. Menggunakan instruksi ini dapat menyebabkan prosesor beroperasi kurang dari frekuensi TDP yang ditandai. Penurunan frekuensi ini terjadi karena instruksi Intel AVX berdaya tinggi membutuhkan tegangan dan arus listrik tambahan.

    • Dugaan saya mengapa meningkatkan inti V diperlukan untuk instruksi AVX adalah bahwa unit-unit eksekusi AVX lebih kompleks daripada bagian prosesor yang lain, menghasilkan tahap-tahap pipa yang sesuai yang membutuhkan waktu lebih lama untuk diselesaikan (lihat jawaban ini untuk informasi teknis lebih lanjut tentang saluran pipa) dan aspek lain dari desain prosesor). Jika tahap pipa tertentu lambat, laju clock maksimum seluruh prosesor dibatasi karena setiap tahap dalam pipa harus selesai dalam setiap siklus jam.

    • Untuk alasan yang sama, tegangan yang lebih tinggi meningkatkan frekuensi maksimum yang dapat dicapai ketika overclocking (transistor dapat beralih lebih cepat pada voltase yang lebih tinggi), meningkatkan tegangan membantu memastikan bahwa tahap pipa yang lebih lama dapat selesai tepat waktu.

  • Mode FFT Kecil hanya menggunakan item data yang lebih kecil yang dapat ditampung dalam cache CPU , tidak seperti mode Blend yang beroperasi pada nilai kecil dan besar yang mungkin tidak muat dalam cache. Karena mengakses memori lambat dibandingkan dengan hanya memproses data, prosesor akan menghabiskan lebih sedikit waktu untuk benar-benar memproses data dalam mode Blend, mengurangi output panas. FFT kecil tidak memerlukan hampir semua akses memori, menghasilkan kerja CPU yang lebih aktual, sehingga meningkatkan konsumsi daya dan output panas.

bwDraco
sumber
Terima kasih @DragonLord, ini membuat berbagai mode Prime95 sangat jelas. Tolong bisakah Anda memperkuat jawaban Anda untuk menjelaskan mengapa monitor sumber daya membaca 100% dalam kedua kasus? Mengapa tidak membaca kurang dari 100% dalam mode Blend, misalnya, jika itu menunggu data lebih banyak daripada dalam mode FFT Kecil?
ChrisA
1
CPU sibuk menunggu memori masih dilaporkan sibuk ke OS, seperti yang saya mengerti.
bwDraco