BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Java 8 for Raspberry Pi开发者预览版

| 作者 Fabian Lange 关注 0 他的粉丝 ,译者 侯伯薇 关注 0 他的粉丝 发布于 2012年12月30日. 估计阅读时间: 5 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

Oracle上周发布了针对ARM处理器的Java 8开发者预览版。这个版本可以在JDK 8 (with JavaFX) for ARM预览版下载地址获得,它特别针对在Raspberry Pi设备上运行JavaFX做了剪裁。

尽管这还不是完全优化后的最终用户版本,但是它表现了Java 8当前在Oracle的商业ARM版本的状态。作为开发者预览版,它的许可禁止任何商业化使用,但是期望允许Raspberry Pi社区对其做出贡献。然而,Oracle当前没有计划把它们的ARM接口的任何部分开源,所以很让人怀疑的是,为什么开发者会为Oracle贡献测试时间和修复补丁。另一方面,这个预览版让开发者可以探索构建运行在Raspberry Pi和Java上的解决方案的选择。

想要安装这个版本,Raspberry Pi需要运行Raspbian Wheezy的最新版本,它会支持使用Raspberry Pi的浮点处理器。在下载并解压到所需的目标目录中后,程序就可以完整运行了。Oracle鼓励开发者试验运行JavaFX应用程序。想要做到这一点,需要将下面的属性作为命令行参数传递进来。

-Djavafx.platform=eglfb

这个版本的版本信息如下:

pi@raspberrypi ~ $ /opt/jdk1.8.0/bin/java -version
java version "1.8.0-ea"
Java(TM) SE Runtime Environment (build 1.8.0-ea-b36e)
Java HotSpot(TM) Client VM (build 25.0-b04, mixed mode)

正如这里所清晰声明的,包默认是“HotSpot客户端虚拟机”。强制使其成为“服务器”会导致以下错误:

pi@raspberrypi ~ $ /opt/jdk1.8.0/bin/java -server -version
Error occurred during initialization of VM
Server VM is only supported on ARMv7+ VFP 

开发者预览版中一个值得注意的缺陷是,Java只能使用Linux所检测到的第一个鼠标和键盘。在Raspberry Pi论坛中相应的帖子中已经得到Java架构师Daniel Blaukopf的确认,这个问题会在下一个版本中修复。

有些人已经对于Java在Raspberry Pi上的表现做了评测。一次简单的主要评测显示HotSpot要比本地代码快,所以我们使用Linpack Benchmark做了自己的测试,它特别是针对浮点运算的。显然,它显示出来Raspberry Pi的速度和一般的最终用户或者服务器的硬件没有什么可比性。

在i7 920上LinPack Java Benchmark得到的结果是:

Mflop/s: 639.949  Time: 0.13 secs (0.131 sec)  Norm Res: 5.68  Precision: 2.220446049250313E-16

而在Raspberry Pi上得到的是:

Mflop/s: 16.461  Time: 5.09 secs (5.093 sec)  Norm Res: 5.68  Precision: 2.220446049250313E-16

为了比较HotSpot和本地代码,以下是同样评测的C语言版本(像ELinux Pi Performance Wiki描述的那样编译)的结果:

    Reps Time(s) DGEFA   DGESL  OVERHEAD    KFLOPS
----------------------------------------------------
       1   0.81  97.53%   0.00%   2.47%  26687.764

但是Raspberry Pi的性能并不是它流行的主要原因。正如Holly Cummins在Devoxx 2012 的简短发言中演示的,她在帽子中运行了一台应用程序服务器,它的目标是在很小型的标准计算及硬件上运行范围广泛的应用程序。对于Java on Raspberry Pi非常有用的附件是Pi4J项目,它为访问GPIO针脚提供了Java程序库。

查看英文原文:Java 8 for Raspberry Pi Developer Preview

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT