複数命令実行の性能比較

複数命令実行の性能比較

私は3つの異なる言語で3つの異なるプログラムを書いており、ランタイムとメモリ消費の面でパフォーマンスを比較したいと思います。私が探しているのは、次のコマンドです。

$ SOMETHING (python test.py)
$ SOMETHING (ghc -o test test.hs; ./test)
$ SOMETHING (gcc -o test test.c; ./test)

その理由は、これらのさまざまな言語でプロファイリングツールを使用するのではなく、これらのプログラムのパフォーマンス結果を表示するための統合されたUnix(y)アプローチが必要なためです。また、ソフトウェアの専門家が、これらのプログラムで有用な統計を取得するためにランタイムおよびメモリ消費以外の他の一般/基本基準を測定するかどうかを知りたいと思います。ありがとう

答え1

簡単な方法はGNUtimeコマンドを使用することです。

/usr/bin/time python test.py
/usr/bin/time /bin/sh -c 'ghc -o test test.hs; ./test'
/usr/bin/time /bin/sh -c 'gcc -o test test.c; ./test'

起動シェルを標準化するために、/bin/sh -cPythonコマンドにaも追加します。

time出力フォーマットを指定し、メモリ、I/O、およびその他の詳細を出力に含めるには、さまざまなオプションがあります。バラよりman timeもっと学ぶ。

time次のように使用できる組み込みbashもあります。

time python test.py
time { ghc -o test test.hs; ./test; }
time { gcc -o test test.c; ./test; }

時間は少し与えますが、メモリとI / Oオプションもあるかどうかはわかりません。

関連情報