Saya menjalankan jaringan saraf pembelajaran yang dalam yang telah dilatih oleh GPU. Saya sekarang ingin menyebarkan ini ke beberapa host untuk inferensi. Pertanyaannya adalah apa syarat untuk memutuskan apakah saya harus menggunakan GPU atau CPU untuk inferensi?
Menambahkan lebih banyak detail dari komentar di bawah.
Saya baru dalam hal ini sehingga panduan sangat dihargai.
Memori : GPU adalah K80
Kerangka kerja : Cuda dan cuDNN
Ukuran data per beban kerja : 20G
Komputasi node untuk dikonsumsi : satu per pekerjaan, meskipun ingin mempertimbangkan opsi skala
Biaya : Saya mampu membeli opsi GPU jika alasannya masuk akal
Penerapan : Berjalan di server bare metal yang di-host sendiri, bukan di cloud.
Saat ini saya menggunakan CPU hanya karena aplikasi berjalan ok. Tetapi di luar alasan itu, saya tidak yakin mengapa orang akan mempertimbangkan GPU.
sumber
Jawaban:
@Dan @SmallChess, saya tidak sepenuhnya setuju. Memang benar bahwa untuk pelatihan banyak paralisasi dapat dieksploitasi oleh GPU, sehingga menghasilkan pelatihan yang jauh lebih cepat. Untuk Inference, parallalization ini bisa jauh lebih sedikit, namun CNN masih akan mendapatkan keuntungan dari ini sehingga menghasilkan inferensi yang lebih cepat. Sekarang Anda hanya perlu bertanya pada diri sendiri: apakah kesimpulan yang lebih cepat itu penting? Apakah saya ingin ini dependensi tambahan (GPU yang bagus, file yang tepat diinstal dll)?
Jika kecepatan bukan masalah, gunakan CPU. Namun perhatikan bahwa GPU dapat membuat urutan besarnya lebih cepat dalam pengalaman saya.
sumber
Menjalankan inferensi pada GPU alih-alih CPU akan memberi Anda mendekati kecepatan yang sama seperti saat latihan, lebih sedikit ke overhead memori.
Namun, seperti yang Anda katakan, aplikasi berjalan oke di CPU. Jika Anda sampai pada titik di mana kecepatan inferensi menjadi hambatan dalam aplikasi, peningkatan ke GPU akan mengurangi hambatan itu.
sumber
Anda hanya akan menggunakan GPU untuk pelatihan karena pembelajaran yang mendalam membutuhkan perhitungan besar untuk sampai pada solusi optimal. Namun, Anda tidak perlu mesin GPU untuk penyebaran .
Mari kita ambil iPhone X Apple yang baru sebagai contoh. IPhone X yang baru memiliki algoritma pembelajaran mesin canggih untuk pendeteksian wajah. Karyawan Apple harus memiliki sekelompok mesin untuk pelatihan dan validasi. Tetapi iPhone X Anda tidak membutuhkan GPU untuk menjalankan model.
sumber