GraalVM 19.1.0 发布,高性能跨语言虚拟机

栏目: 软件资讯 · 发布时间: 5年前

内容简介:GraalVM 19.1.0 发布了。GraalVM 是高性能跨语言虚拟机,用于运行 JavaScript、Python 3、Ruby、R、基于 JVM 的语言,如 Java、Scala、Kotlin 和基于 LLVM 的语言,如 C 和 C++。 GraalVM 消除了编程语言之间的隔...

GraalVM 19.1.0 发布了。GraalVM 是高性能跨语言虚拟机,用于运行 JavaScript、 Python 3、 Ruby 、R、基于 JVM 的语言,如 Java 、Scala、Kotlin 和基于 LLVM 的语言,如 C 和 C++。

GraalVM 消除了编程语言之间的隔离,并支持共享运行时的互操作性。它可以独立运行,也可以在 OpenJDK、Node、Oracle 或者 MySQL 上运行。

GraalVM 19.1.0 发布,高性能跨语言虚拟机

此版本更新内容包括:

Java

  • 提高了 GraalVM 中 JIT 编译的速度。
  • 在构建编译器的 AOT(ahead-of-time)镜像时应用配置文件引导优化(PGO,profile-guided optimization)。

Native image

修复了一些 GitHub 上报告的问题。

JavaScript

  • 添加了一个实验性选项 js.locale,以设置区域设置敏感操作的默认语言环境。
  • 允许使用 sourceURL 指令在内部创建评估源,方法是在 URL 前加上 internal,如://# sourceURL = internal: myname.js。
  • 使用 ContextPolicy.SHARED 在线程之间启用代码共享。

LLVM interpreter

  • 在嵌入式上下文中调用 exit(...) 现在是一个可捕获的 PolyglotException。
  • 跳过不允许访问的源路径条目。

Ruby

此版本中的 GraalVM Ruby 实现主要进行了性能和兼容性改进,并带来了一些新特性,修复了多个 bug。rb_str_cat 现在更快,因为 C 字符串现在连接前不需要先被转换为 Ruby 字符串或检查其编码。

R

  • 字符串 -Inf、+NaN 和 -NaN 被正确解析为双精度数,包括忽略前导和尾随空格。
  • For 循环创建并初始化控制变量,即使没有迭代。
  • 更新了内置输出功能。
  • 对于外部可执行文件,is.function 返回 true。

Python

  • Python 标准库从 3.7.0 更新到 3.7.3 版本。
  • 改进抛出异常的性能。
  • 修复了原生镜像中核心源的缓存,其中包含用于预构建镜像和 libpolyglot 快速启动的预初始化上下文。
  • 实现对 pwd.getpwuid、os.exec、os.execv 和 os.execlmodules 的支持。

更新说明:

https://www.graalvm.org/docs/release-notes/#1910


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

互联网的误读

互联网的误读

詹姆斯•柯兰(James Curran)、娜塔莉•芬顿(Natalie Fenton)、德 斯•弗里德曼(Des Freedman) / 何道宽 / 中国人民大学出版社 / 2014-7-1 / 45.00

互联网的发展蔚为壮观。如今,全球的互联网用户达到20亿之众,约占世界人口的30%。这无疑是一个新的现象,对于当代各国的经济、政治和社会生活意义重大。有关互联网的大量大众读物和学术著作鼓吹其潜力将从根本上被重新认识,这在20世纪90年代中期一片唱好时表现尤甚,那时许多论者都对互联网敬畏三分,惊叹有加。虽然敬畏和惊叹可能已成过去,然而它背后的技术中心主义——相信技术决定结果——却阴魂不散,与之伴生的则......一起来看看 《互联网的误读》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

SHA 加密
SHA 加密

SHA 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换