Macro TIME
time
form => result*
form - フォーム。下記の定義に従い評価されます。
result - formの返却値
time
は現在の環境(レキシカルと動的)で、formを評価します。 time
の呼び出しはコンパイルできます。
time
は様々なタイミングのデータと その他の情報をトレース出力に印刷します。 印刷される情報の内容と形式は実装定義です。 実装はそのような情報について、 経過時間、機器の実行時間、そしてストレージ管理の統計などを 提供することが勧められます。
なし。
結果得られるものの精度は、実行中の他の何らかの動作や、 オペレーティングシステムによって提供される操作関数の精度などに依存します。
結果の大きさはハードウェア、オペレーティングシステム、 Lispの実装、そしてグローバル環境の状況に依存するでしょう。 いくつかの機能は、 ハードウェアの速度の影響、 スケジューリングの性質(もしあるなら)、 プロセスの競合数(もしあるなら)、 システムのページング、 呼び出しがインタープリタ命令かコンパイルされた命令か、 呼び出された関数がコンパイルされたものか、 実行中に何らかのガベージコレクタが起動されたか、 内部データ構造(例えばハッシュテーブル)が 暗黙的に生成されているか、など、 によって周期的な問題が引き起こされます。
なし。
get-internal-real-time
, get-internal-run-time
一般的に、これらのタイミングは、 市場調査の比較に対しては保証や信頼性があるとは言えません。 これらの値は主に問題解決のためのものであり、 チューニング目的によるものです。
これらタイミングの結果は、 複雑な問題が生じたものの背景の情報として 解釈するときに使われるものでです。 詳しくはPerformance and Evaluation of Lisp Programs
をご確認ください。