[戻る]
Java読書会BOF「Java 11 and 12 - New Features」を読む会 第3回¶
日時 | 2019年8月3日 10:00 - 17:00 |
場所 | てくのかわさき 第4研修室 |
出席者(敬称略) | 大部、伊藤、藪下、岩室、吉本、平山、根本、遠藤、 高橋(智)、高橋(徹)(書記) |
- 本日は、8章 ZGCから読書開始です。
ZGC¶
The motivation¶
- "eve-decreasing"? ever-decreasingの誤植か?
- root scanningって?
- main、staticのトップからライブオブジェクトを探すことでは
- どんどん新しいGCが出てくるね
- ヒープサイズが年々大きくなっている
- 物理シミュレーションでは512GBメモリでも不足
- ヒープサイズが年々大きくなっている
Getting started with ZGC¶
- ここではJDKのソースからビルドしているけど、ビルドしないと使えないの?
- OpenJDKのバイナリに含まれているはず(Linux 64限定)
ZGC phases¶
- week-roots は、weak-rootsの誤植
Colored pointers¶
- Object Arress が42bitということは4TBまで?
- JDK 13で、最大16TBまでに拡張されている。Object Addressが44bitに拡 張されている由。Java実行時の-Mxオプションで指定したヒープサイズで 切り替える。
Summary¶
ZGC もっと知りたいね
OpenJDKのZGCのWikiページに セッションスライド/動画のリンクがあるの で、それを見るとよいかと。
Flight Recorder and Mission Control¶
Technical requirements¶
書籍に記載のURLからは現在 Mission Control のバイナリは取得できなかっ た。バイナリは、OpenJDKディストリビュータの一部などから入手可能であ る。
Azul Systems社(Zulu JDK)
Bell Software社(Liberica JDK)
Shipilev氏によるビルド
Oracle JDK 8にはMission Control(jmc)が含まれている。しかし JDK 11 で生成したファイルを読み込むことはできなった。
The motivation behind JFR¶
Features¶
Modules¶
Getting started with JFR¶
本文中ではHelloWorldRecording.jfr ファイルとあるがコマンドラインでは hello.jfrを指定している。誤植
JMCの画面はSWTのように見えるが?
そう、Eclipse Platformで作られている
JVisualVMは、Netbeans Application Platformだった(かな)
JMCは、実行して生成されたファイルを開く方法以外に、実行中のプロセス に接続してリアルタイムに実行する方法はないか?
- JMX経由でリモート接続する方法はある
Exploring further¶
- コード中、10_00_000 は、1_000_000 だよね(値は同じだがアンダースコア の位置の違い)
Miscellaneous Improvements in JDK 11¶
What is nest-based access?¶
Improving AArch64 intrinsics¶
- Intel CPUには三角関数の命令はないの?
- 昔は8087という浮動小数点演算コプロセッサというのがあった。このコプ ロセッサのx87命令は現在ではCPUに内蔵されている。ただし、x87命令を 使うより、AVX命令等を使いソフトウェアで計算した方が高速らしい。
Removing the Java EE and CORBA modules¶
Java SEのCORBAはインタフェースと実装が両方載っていたが、サードパーティ CORBA製品使うときは実装が邪魔だった。
C++とJavaとでネットワーク接続するにはよかったのだが。
→ JSONとHTTPでは? C++でJSONはちょっと大変
→ ProtocolBuffer 一択でない? 1:1通信だけではないので