Beberapa waktu yang lalu, saya telah membagikan beberapa alternatif untuk 'top', utilitas baris perintah . Beberapa pengguna bertanya kepada saya mana di antara alat-alat itu yang terbaik dan atas dasar apa (seperti fitur, kontributor, tahun aktif, permintaan halaman, dll.) Saya membandingkan alat-alat itu. Mereka juga meminta saya untuk membagikan hasil benchmarking jika ada. Sayangnya, saya tidak tahu bagaimana melakukan benchmark program pada waktu itu. Saat mencari beberapa alat benchmark sederhana dan mudah digunakan untuk membandingkan program Linux, saya menemukan dua utilitas bernama 'Bench' dan 'Sempurna' . Ini adalah alat baris perintah yang sederhana dan mudah digunakan untuk membandingkan perintah dan program Linux di Linux dan sistem mirip Unix.
1. Benchmark Perintah Dan Program Linux Dari Commandline Menggunakan Bench Tool
'Bangku' benchmark utilitas satu atau lebih perintah/program yang diberikan menggunakan kriteria Haskell perpustakaan dan menampilkan statistik keluaran dalam format yang mudah dimengerti. Alat ini dapat membantu jika Anda perlu membandingkan program serupa berdasarkan hasil benchmarking. Kami juga dapat mengekspor hasilnya ke format HTML atau CSV atau keluaran template.
1.1. Instal Utilitas Bench Di Linux
Utilitas bangku dapat diinstal dalam tiga metode.
1. Menggunakan Linuxbrew
Kita dapat menginstal utilitas Bench menggunakan manajer paket Linuxbrew. Jika Anda belum menginstal Linuxbrew, lihat tautan berikut.
- Linuxbrew – Manajer Paket Umum Untuk Linux dan Mac OS X
Setelah menginstal Linuxbrew, jalankan perintah berikut untuk menginstal Bench:
$ brew install bench
2. Menggunakan alat tumpukan Haskell
Pertama, instal Haskell seperti yang dijelaskan pada tautan berikut.
- Memulai Bahasa Pemrograman Haskell
Kemudian, jalankan perintah berikut untuk menginstal Bench.
$ stack setup
$ stack install bench
'Stack' akan memasang bangku ke ~/.local/bin atau sesuatu yang serupa. Pastikan direktori instalasi berada di jalur pencarian yang dapat dieksekusi sebelum menggunakan alat bangku. Anda akan diingatkan untuk melakukan ini bahkan jika Anda lupa.
3. Menggunakan pengelola paket Nix
Cara lain untuk menginstal Bench adalah menggunakan Nix manajer paket. Instal Nix seperti yang ditunjukkan pada tautan di bawah ini.
- Nix – Pengelola Paket yang Kuat untuk Linux dan Unix
Setelah menginstal Nix, instal alat Bench menggunakan perintah:
$ nix-env -i bench
1.2. Benchmark Perintah Dan Program Linux Menggunakan Bench
Mari kita benchmark hasil dari perintah 'ls -al'. Untuk melakukannya, jalankan:
$ bench 'ls -al'
Contoh keluaran:

Perintah benchmark 'ls'
Anda harus mengutip perintah saat Anda menggunakan flag/opsi dengannya.
Demikian pula, Anda dapat membandingkan program apa pun yang diinstal di sistem Anda. Perintah berikut menunjukkan hasil benchmarking program 'htop' dan 'ptop'.
$ bench htop
$ bench ptop

Tolok ukur program htop dan ptop
Alat Bench juga dapat melakukan benchmark beberapa program sekaligus. Berikut adalah hasil benchmarking program ls, htop, ptop.
$ bench ls htop ptop
Contoh keluaran:

