File: [local] / OpenXM / src / k097 / debug / tune1.k (download)
Revision 1.1.1.1 (vendor branch), Fri Oct 8 02:12:16 1999 UTC (24 years, 11 months ago) by maekawa
Branch: OpenXM, MAIN
CVS Tags: maekawa-ipv6, R_1_3_1-2, RELEASE_20000124, RELEASE_1_3_1_13b, RELEASE_1_2_3_12, RELEASE_1_2_3, RELEASE_1_2_2_KNOPPIX_b, RELEASE_1_2_2_KNOPPIX, RELEASE_1_2_2, RELEASE_1_2_1, RELEASE_1_1_3, RELEASE_1_1_2, KNOPPIX_2006, HEAD, DEB_REL_1_2_3-9, ALPHA Changes since 1.1: +0 -0
lines
o import OpenXM sources
|
def foo10() {
local i,n,keys;
sm1(" set_timer ");
n = Length(Helplist);
keys = [" " ]; /* This is a gate keeper for shell. */
PSfor (i=0; i< n; i++ ) {
keys = Append(keys,Helplist[i,0]);
}
sm1(" set_timer ");
sm1(" set_timer ");
keys = sm1(keys," shell ");
sm1(" set_timer ");
}
def foo20() {
local i,n,keys;
sm1(" set_timer ");
n = Length(Helplist);
keys = [" " ]; /* This is a gate keeper for shell. */
PSfor (i=0; i< n; i++ ) {
keys = dummyf(keys,Helplist[i,0]);
}
sm1(" set_timer ");
}
def dummyf(a,b) {
;
}
/* 1997, 6/1 (日曜日)
n = 68
In[13]=foo10();
User time: 0.866667 seconds, System time: 0.000000 seconds
User time: 0.766667 seconds, System time: 0.000000 seconds: shell sort の時間
In[14]=foo20();
User time: 0.633333 seconds, System time: 0.000000 seconds
foo10 と foo20 では, 0.2 秒程度の差しかない.
したがって, append では, Helplist[i,0] の取り出しと,
局所変数の処理にほとんどの時間が使われていると予想できる.
*/
def foo30() {
local i,n,keys;
sm1(" set_timer ");
n = Length(Helplist);
keys = [" " ]; /* This is a gate keeper for shell. */
PSfor (i=0; i< n; i++ ) {
keys = dummyf(keys,i); /* 配列要素のとりだしなし */
}
sm1(" set_timer ");
}
/* foo30() は, 0.48 秒. よって, 配列要素の取り出しに, 0.2 秒程度かかっている.
*/
def foo40() {
local i,n,keys;
n = Length(Helplist);
keys = [" " ]; /* This is a gate keeper for shell. */
sm1(" set_timer ");
PSfor (i=0; i< n; i++ ) {
keys = dummyf(keys,i); /* 配列要素のとりだしなし */
}
sm1(" set_timer ");
}
/* これは, 0.46 秒. Length の計算は, 0.02 秒 */
/* 関数呼び出しは, 0.5 秒, 配列要素の取り出しが, 0.2秒 */