这个函数该内联吗

这个函数该内联吗

按模型,函数体 6 条、阈值 5,should_inline(6, 5) 交回什么? 内联模型:should_inline(体大小, 阈值)=不超阈值才内联;calls_saved=省下的调用次数;s

阅读更多 →
内联后调用方多大

内联后调用方多大

按模型,调用方 8 条、函数体 3 条、内联 2 处,size_after 交回几? 内联模型:should_inline(体大小, 阈值)=不超阈值才内联;calls_saved=省下的调用次数;s

阅读更多 →
内联为什么要有取舍

内联为什么要有取舍

内联不能无脑做,因为【0】。 内联模型:should_inline(体大小, 阈值)=不超阈值才内联;calls_saved=省下的调用次数;size_after(调用方, 函数体, 调用数)=每个调

阅读更多 →
函数内联是什么

函数内联是什么

函数内联做的是【0】。 内联模型:should_inline(体大小, 阈值)=不超阈值才内联;calls_saved=省下的调用次数;size_after(调用方, 函数体, 调用数)=每个调用点用

阅读更多 →
补全:展开余几次

补全:展开余几次

补全 remainder:展开后收尾还剩几次。 循环优化模型:is_invariant(用到的变量, 循环变量)=式子不含循环变量就是循环不变、可外提;hoistable 数能外提的条数;循环跑 n

阅读更多 →
补全:展开跑几轮

补全:展开跑几轮

补全 unroll_count:n 次、因子 factor,跑几整轮。 循环优化模型:is_invariant(用到的变量, 循环变量)=式子不含循环变量就是循环不变、可外提;hoistable 数能

阅读更多 →
补全:数能外提的

补全:数能外提的

补全 hoistable:数有几条式子不含循环变量。 循环优化模型:is_invariant(用到的变量, 循环变量)=式子不含循环变量就是循环不变、可外提;hoistable 数能外提的条数;循环跑

阅读更多 →
补全:判断循环不变

补全:判断循环不变

补全 is_invariant:式子不含循环变量就是循环不变。 循环优化模型:is_invariant(用到的变量, 循环变量)=式子不含循环变量就是循环不变、可外提;hoistable 数能外提的条

阅读更多 →
展开因子 4 跑几轮

展开因子 4 跑几轮

按模型,循环跑 10 次、展开因子 4,unroll_count(10, 4) 交回几轮? 循环优化模型:is_invariant(用到的变量, 循环变量)=式子不含循环变量就是循环不变、可外提;ho

阅读更多 →
循环展开的代价是什么

循环展开的代价是什么

把循环体复制几份来减少跳转,代价是【0】。 循环优化模型:is_invariant(用到的变量, 循环变量)=式子不含循环变量就是循环不变、可外提;hoistable 数能外提的条数;循环跑 n 次、

阅读更多 →