当前位置: X-MOL 学术arXiv.cs.PL › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Type Stability in Julia: Avoiding Performance Pathologies in JIT Compilation (Extended Version)
arXiv - CS - Programming Languages Pub Date : 2021-09-04 , DOI: arxiv-2109.01950
Artem Pelenitsyn, Julia Belyakova, Benjamin Chung, Ross Tate, Jan Vitek

Performance is serious business for a scientific programming language. Success in that niche hinges on fostering a rich ecosystem of highly optimized mathematical libraries. The Julia language is predicated on the bet that its users can write efficient numerical code in the language itself, without having to resort to C or Fortran. To avoid performance pathologies, Julia programmers strive to write code that is type stable. This paper provides a formal definition of type stability as well as a stronger property of type groundedness, shows that groundedness enables compiler optimizations, and proves the compiler correct. We also perform a corpus analysis to uncover how these type-related properties manifest in practice.

中文翻译:

Julia 中的类型稳定性:避免 JIT 编译中的性能问题(扩展版)

对于科学编程语言来说,性能是一项严肃的工作。在该领域的成功取决于培养高度优化的数学库的丰富生态系统。Julia 语言的前提是它的用户可以用语言本身编写高效的数字代码,而不必求助于 C 或 Fortran。为了避免性能问题,Julia 程序员努力编写类型稳定的代码。本文提供了类型稳定性的正式定义以及类型基础的更强属性,表明基础能够实现编译器优化,并证明编译器是正确的。我们还进行了语料库分析,以揭示这些与类型相关的属性在实践中的表现。
更新日期:2021-09-07
down
wechat
bug