Chip yang dapat diprogram membantu Microsoft merampingkan layanan cloud-nya


Prototipe papan untuk Project Catapult (Sumber: Clayton Cotterell for Wired)

Microsoft telah mengumumkan peningkatan perangkat keras utama untuk pusat datanya di seluruh dunia. Pertama-tama, tentang DC yang menyediakan layanan cloud Azure. Peralatan baru adalah tipikal untuk pusat data, dengan pengecualian chip. Ini adalah array gerbang diprogram bidang-diprogram (FPGA) array. FPGA sendiri bukanlah hal baru, tetapi penggunaannya di pusat data adalah ide baru dari Microsoft. Menurut perusahaan, chip yang dapat diprogram akan memberikan akselerasi perangkat keras untuk implementasi berbagai algoritma perangkat lunak.

Awalnya, dengan bantuan FPGA, perusahaan berencana untuk mengoptimalkan pengoperasian Bing, layanan pencariannya. Perusahaan mengembangkan dan mulai mengimplementasikan fase pertama proyek dengan namaProject Catapult . Sebagai bagian dari proyek ini, FPGA ditambahkan ke kartu PCI Altera (sekarang pemilik Altera adalah Intel) di beberapa server yang bertanggung jawab untuk Bing. Menurut penulis proyek, ini seharusnya meningkatkan kerja algoritma peringkat layanan pencarian. Ternyata, anggapan ini benar. Server yang dimodifikasi menunjukkan peningkatan kinerja yang signifikan dibandingkan dengan server yang perangkat kerasnya tidak dimodifikasi.

Lebih lanjut diusulkan untuk mengembangkan sirkuit terpadu khusus, prinsip operasi yang akan setara dengan FPGA. Microsoft telah mengembangkan chip semacam itu untuk kacamata video Hololens mereka . Ini telah secara signifikan mengurangi konsumsi daya perangkat dan meningkatkan kinerjanya. Ternyata, metode ini tidak cocok untuk tim Bing. Faktanya adalah bahwa algoritma layanan pencarian sangat sering berubah. Dan jika Anda mulai mengembangkan chip yang disesuaikan untuk algoritma tertentu, maka saat chip ini diproduksi dan dibawa masuk, algoritma pencarian akan berubah. Ini berarti bahwa chip akan menjadi tidak berguna (contoh khas dari kunci perangkat keras).

Tetapi, karena proyek percontohan itu, secara umum, berhasil, mereka memutuskan untuk menggunakan FPGA dalam peralatan yang menyediakan pekerjaan layanan lain dari perusahaan. Misalnya, Azure dan Office 365. Dalam hal ini, chip khusus dapat dikembangkan tanpa takut usang hanya dalam beberapa minggu. Masalah utama untuk Azure bukanlah algoritma sama sekali, tetapi meningkatkan kebutuhan bandwidth jaringan.


Altera Stratix V. Board Microsoft menggunakan board serupa dalam proyek Project Catapultnya,

Azure menjalankan sejumlah besar mesin virtual. Mereka di-host di sejumlah server fisik. Pusat data perusahaan menggunakan hypervisor Hyper-V untuk virtualisasi. Setiap mesin virtual memiliki satu atau lebih adapter jaringan yang digunakannya untuk menerima dan mengirim lalu lintas jaringan. Hypervisor mengelola peralatan jaringan fisik yang terhubung ke infrastruktur jaringan Azure. Mengarahkan lalu lintas dari peralatan virtual ke real dan sebaliknya, sementara secara bersamaan menyeimbangkan keseimbangan beban peralatan dan mengelola lalu lintas lalu lintas, membutuhkan sumber daya yang signifikan.

Karyawan Microsoft telah mengusulkan penambahan PCIe FPGA. FPGA, menurut para ahli, harus bekerja secara langsung dengan infrastruktur jaringan Azure, memungkinkan server jaringan untuk secara langsung mengirim dan menerima lalu lintas tanpa merutekannya di antarmuka jaringan sistem utama.

Diputuskan untuk secara langsung menghubungkan antarmuka PCIe ke mesin virtual, yang mempersingkat jalur untuk lalu lintas jaringan. Hasil? Mesin virtual Azure sekarang bekerja dengan kinerja infrastruktur jaringan 25 Gb / s dan penundaan hanya 100 milidetik. Dan ini dicapai tanpa melibatkan prosesor server.

Masalah yang sama dapat diselesaikan dengan menggunakan kartu jaringan modern, yang dengan cara yang sama dapat bekerja secara langsung dengan mesin virtual, melewati host. Namun dalam hal ini ada batasannya. Misalnya, setiap kartu dapat bekerja secara bersamaan dengan hanya 4 mesin virtual. Fleksibilitas yang diberikan FPGA tidak ada di sini. Dengan FPGA, Microsoft dapat bekerja lebih aktif, memprogram chip sesuai dengan kebutuhan saat ini. Akibatnya, kinerja keseluruhan pusat data meningkat dan beban pada peralatan berkurang. Semua instruksi ditulis langsung pada chip. Jika Anda menggunakan kartu jaringan, maka dalam hal ini prosesor host masih terlibat, yang bertanggung jawab untuk menjalankan instruksi.

Setelah uji peluncuran sistem seperti itu, perusahaan menjadi yakin akan efektivitasnya dan memutuskan untuk menggunakan semua pusat data yang menyediakan Azure. Minggu ini, korporasi menunjukkan operasi sistemnya di konferensi Ignite. Seorang karyawan korporasi menunjukkan proses simultan menerjemahkan 3 miliar kata dari Wikipedia bahasa Inggris menggunakan ribuan FPGA. Data diproses hanya dalam sepersepuluh detik. Kinerja sistem dalam hal ini mencapai 10 18 operasi per detik.

Source: https://habr.com/ru/post/id397969/


All Articles