Kami mendekati batas daya komputasi - kami membutuhkan programmer baru

Prosesor yang semakin dipercepat menyebabkan munculnya perangkat lunak yang membengkak, tetapi keterbatasan fisik mungkin memaksa kami untuk kembali ke versi kode yang lebih sederhana yang kami gunakan di masa lalu




Dahulu kala, di tahun 1960-an, Gordon Moore , salah satu pendiri Intel, memperhatikan bahwa jumlah transistor yang dapat ditampung dalam chip silikon berlipat ganda kira-kira setiap dua tahun. Karena jumlah transistor terkait dengan daya pemrosesan, ini berarti bahwa, pada kenyataannya, kekuatan pemrosesan dua kali lipat setiap dua tahun. Maka lahirlah hukum Moore , yang menyediakan bagi orang yang bekerja di industri komputer - setidaknya bagi mereka yang belum berusia empat puluh tahun - fondasi andal yang sama dengan hukum gerak Newton yang disediakan untuk insinyur mesin.

Tetapi dia, bagaimanapun, memiliki satu perbedaan. Hukum Moore masih hanya korelasi empiris, yang diamati dalam periode waktu tertentu, dan kami akhirnya mencapai batas penerapannya. Pada 2010, Moore sendiri meramalkan bahwa hukum fisika akan menghentikan kenaikan eksponensial ini. "Berkenaan dengan ukuran transistor," katanya, "sudah jelas bahwa kita sudah mendekati ukuran atom, yang merupakan penghalang mendasar, tetapi sampai saat ini dua atau tiga generasi masih akan berubah - namun, kami tidak dapat memprediksi perkembangan lebih lanjut. Kami memiliki 10-20 tahun lagi sebelum kami mencapai batas fundamental. "

Dan sekarang kita telah mencapai tahun 2020, dan gagasan bahwa kita akan selalu memiliki peralatan komputasi yang cukup kuat yang cocok untuk kebutuhan yang terus berkembang mulai tampak terlalu percaya diri. Dan karena sudah jelas bagi mereka yang telah terlibat dalam bisnis ini selama beberapa dekade, banyak penelitian telah dilakukan mengenai cara cerdik memasukkan daya komputasi yang lebih besar ke dalam mesin, misalnya, arsitektur multi-core di mana CPU memiliki dua atau lebih modul komputasi yang terpisah , atau "core." Semua ini dilakukan dengan harapan menunda hari yang mengerikan ketika chip silikon kehabisan ruang untuk bermanuver (misalnya, Apple Mac Pro baru berjalan pada prosesor Intel Xeon 28-core). Dan, tentu saja, studi tentang komputer kuantum berkembang dengan kecepatan tinggi, yang, pada prinsipnya, bisa menjadi terobosan penting.

Tetapi komputasi membutuhkan kombinasi perangkat keras dan perangkat lunak, dan salah satu konsekuensi yang dapat diprediksi dari hukum Moore adalah bahwa ia membuat pemrogram malas. Menulis perangkat lunak adalah keahlian yang rumit, dan beberapa membuatnya lebih baik daripada yang lain. Mereka menulis lebih elegan, dan, yang lebih penting, kode yang lebih gesit yang berjalan lebih cepat. Pada hari-hari awal ketika perangkat keras relatif primitif, keterampilan programmer sangat penting. Misalnya, ketika Bill Gates masih kecil, ia menulis penerjemah BASIC untuk salah satu mikrokomputer TRS-80 pertama. Karena mesin memiliki ROM kecil dalam ukuran, Gates harus memasukkan seluruh program menjadi 16 Kb. Dia menulisnya di assembler untuk meningkatkan efisiensi dan menghemat ruang; bahkan ada legenda bahwa bertahun-tahun kemudian dia bisa mengutip seluruh program dari ingatan.

Dan pada tahun-tahun awal komputasi, Anda dapat menemukan ribuan kisah serupa. Tetapi dengan aksesi hukum Moore, kebutuhan untuk kode ekonomis, hemat secara bertahap menghilang, dan motivasi berubah. Pemrograman telah menjadi disiplin industri untuk insinyur perangkat lunak. Penciptaan ekosistem perangkat lunak populer, seperti sistem operasi dan program komersial, membutuhkan partisipasi tim pengembangan besar; atas dasar ini, birokrasi telah tumbuh dari manajer proyek dan direktur eksekutif. Proyek perangkat lunak besar berubah menjadi pawai kematian, yang Fred Brooks paling jelas gambarkan dalam bukunya yang terkenal Mythical Man-Month , yang diterbitkan pada tahun 1975, dan sejak itu telah dicetak ulang untuk alasan yang sangat bagus - itu masih relevan. Dan dalam proses semua ini, perangkat lunak membengkak dan menjadi tidak efektif.

Tapi itu tidak masalah, karena setrika selalu memberikan kekuatan komputasi baru, menyembunyikan masalah perangkat lunak yang membengkak , atau bloatware. Itu sering membuat marah para programmer yang teliti. โ€œSatu-satunya konsekuensi dari kemunculan besi yang kuat yang saya amati,โ€ tulis salah satu dari mereka, โ€œadalah bahwa programmer menulis program di atasnya yang kembung semakin keras. Mereka menjadi lebih malas, dan karena perangkat kerasnya cukup cepat, mereka tidak mencoba mempelajari algoritma atau mengoptimalkan kode. Ini gila ! "

Begitulah. Dalam sebuah kuliah tahun 1997, Nathan Mirwold, seorang insinyur senior di Bill Gates, membuat empat undang-undang peranti lunaknya:

  1. PO seperti gas, itu mengembang untuk mengisi seluruh tangki.
  2. Perangkat lunak tumbuh hingga mencapai batas yang ditetapkan oleh hukum Moore.
  3. Pertumbuhan perangkat lunak memungkinkan hukum Moore memungkinkan - orang membeli perangkat keras baru karena perangkat lunak memerlukannya.
  4. Perangkat lunak hanya dibatasi oleh ambisi dan harapan manusia.

Pada saat aturan hukum Moore akan segera berakhir, hukum Mirwold mengikuti bahwa kita hanya memiliki dua opsi. Entah kita akan memperketat ambisi kita, atau kita akan kembali menulis kode yang lebih ekonomis dan efisien. Dengan kata lain, kembali ke masa depan.

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


All Articles