Catatan Tanggal publikasi artikel: 26/12/2015. Selama masa lalu, beberapa tesis penulis telah dikonfirmasi oleh fakta nyata, dan beberapa ternyata salah - kira-kira. trans.
Selama 40 tahun terakhir, kita telah melihat bagaimana kecepatan komputer tumbuh secara eksponensial. CPU hari ini memiliki kecepatan clock seribu kali lebih cepat daripada komputer pribadi pertama di awal 1980-an. Jumlah RAM di komputer telah tumbuh sepuluh ribu kali, dan kapasitas hard drive telah meningkat lebih dari seratus ribu kali. Kami sangat terbiasa dengan pertumbuhan berkelanjutan ini sehingga kami hampir menganggapnya sebagai hukum alam dan menyebutnya hukum Moore. Tetapi ada batasan untuk pertumbuhan ini, yang
ditunjukkan oleh Gordon Moore sendiri . Kami sekarang mendekati batas fisik, di mana kecepatan perhitungan dibatasi oleh ukuran atom dan kecepatan cahaya.
Jam centang canon dari Intel mulai melewatkan bilah di sana-sini. Setiap "centang" sesuai dengan penurunan ukuran transistor, dan setiap "centang" sesuai dengan peningkatan mikroarsitektur. Generasi prosesor saat ini, yang disebut Skylake, seperti itu dengan proses 14-nanometer. Logikanya, yang berikutnya harus menjadi "centang" dengan teknologi proses 10-nanometer, tetapi Intel sekarang mengeluarkan "siklus pembaruan" setelah setiap "seperti itu". Prosesor berikutnya, diumumkan untuk 2016, akan menjadi pembaruan untuk Skylake,
masih pada teknologi proses 14-nanometer . Memperlambat jam Tik-Tak adalah kebutuhan fisik, karena kami mendekati batas di mana ukuran transistor hanya beberapa atom (ukuran atom silikon 0,2 nanometer).
Keterbatasan fisik lainnya adalah kecepatan data, yang tidak dapat melebihi kecepatan cahaya. Dibutuhkan beberapa siklus clock untuk mendapatkan data dari satu ujung CPU ke ujung lainnya. Sebagai microchip menjadi lebih besar dengan semakin banyak transistor, kecepatan mulai dibatasi oleh transfer data pada microchip itu sendiri.
Keterbatasan teknologi bukan satu-satunya hal yang memperlambat evolusi prosesor. Faktor lain adalah melemahnya persaingan pasar. Pesaing terbesar Intel, AMD, kini lebih berfokus pada apa yang disebutnya Accelerated Processing Units (APUs), yang merupakan prosesor lebih kecil dengan grafik terintegrasi untuk mini-PC, tablet, dan perangkat ultra-mobile lainnya. Intel sekarang telah mengambil alih pangsa pasar prosesor untuk PC dan server kelas atas. Persaingan sengit antara Intel dan AMD, yang mendorong pengembangan prosesor x86 selama beberapa dekade, telah hampir menghilang.
Pertumbuhan daya komputer dalam beberapa tahun terakhir datang tidak hanya dari peningkatan kecepatan komputasi, tetapi dari peningkatan paralelisme. Mikroprosesor modern menggunakan tiga jenis paralelisme:
- Eksekusi simultan beberapa tim dengan perubahan urutannya.
- Operasi Single-Operation-Multiple-Data (SIMD) dalam register vektor.
- Beberapa core CPU dalam satu chip.
Jenis konkurensi ini tidak memiliki batas teoretis, tetapi ada yang praktis. Eksekusi perintah dengan perubahan urutannya dibatasi oleh jumlah tim independen dalam kode program. Anda tidak dapat menjalankan dua perintah sekaligus jika perintah kedua menunggu hasil yang pertama. CPU saat ini biasanya dapat menjalankan empat perintah secara bersamaan. Meningkatkan jumlah ini tidak akan membawa banyak manfaat, karena akan sulit atau tidak mungkin bagi prosesor untuk menemukan instruksi yang lebih independen dalam kode yang dapat dieksekusi secara bersamaan.
Prosesor AVX2 saat ini memiliki 16 register 256-bit vektor. Set instruksi AVX-512 yang akan datang akan memberi kita 32 register dari 512 bit, dan kita dapat berharap dalam ekstensi mendatang untuk vektor 1024- atau 2048-bit. Tetapi peningkatan register vektor ini akan memiliki efek yang semakin sedikit. Beberapa tugas komputasi memiliki paralelisme bawaan yang cukup untuk mendapatkan manfaat dari vektor-vektor yang lebih besar ini. Register vektor 512-bit dihubungkan oleh satu set register topeng yang memiliki batas ukuran 64-bit. Register vektor 2048-bit dapat menyimpan 64 angka presisi tunggal masing-masing 32 bit. Dapat diasumsikan bahwa Intel tidak berencana untuk membuat register vektor lebih dari 2048 bit, karena mereka akan melebihi batasan register topeng 64-bit.
Banyak core CPU yang memberikan keuntungan hanya jika ada banyak program kecepatan kritis yang berjalan secara bersamaan, atau jika tugas tersebut dibagi menjadi beberapa utas independen. Jumlah utas tempat Anda dapat membagi tugas secara menguntungkan selalu terbatas.
Produsen tidak diragukan lagi akan mencoba membuat komputer yang semakin kuat, tetapi bagaimana kemungkinan kekuatan komputer ini dapat digunakan dalam praktik?
Ada kemungkinan konkurensi keempat yang belum digunakan. Program biasanya memiliki banyak cabang if-else, jadi jika CPU belajar untuk memprediksi cabang mana yang akan bekerja, maka kita bisa menjalankannya. Anda dapat menjalankan beberapa cabang kode sekaligus untuk menghindari membuang waktu jika prediksi salah. Tentu saja, Anda harus membayar untuk ini dengan konsumsi energi yang meningkat.
Peningkatan lain yang mungkin adalah menempatkan perangkat logika yang dapat diprogram pada chip prosesor. Kombinasi serupa sekarang biasa untuk apa yang disebut FPGA, yang digunakan dalam peralatan canggih. Perangkat logika yang dapat diprogram tersebut di komputer pribadi dapat digunakan untuk mengimplementasikan fungsi-fungsi khusus untuk aplikasi spesifik, untuk tugas-tugas seperti pemrosesan gambar, enkripsi, kompresi data, dan jaringan saraf.
Industri semikonduktor sedang bereksperimen dengan bahan yang dapat digunakan sebagai pengganti silikon. Beberapa bahan semikonduktor III-V dapat beroperasi
pada tegangan yang lebih rendah dan pada frekuensi yang lebih tinggi daripada silikon , tetapi mereka tidak membuat atom lebih kecil atau lebih lambat cahaya. Pembatasan fisik masih berlaku.
Suatu hari nanti kita bisa melihat chip multilayer tiga dimensi. Ini akan memungkinkan untuk mengencangkan sirkuit, mengurangi jarak, dan akibatnya, penundaan. Tetapi bagaimana cara efektif mendinginkan chip seperti itu ketika energi didistribusikan di seluruh chip? Teknologi pendingin baru akan dibutuhkan. Microcircuit tidak akan dapat mentransfer daya ke semua sirkuit secara bersamaan tanpa terlalu panas. Dia harus menjaga sebagian besar bagiannya terputus sebagian besar waktu dan memasok daya ke setiap bagian hanya selama penggunaan.
Dalam beberapa tahun terakhir, kecepatan CPU telah meningkat lebih cepat daripada kecepatan RAM, yang sering menjadi hambatan serius. Tanpa ragu, di masa depan kita akan melihat banyak upaya untuk meningkatkan kecepatan RAM. Perkembangan yang mungkin terjadi adalah menempatkan RAM pada satu chip dengan CPU (atau setidaknya satu casing) untuk mengurangi jarak transfer data. Ini akan menjadi penggunaan chip tiga dimensi yang bermanfaat. RAM mungkin akan dari jenis statis, yaitu, daya akan disuplai ke setiap sel memori hanya ketika diakses.
Intel juga memasok pasar untuk superkomputer untuk penggunaan ilmiah. Prosesor Knight's Corner memiliki hingga 61 core dalam satu chip. Ini memiliki rasio kinerja / harga yang lemah, tetapi penerus yang diharapkan untuk Knight's Landing harus lebih baik dalam hal ini. Ini akan menampung hingga 72 core pada sebuah chip dan akan dapat menjalankan perintah dengan perubahan urutannya. Ini adalah ceruk pasar kecil, tetapi Intel dapat meningkatkan kredibilitasnya.
Sekarang peluang terbaik untuk meningkatkan kinerja, seperti yang saya pikirkan, dari sisi perangkat lunak. Pengembang perangkat lunak dengan cepat menemukan aplikasi untuk pertumbuhan produktivitas eksponensial dari komputer modern, yang terjadi berkat hukum Moore. Industri perangkat lunak mulai menggunakannya, dan juga mulai menggunakan alat pengembangan dan kerangka kerja perangkat lunak yang semakin maju. Alat dan kerangka kerja pengembangan tingkat tinggi ini memungkinkan untuk mempercepat pengembangan perangkat lunak, tetapi dengan mengorbankan lebih banyak sumber daya komputasi sebagai produk akhir. Banyak program saat ini sangat boros dalam konsumsi daya komputasi perangkat keras yang berlebihan.
Selama bertahun-tahun, kami telah mengamati simbiosis antara industri perangkat keras dan perangkat lunak, di mana yang terakhir memproduksi lebih banyak dan lebih maju dan sumber daya intensif produk yang mendorong pengguna untuk membeli peralatan yang semakin kuat. Ketika laju pertumbuhan teknologi perangkat keras melambat, dan pengguna beralih ke perangkat portabel kecil di mana kapasitas baterai lebih penting daripada kinerja, industri perangkat lunak sekarang harus mengubah arah. Dia harus mengurangi alat pengembangan sumber daya intensif dan perangkat lunak multi-level dan mengembangkan program yang tidak begitu penuh fungsi. Waktu pengembangan akan meningkat, tetapi program akan menghabiskan lebih sedikit sumber daya perangkat keras dan bekerja lebih cepat pada perangkat portabel kecil dengan usia baterai yang terbatas. Jika industri perangkat lunak komersial tidak mengubah arah sekarang, maka itu mungkin melepaskan pangsa pasar untuk produk-produk open source yang lebih asketis.