金曜日 7 29, 2011

組込み向けJava SE 7も同時リリース

7/28のJava SE 7リリースと時を同じくして、Java SE for Embedded 7もリリースされました!
Press release: Oracle Announces Availability of Java SE 7


5年ぶりのメジャーアップデートであるJava SE 7自体については、あちこちで語られているので他に譲るとしまして
組込み向けリリースでも大きな特徴である、

  • Java言語仕様の変更(JSR334: Project Coin)
  • 動的言語対応の強化(JSR292: InvokeDynamic)
  • Fork/Joinフレームワーク(JSR166y)
  • New I/O API (NIO.2)

が、もちろん対応されています!
現時点でのサポートプラットフォームとして、Linux ARMv5, v6, v7とLinux/x86向けのバイナリが提供されています。

ただし、フットプリントを半減(30MB程度)にするために、Java SE Embedded 6と同様にいくつかの制限を設けています

  • サーバ向けJIT(C2)非搭載
  • Garbage First GC (G1)非搭載
  • ARMv7向けのHeadfulリリースでOpenGL非サポート
  • コードキャッシュの予約サイズ(ReservedCodeCache)は32MB **将来リリースで改善予定

今後は、組込みデバイス向けのSEも、最新のJava SEと同期してリリースされていくので、
ARMなどのユーザにとっても使い易くなりますね ;-)


ところで、以前のエントリーでも案内したフリーで隔月のオンラインマガジンJava Magazine初号が発行されました!

Java SE 7はもちろん、ブラジルのBlogo TVでの組込みJava採用や、JSF 2.0の中でFlex, JavaFXを使う記事、Java MEでJSR211: CHAPI APIを扱うマニアックな記事、またScalaに特有のオペレータオーバーロードや末尾再帰最適化、Traits、パターンマッチなどのJavaに無い機能をJVMがどのように扱うか、など面白い記事が満載なので必見です☆


水曜日 7 20, 2011

Java SE Embedded v.s. Java ME Embedded

Java SE EmbeddedとJava ME Embedded (OJEC: Oracle Java ME Embedded Client)のベンチマークを比較しました。
過去のエントリーで、Java SE EmbeddedがJava SE 6互換でフットプリントを半分程度に削減したバイナリリリースであり、一方OJECはJava ME CDC1.1ベースに整理したバイナリリリースであるとポストしてきました。求められるRAM/ROMサイズもJava SE Embeddedは32~64MB/37~46MB以上に対して、OJECは8MB/5MB以上で、それぞれが別々のデバイスをターゲットにしている事も明らかです。

実はパフォーマンスの点では、両者には目立って大きな差は出てきません。Java EGBUチームでも、確認すべくBeagleBoard-xMとGuruPlugを使ってEmbedded CaffeinMark 3.0GrinderBenchでベンチマークテストを実施してみました。

スペックは以下の通り

Java SE Embedded 6u25
Oracle Java ME Embedded Client 1.0 

【GuruPlug】
  CPU: ARMv7 Cortex-A8 1GHz
  RAM: 512MB
  OS: Debian GNU/Linux sheevaplug-debian
    2.6.32-00007-g56678ec  

【BeagleBoard-xM】
  CPU: ARMv5 1.2GHz
  RAM: 512MB
  OS: Ubuntu 11.04 GNU/Linux omap 2.6.39-x1



結果は、それぞれ以下の通りになりました
Embedded CaffeinMark(上グラフ)のStringテストでは、String Cache Optimizationの効果により、OJECの方で非常に高いスコアが計測されています。その一方で、Floatテストについては、ARMv7用のSE EmbeddedのみがHard Float対応のため、BeagleBoard-xMの場合では高いスコアが出ています。
全体的な平均スコアを比較するとEmbedded CaffeinMarkでOJECが16~26%程度、GrinderBenchで12~15%程度高いスコアが出ている事が分かります。CDC素晴らしいですね:-)
GrinderBench(下グラフ)では、なぜかSE EmbeddedでもOJECでも、GuruPlugの方がBeagleBoard-xMよりも高いスコアが出ています。テストプログラムはコア数よりもクロック数が支配的な実装なのでしょうか・・・。別の機会に、もう少し踏み込んで考察してみようと思います!今回はこれまで。

