水曜日は遠足の日です。去年からはAT&Tパークになってますけど。ライブとかビールとかあります。
Machine Learning for Java Developers in 45 Minutes [CON2977]
機械学習とは何か、みたいな話をしていた。
まずCommons Mathで線形回帰。
http://commons.apache.org/proper/commons-math/
それからWekaでロジスティック回帰
https://www.cs.waikato.ac.nz/~ml/weka/index.html
あと最後にDeepNettsでニューラルネット。
http://www.deepnetts.com/product.html
これは裏番組のKafka+TensorFlow+H2O.aiのセッションのほうがよさそうだった。
Code Generation with Annotation Processors: State of the Art in Java 9 [CON3282]
生成されたコードにつける@Generatedアノテーションとか、RoundEnvironmentに追加されたgetElementsAnnotatedWithAnyメソッド、あと、クラス名表記のモジュール対応について。
Scale Up with Lock-Free Algorithms [CON1330]
ロックフリーなアルゴリズムについて。
Stackの実装を、Synchronizeを使ったものからAtomicReferenceを使うものにして、VarHandleを使って、最後にAtomicFUを使うという説明をしていました。
http://github.com/Kotlin/kotlinx.atomicfu
ベンチマークはJMHで。ロックフリーのほうがコア数が増えるにしたがったパフォーマンスが出せている、という話。
http://openjdk.java.net/projects/code-tools/jmh/
Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [CON3738]
事前ネイティブコンパイルの話です。
コンパイル結果を共有するよ、という話。OpenJ9と似てる。
AOTを行うコマンドラインツールjaotcの説明。
あと、なんでVM設定を同期する必要があるかという話。
圧縮Oop(オブジェクトポインタ)という仕組みがあって、ポインタアドレスを全部保持するのではなくて32ビットだけ保持する仕組みがあります。
http://www.oracle.com/technetwork/jp/articles/java/compressedoops-427542-ja.html
4GBだと下位32ビットだけ。32GBまでだと8byteパディングがあるので下位3ビットを無視すればOK、という話。こういうのがあるからVMオプションを同じにしておかないといけない、ということらしい。
Virtual Reality in Java: Is It Possible? [CON1653]
VRのセッション。
VRがどういうものか説明。
そして、jMonkeyEngine3の話を進めるのかと思いきや。
http://jmonkeyengine.org/
Android!JavaOneでJavaでどうこうというタイトルのセッションでAndroidの話するのすげーな、って思った。
あと、Rajawaliをちょっと紹介。
http://github.com/Rajawali/Rajawali
Amazon Alexa Skills Versus Google Home Actions: The Big Java VUI Face-off [CON3616]
Google HomeとAmazon Echoでいろいろ動かす話。たのしそうだった。