Oracle在3月21日的演讲中透露,未来Java编程语言的发展将强调对包括GPU和容器在内的现代计算平台的支持。此外,该公司的计划还要求确保Java为GPU和硬件加速提供强大的支持。 ,这对于支持机器学习和人工智能工作负载至关重要。
Oracle的Java SE(标准版)开发团队希望配置Java,以便JVM能够了解哪些工作负载应在GPU上运行,哪些工作负载应在CPU上运行。 GPU最初是为图像处理而构建的,但现在越来越多地用于数字运算应用程序,机器学习甚至数据库 。
[ 15个Java框架使开发人员受益匪浅 。 • 哪些工具支持Java的新模块化功能 。 | 通过InfoWorld的App Dev Report新闻通讯了解编程方面的热门话题。 ]
甲骨文表示,JVM还需要了解容器施加的资源约束。 面向容器的优化将包括性能增强以及更快的冷启动和热启动。 Java开发的其他机会和目标还包括:
- 使Java尽可能小以减少其占用空间并以最小的资源消耗和最低的成本运行工作负载。
- 大数据的可伸缩性,达到PB大小的堆。
- 规模可预测性。
- 数据密度高,并且在JVM中的数据呈现尽可能简洁。
- 本机访问,具有访问诸如人工智能和机器学习之类空间中的库的能力。
- 使数据进出JVM更加容易和高效。
- 开发人员的生产力和持续的语言增强。
Oracle提请注意许多创新的Java项目,包括Valhalla ,这是一个针对虚拟机和语言功能的孵化器项目。 巴拿马 ,用于访问非Java API; 和Loom ,以便更轻松地处理应用程序中的并发。
Oracle还指出,要逐步淘汰Java的终结处理功能,以便对垃圾回收器发现无法访问的对象执行事后清理。 终结处理使垃圾收集变得更加昂贵,而收集器必须执行额外的处理。 Oracle说,现在有更好的方法来处理任务,例如java.lang.ref子系统。
Oracle刚刚发布了Java Development Kit 12 ,该功能具有预览开关表达式以简化编码的功能。 在JDK 12中,G1垃圾收集器还具有可中止的混合收集功能。 JDK 13将于9月发布 。 尽管仍需要确定原始字符串文字和转换表达式的生产版本,但仍可以确定功能。