📄 test_31.mils
字号:
setoid(oid(20000000));## Performance test for closure and traversalsmodule("oo7");module("alarm");proc fill(int size) : BAT[int,int] { var c:= new(int,int); var i := 1; while(i < size) { insert(c,i,i:=i+1); } insert(c,i,1); return c;} var c := closure(fill(20)); count(c).print();var z:= time();var clo:= closure(c);printf("#~BeginVariableOutput~#\nclosure in %d ms cnt %d\n#~EndVariableOutput~#\n",time()-z,count(clo));## testing traversal on directed acyclic graph## produces the end-points onlyvar d:= new(int,int);d.insert(1,1);d.subgraph(c).print();## The alternative is to extract a subgraph as a setd.clear();d.insert(2,2);var z:= time();var e:=d.subgraph(c); printf("#~BeginVariableOutput~#\nsubgraph in %d ms on %d\n#~EndVariableOutput~#\n",time()-z,count(e));d.clear();d.insert(2,2);d.insert(3,3);z:= time(); e:=d.subgraph(c); printf("#~BeginVariableOutput~#\nsubgraph in %d ms cnt %d\n#~EndVariableOutput~#\n",time()-z,count(e));d.clear();d.insert(2,2);d.insert(3,3);d.insert(4,4);d.insert(5,5);z:= time(); e:=d.subgraph(c); printf("#~BeginVariableOutput~#\nsubgraph in %d ms cnt %d\n#~EndVariableOutput~#\n",time()-z,count(e));## LARGE TESTprintf("#~BeginVariableOutput~#\n"); cpu().print(); printf("#~EndVariableOutput~#\n");d.clear();d.insert(2,2);z:= time();e:=d.subgraph(clo); printf("#~BeginVariableOutput~#\nsubgraph in %d ms on %d\n#~EndVariableOutput~#\n",time()-z,count(e));d.clear();## d.insert(2,2);d.insert(3,3);z:= time(); e:=d.subgraph(clo); printf("#~BeginVariableOutput~#\nsubgraph in %d ms cnt %d\n#~EndVariableOutput~#\n",time()-z,count(e));d.clear();##d.insert(2,2);##d.insert(3,3);d.insert(4,4);##d.insert(5,5);z:= time(); e:=d.subgraph(clo); printf("#~BeginVariableOutput~#\nsubgraph in %d ms cnt %d\n#~EndVariableOutput~#\n",time()-z,count(e));printf("#~BeginVariableOutput~#\n"); cpu().print(); printf("#~EndVariableOutput~#\n");quit();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -