Saya datang di ini bekerja di daerah di mana tidak ada SLA kinerja Ketika datang ke penyaji offline dalam grafik komputer, tidak ada "kinerja yang memuaskan" bagi pengguna, karena mereka sudah mengeluarkan sejumlah besar uang untuk mendistribusikan komputasi di cloud dan membuat pertanian bahkan dengan penyaji mutakhir untuk menghasilkan gambar dan bingkai berkualitas-produksi untuk film, misalnya
Tetapi saya harus mengatakan sebagai salah satu yang bekerja di domain ini selama bertahun-tahun bahwa solusi apa pun yang secara signifikan menurunkan pemeliharaan demi efisiensi sebenarnya bekerja melawan persyaratan kinerja yang selalu berubah. Karena jika Anda tidak dapat secara efektif mempertahankan solusi Anda selama bertahun-tahun yang akan datang karena banyak hal bergeser di bawah kaki Anda (baik dalam hal kode di sekitarnya dan apa yang diharapkan pengguna sebagai pesaing terus mengungguli satu sama lain), maka solusi Anda sudah bekerja menuju keusangan dan di membutuhkan penggantian grosir.
Saya tidak melihat tujuan akhir dari profiler seperti VTune sebagai cara untuk membuat kode saya berjalan lebih cepat. Nilai tertinggi mereka adalah memastikan saya tidak menurunkan produktivitas saya untuk memenuhi tuntutan kinerja yang terus meningkat. Jika saya benar-benar harus menerapkan beberapa optimasi mikro yang terlihat kotor, maka profiler tersebut, dikombinasikan dengan menjalankannya terhadap kasus pengguna dunia nyata (dan bukan beberapa kasus uji yang saya bayangkan mungkin penting), memastikan saya menerapkan yang tampak seperti gross-looking optimisasi sangat, sangat bijaksana untuk hanya hotspot teratas yang muncul serta sangat hati-hati mendokumentasikan mereka karena saya pasti akan harus meninjau kembali dan mempertahankan dan mengubah dan mengubahnya untuk tahun-tahun berikutnya yang akan datang jika solusi itu tetap layak.
Dan terutama jika solusi Anda yang dioptimalkan melibatkan lebih banyak kopling, maka saya benar-benar akan enggan menggunakannya. Di antara metrik yang paling berharga yang saya hargai di bidang kinerja-kritis dari basis kode adalah decoupling (seperti dalam meminimalkan jumlah informasi yang dibutuhkan sesuatu untuk bekerja, yang juga meminimalkan kemungkinan diperlukannya perubahan kecuali secara langsung membutuhkan perubahan). ), karena area kritis tersebut secara signifikan melipatgandakan alasan untuk hal-hal berubah. Yang berarti semakin sedikit informasi yang diperlukan untuk bekerja, semakin sedikit alasan untuk perubahan, dan meminimalkan alasan untuk perubahan benar-benar merupakan bagian besar dari peningkatan produktivitas di bidang fokus khusus saya karena segala sesuatu harus terus berubah pula (kami akan menjadi usang dalam setahun jika tidak),
Bagi saya solusi terbesar dan paling efektif yang saya temukan adalah solusi di mana efisiensi dan pemeliharaan dan produktivitas tidak bertentangan satu sama lain. Pencarian saya adalah mencoba membuat konsep-konsep ini selaras yang bisa dibuat orang.