Tolok ukur beberapa program
Kami juga dapat mengekspor hasil benchmark ke HTML seperti di bawah ini.
$ bench htop --output example.html
Untuk mengekspor hasilnya ke CSV, jalankan saja:
$ bench htop --csv FILE
Lihat bagian bantuan:
$ bench --help
2. Benchmark Perintah Dan Program Linux Dari Commandline Menggunakan Hyperfine
Sempurna adalah alat benchmark baris perintah lain yang terinspirasi oleh alat 'Bench' yang baru saja kita bahas di atas. Ini gratis, open source, program pembandingan lintas platform dan ditulis dalam Rust bahasa pemrograman. Ini memiliki beberapa fitur tambahan dibandingkan dengan alat Bench seperti yang tercantum di bawah ini.
- Analisis statistik di beberapa proses.
- Dukungan untuk perintah shell arbitrer.
- Umpan balik yang konstan tentang kemajuan tolok ukur dan perkiraan saat ini.
- Lakukan pemanasan sebelum benchmark sebenarnya.
- Perintah pembersihan cache dapat diatur sebelum setiap waktu dijalankan.
- Deteksi outlier statistik.
- Ekspor hasil tolok ukur ke berbagai format, seperti CSV, JSON, Penurunan harga.
- Tolok ukur berparameter.
2.1. Instal Hyperfine di Linux
Kita dapat menginstal Hyperfine menggunakan salah satu metode berikut.
1. Menggunakan Linuxbrew
$ brew install hyperfine
2. Menggunakan Kargo
Pastikan Anda telah menginstal Rust seperti yang dijelaskan pada link berikut.
- Instal Bahasa Pemrograman Rust Di Linux
Setelah menginstal Rust, jalankan perintah berikut untuk menginstal Hyperfine melalui Cargo:
$ cargo install hyperfine
3. Menggunakan program pembantu AUR
Hyperfine tersedia dalam AUR . Jadi, Anda dapat menginstalnya di sistem berbasis Arch menggunakan program pembantu apa pun, seperti YaY , seperti di bawah ini.
$ yay -S hyperfine
4. Unduh dan pasang binari
Hyperfine tersedia dalam biner untuk sistem berbasis Debian. Unduh file biner .deb terbaru dari laman rilis dan instal menggunakan manajer paket 'dpkg'. Saat panduan ini ditulis, versi terbaru adalah 1.4.0 .
$ wget https://github.com/sharkdp/hyperfine/releases/download/v1.4.0/hyperfine_1.4.0_amd64.deb
$ sudo dpkg -i hyperfine_1.4.0_amd64.deb
$ sudo apt install -f
2.2. Benchmark Perintah Dan Program Linux Menggunakan Hyperfine
Untuk menjalankan benchmark menggunakan Hyperfine, jalankan saja bersama program/perintah seperti di bawah ini.
$ hyperfine 'ls -al'

Perintah benchmark menggunakan hyperfine
Tolok ukur beberapa perintah/program:
$ hyperfine htop ptop
Contoh keluaran:

Tolok ukur beberapa program menggunakan hyperfine
Seperti yang Anda lihat di akhir keluaran, Hyperfine menyebutkan - 'htop berlari 1,96 kali lebih cepat daripada ptop' , sehingga kami dapat segera menyimpulkan kinerja htop lebih baik daripada Ptop. Ini akan membantu Anda dengan cepat menemukan program mana yang berkinerja lebih baik saat membandingkan beberapa program. Kami tidak mendapatkan output detail ini di utilitas Bench.
Hyperfine akan secara otomatis menentukan jumlah proses yang harus dilakukan untuk setiap perintah. Secara default, ini akan melakukan setidaknya 10 proses pembandingan . Jika Anda ingin menyetel jumlah lari minimum (Misalnya 5 run), gunakan -m
/--min-runs
pilihan seperti di bawah ini:
$ hyperfine --min-runs 5 htop ptop
Atau,
$ hyperfine -m 5 htop ptop
Demikian pula, untuk melakukan jumlah lari maksimum untuk setiap perintah, perintahnya adalah:
$ hyperfine --max-runs 5 htop ptop
Atau,
$ hyperfine -M 5 htop ptop
Kami bahkan dapat melakukan jumlah lari yang tepat untuk setiap perintah menggunakan perintah berikut:
$ hyperfine -r 5 htop ptop
Seperti yang Anda ketahui, jika waktu eksekusi program dibatasi oleh I/O disk, hasil pembandingan dapat sangat dipengaruhi oleh cache disk dan apakah dingin atau hangat. Untungnya, Hyperfine memiliki opsi untuk melakukan sejumlah eksekusi program sebelum melakukan benchmark yang sebenarnya.
Untuk melakukan NUM pemanasan (Misalnya 3) sebelum tolok ukur yang sebenarnya, gunakan -w
/ --warmup
pilihan seperti di bawah ini:
$ hyperfine --warmup 3 htop
Sama seperti utilitas Bench, Hyperfine juga memungkinkan kita untuk mengekspor hasil benchmark ke file tertentu. Kami dapat mengekspor hasilnya ke format CSV, JSON, dan Markdown.
Misalnya, untuk mengekspor hasil dalam format penurunan harga, gunakan perintah berikut:
$ hyperfine htop ptop --export-markdown <FILE-NAME>
Untuk opsi lebih lanjut dan detail penggunaan, lihat bagian bantuan:
$ hyperfine --help
Dan, itu saja untuk saat ini. Jika Anda pernah berada dalam situasi di mana Anda perlu membandingkan program serupa dan alternatif, alat ini mungkin bisa membantu.