私は長いTCLスクリプトを持っています。プロセスが TCL で使用している正確な CPU 時間を測定したい
TCL で time コマンドを試しましたが、完全な TCL スクリプトでかかる CPU 時間を測定する正しい方法かどうかわかりません
私は長いTCLスクリプトを持っています。プロセスが TCL で使用している正確な CPU 時間を測定したい
TCL で time コマンドを試しましたが、完全な TCL スクリプトでかかる CPU 時間を測定する正しい方法かどうかわかりません
Tcl 自体はこの情報を提供しません。TclX パッケージのtimes
コマンドを使用したい。
package require Tclx
set pre [times]
# do CPU intensive operation here; for example calculating the length of a number with many digits...
string length [expr {13**12345}]
set post [times]
# the current process's non-OS CPU time is the first element; it's in milliseconds
set cpuSecondsTaken [expr {([lindex $post 0] - [lindex $pre 0]) / 1000.0}]
# The other elements are: system-cpu-time, subprocess-user-cpu-time, subprocess-system-time
もちろん、この情報を正しく測定する OS に依存しています。非 POSIX システム (Windows など) には移植できませんが、TWAPI パッケージには論理的に類似したものがあるかもしれません。