木曜日 7 07, 2011

Java SE 7 & New Duke

7/28のJava SE 7リリースに向け、U.S.や日本でローンチイベントが開かれています。
US: Introducing Java 7 Webcast: Moving Java Forward
JP: Java SE 7 リリース記念 特別イベント

そんな中、Dukeが装いも新たに変身したのを知ってますか?
@javaをフォローするか、I<3Javaを「いいね!」すれば新しいDukeのスクリーンセーバーが手に入れられます!
Javaの新しいWeb Magazineにも、たくさんのJava7関連の情報が掲載される予定なので乞うご期待!

水曜日 6 08, 2011

SE Embeddedの30分トレーニングビデオ

Marvel社のプラグコンピュータや、GlobalScale社のSheevaPlugの上に
SE EmbeddedをインストールしてTomcatを動かすデモが公開されています。

最初のビデオは、6:56まではEmbedded Javaの導入やプラグコンピュータの説明です
それ以降で、SE Embeddedをダウンロードしたり、ランタイムが30数MB程度だという事を確認したりしてますね。

後半のビデオは、NetBeansで開発したGUIアプリケーションを、そのままプラグコンピュータへコピーして動かしたり
デバッグ実行してNetBeansのデバッガからリモート接続したり、JConsoleを接続してプロファイル情報を見たり
要するに泥臭い組み込み開発じゃなく、デスクトップJava開発と同じように組み込み開発できますよー、というビデオかな。

それにしてもプラグコンピュータって日本じゃ手に入らないんですかね?
Javaチームでも今頃注文したんですが、いつになったら届くことやら・・・:-(

月曜日 5 09, 2011

生まれ変わったJavaFX 2.0


[Read More]

金曜日 3 18, 2011

Java SE Embedded 6u21

Java_clr_hori.gif

駐車メーターからネットブックまで、同じJavaプラットフォームが使える事を知ってましたか?

 オラクルが2010/11にリリースしたJava SE Embedded 6u21を使うと、ARM、PowerPC、x86ベースの組込みデバイス上でも、デスクトップやサーバ向けのJava SE環境と完全に同等の機能が使えるようになります。Java SE Embeddedは、組込みデバイス向けにJava SEを最適化し、フットプリント最適化、Disk/ROM/Flashサイズ削減、起動時間短縮、電力消費削減を達成できるリリースです。このEditionでは、ディスプレイ、キーボード、マウスの無いヘッドレスデバイス向けのフットプリントを抑えたオプションが提供されています。また、JREからもヘッドレスに不要なAPI、オプションAPI、各種ツール類、キャラクタ変換、サーバー向けJITが取り除かれ、通常のJava SEに比べ1/2以下(30MB以下)のフットプリントを達成しています。

 本リリースでの大きな新機能はARMv7マルチコアサポートです。マルチコア機能によってARMベースの組込みシステム上でも、バックグラウンドのJITコンパイルやパラレルGCが実現できるようになりました。他にも次のような新機能がサポートされています。

  • Java SE 6互換
     豊富な機能とAPIセット、拡張機能やバグフィックスを含むJava SE 6u21と同期したリリース
  • マルチコアサポート
     ARM, PowerPC向けのマルチコアサポート追加 (x86は全バージョンからサポート)
  • プラットフォームサポート追加
     Power Architecture e500v2
  • パフォーマンス改善
     Java SE 6で搭載されたC1レジスタアロケータで、全てのプラットフォーム上のCaffeinMarkベンチマークで20%以上の性能向上し、Android 2.2 Froyoとの比較では2倍程度のベンチマーク性能(CaffeineMark 2.15x; kBench 2.5x; SciMark 1.9x)
【参考リンク】
Java SE Embedded @OTN
Multi-Core and More @David Therkelsen's Weblog
Java SE Embedded Refreshed @Jim Connor's Weblog
Java SE Embedded Performance Versus Android 2.2

About

日本オラクルのエンベデッドJavaチームから、最新情報をお送りしていきます。

Search

Archives
« 4月 2014
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today