-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
目前采取的策略中使用了workCompute和WEST_astwalk两个函数, 以及全局变量work来增量计算每个 flatNode 的工作量.
可以考虑修改的方式:
- 合并上述2个函数为1个函数. 实际阅读代码过程中也发现
WEST_astwalk的一些分支并不会被访问到. 若将这两个函数合二为一, 则只需递归执行workCompute即可 - 把全局自增变量
work修改为 node 的成员变量修改以后也便于输出工作量估计的可视化, 例如下面的例子
double i = 1.0; // work :2
int a = 1; // work:1
if( false || true ){
/*****/ // work: x
}else{
/*****/ // work:y
} // work: (x+y)/2预计在 node 上增加的结构:
int workEstimate(){
if(this.work) return this.work; //可以考虑加缓存机制, 若不会出现重复估计的情况, 不加缓存也行
else
/*****/
} //Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels