Fight the Future

Java言語とJVM、そしてJavaエコシステム全般にまつわること

カンファレンスやイベントでの発表スライドをまとめました

以下のページに埋め込み形式でスライドを掲載しています。 登壇資料 - Fight the Future 埋め込み形式でまとめている意図は次のようなことです。 SlideShareのサイトで閲覧した際に頻繁に広告が出るのは好ましくないという方もおられるであろうため スライド…

取得した環境と異なる環境でperf.dataファイルを開く

$ perf report -i <perf.data>ファイル --symfs=<ライブラリファイルを配置したディレクトリ> ディレクトリにはライブラリのファイルを階層構造も同一にして配置する。GDBのset debug-file-directory <ディレクトリ>と同じ感じ。</perf.data>

perfコマンド実行時におけるJavaのシンボルマップファイル生成方法

JDK 16以降は以下でOKです。 jcmd <PID> Compiler.perfmap perf用ですのでこのコマンドはLinuxのみです。 これはAdd diagnostic command to write Linux perf map file で入りました。 JDK 8や11などのJDK 15以前だとjcmdにこのコマンドがありません。別途perf-ma</pid>…

OpenJDKをZeroを有効にしてビルドする

Zeroはインタプリタのみにするものです。macOS 14.3.1でビルドしました。 $ sh ./configure --with-jvm-variants=zero --enable-debug $ make images $ ~/jdk/build/macosx-aarch64-zero-fastdebug/jdk/bin/java -version openjdk version "23-internal" 202…

JVM Language Summit 2023 & OpenJDK Committers' Workshopに参加しました

JVM Language Summit (JVMLS) 2023とOpenJDK Committers' Workshopに参加しました。場所はUSのサンタクララにあるOracle社のキャンパスです。 JVM Language Summit — August 7–9, 2023 OpenJDK Committers’ Workshop JVMLSには2018と2019に参加しています。C…

JavaOne 2022に参加しました #javaone #j1jp

2022年10月18日から20日にかけて開催されたJavaOneに参加しました。17日にはJava Leaders Summitにも参加してきました。 開催場所がサンフランシスコからラスベガスへ JavaOneは2017年が最後の開催となり、2018年からOracle Code Oneにリブランドしました。 …

M1 Mac (Apple Silicon) 版OpenJDKがビルドできるようになりました

タイトルがすべてという感じもしますが、プルリクエストがマージされ、M1 Mac (Apple Silicon) 向けのOpenJDKをビルドできるようになりました。 github.com M1 Mac版OpenJDKは、aarch64-portというメインラインと別のリポジトリで途中まで進行していました。…

OpenJDKのgtestを実行する

openjdk.java.net OpenJDKにはjtregのテストとgtest(GoogleTest)のテストがあるのですが、gtestの方です。ドキュメントにあるmake test-only TEST=の形式ですぐに動かせなかったので、同僚に教えてもらった他の実行方法をメモとして残します。 セットアッ…

jhsdbでバージョンチェックを無効にする

jvm

このブログで以下のエントリを投稿していました。 www.sakatakoichi.com この中で、 サーバーで指定したJDKのバージョンと、WindowsでGUIを起動したJDKのバージョンが異なると、上記の警告が出ます。 という、リモート・デバッグ・サーバーとクライアントの…

JavaプロセスがダンプしたコアファイルをjhsdbとGDBで見る

jvm

手持ちのコアファイルがない場合は、yasuenagさんのリポジトリからすぐに作れます!! https://github.com/YaSuenag/garakuta/tree/master/NativeSEGV Linuxではあらかじめulimit -c unlimitedしてから実行してください。 デバッグ情報付きのOpenJDKビルドを…

WindowsでSubstrateVMをビルドする

7,8年ぶりにWindowsも使い始めました。ビルド環境として必要なのです。GraalVMのネイティブイメージ部分であるSubstrateVMをLinuxだけでなくWindowsでもビルドして確かめたいことがあり、WindowsのC++環境構築に習熟していないので悪戦苦闘しました! 基本的…

HotSpot VMのシンボル名に関わるコード

師匠から教えていただいた内容であり、私自身がいきなり気づいたわけではないのですが、OpenJDKのメーリングリストでも他の方からも教えていただいたので、自分の備忘録的にまとめます。 Javaのシンボル名に関するHotSpot VMのコードの話です。ここでのシン…

『みんなのJava』でGraalVMの入門ガイドの章を書きました #minjava

2020年3月13日に、『みんなのJava OpenJDKから始まる大変革期!』という書籍が出ます!私は、第5章で、GraalVMの入門ガイドとなる記事を書きました。 gihyo.jp GraalVMの章について この書籍は、現時点でのJavaの最新動向を、とくに今Javaでアプリケーション…

FOSDEM 2020 & Jfokus 2020に参加しました

fosdem.org www.jfokus.se FOSDEMはブリュッセル(ベルギー)、Jfokusはストックホルム(スウェーデン)です。Jfokusは、2年前2018年にも参加しました。 www.sakatakoichi.com この2つのカンファレンスは、(あえて)日程がつながるようになっており、Javaを…

コンピュータ歴史博物館に行ってきました

JVMLSの日本からの参加者で、マウンテンビューにある、コンピュータ歴史博物館に行ってきました。JVMLSの会場からは、車で15分ほどです。 Welcome | Computer History Museum 入館料は$17.50、約2,000円です。 館内に入ると、いきなり…! 我らがFather、Jame…