How Profilers Can Help Navigate Type Migration
How Profilers Can Help Navigate Type Migration
复制标题
探查器如何帮助引导类型迁移
DOI:
10.1145/3622817
复制
发表时间:
2023
影响因子:
--
通讯作者:
Dimoulas, Christos
中科院分区:
文献类型:
--
作者:
Greenman, Ben;Felleisen, Matthias;Dimoulas, Christos
Sound migratory typing envisions a safe and smooth refactoring of untyped code bases to typed ones. However, the cost of enforcing safety with run-time checks is often prohibitively high, thus performance regressions are a likely occurrence. Additional types can often recover performance, but choosing the right components to type is difficult because of the exponential size of the migratory typing lattice. In principal though, migration could be guided by off-the-shelf profiling tools. To examine this hypothesis, this paper follows the rational programmer method and reports on the results of an experiment on tens of thousands of performance-debugging scenarios via seventeen strategies for turning profiler output into an actionable next step. The most effective strategy is the use of deep types to eliminate the most costly boundaries between typed and untyped components; this strategy succeeds in more than 50% of scenarios if two performance degradations are tolerable along the way.
登录
查看更多内容
影响因子:
--
作者:
Castagna, Giuseppe;Lanvin, Victor;Petrucciani, Tommaso;Siek, Jeremy G.
通讯作者:
Siek, Jeremy G.
影响因子:
--
作者:
Greenman, Ben;Felleisen, Matthias;Dimoulas, Christos
通讯作者:
Dimoulas, Christos
影响因子:
--
作者:
Campora, John Peter;Chen, Sheng;Walkingshaw, Eric
通讯作者:
Walkingshaw, Eric
影响因子:
--
作者:
G. Richards;Francesco Zappa Nardelli;J. Vitek
通讯作者:
J. Vitek
影响因子:
1.3
作者:
Leif Andersen;Vincent St;J. Vitek;M. Felleisen
通讯作者:
M. Felleisen