Suche senden
Hochladen
JDK付属ツールにパッチを出しまくったワケ
•
2 gefällt mir
•
1,798 views
Yasumasa Suenaga
Folgen
JJUG CCC 2018 Fall講演資料 #jjug_ccc #ccc_c4
Weniger lesen
Mehr lesen
Technologie
Melden
Teilen
Melden
Teilen
1 von 60
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
Native Memory Tracking
Native Memory Tracking
Takahiro YAMADA
負荷テストを行う際に知っておきたいこと 初心者編
負荷テストを行う際に知っておきたいこと 初心者編
まべ☆てっく運営
Java でつくる低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧
Ryosuke Yamazaki
Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門
Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門
tamtam180
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Yuji Kubota
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTT DATA Technology & Innovation
Spring CloudとZipkinを利用した分散トレーシング
Spring CloudとZipkinを利用した分散トレーシング
Rakuten Group, Inc.
MySQLの全文検索に関するあれやこれや
MySQLの全文検索に関するあれやこれや
yoku0825
Empfohlen
Native Memory Tracking
Native Memory Tracking
Takahiro YAMADA
負荷テストを行う際に知っておきたいこと 初心者編
負荷テストを行う際に知っておきたいこと 初心者編
まべ☆てっく運営
Java でつくる低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧
Ryosuke Yamazaki
Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門
Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門
tamtam180
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Yuji Kubota
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTT DATA Technology & Innovation
Spring CloudとZipkinを利用した分散トレーシング
Spring CloudとZipkinを利用した分散トレーシング
Rakuten Group, Inc.
MySQLの全文検索に関するあれやこれや
MySQLの全文検索に関するあれやこれや
yoku0825
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Shin Ohno
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)
Chika SATO
Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1
Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1
Toshiaki Maki
HTTP/2で 速くなるとき ならないとき
HTTP/2で 速くなるとき ならないとき
Kazuho Oku
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Chihiro Ito
さばわのわ#2 AWS SDK for PHP で学ぶAthena
さばわのわ#2 AWS SDK for PHP で学ぶAthena
Takaki Sugitani
Fluentdで本番環境を再現
Fluentdで本番環境を再現
Hiroshi Toyama
Spring Day 2016 - Web API アクセス制御の最適解
Spring Day 2016 - Web API アクセス制御の最適解
都元ダイスケ Miyamoto
TypeScript製フレームワーク「Nest」のご紹介
TypeScript製フレームワーク「Nest」のご紹介
bitbank, Inc. Tokyo, Japan
Go言語で作る webアプリ@gocon 2013 spring
Go言語で作る webアプリ@gocon 2013 spring
Takuya Ueda
怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション
土岐 孝平
最近のストリーム処理事情振り返り
最近のストリーム処理事情振り返り
Sotaro Kimura
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
Google Cloud Platform - Japan
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
NTT DATA Technology & Innovation
微博cache设计谈
微博cache设计谈
Tim Y
HTTP/2 入門
HTTP/2 入門
Yahoo!デベロッパーネットワーク
Linuxカーネルを読んで改めて知るプロセスとスレッドの違い
Linuxカーネルを読んで改めて知るプロセスとスレッドの違い
Retrieva inc.
Metaspace
Metaspace
Yasumasa Suenaga
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
Takuya Ueda
1070: CUDA プログラミング入門
1070: CUDA プログラミング入門
NVIDIA Japan
CPUから見たG1GC
CPUから見たG1GC
Kenji Kazumura
Versatil Javaチューニング
Versatil Javaチューニング
Kenji Kazumura
Weitere ähnliche Inhalte
Was ist angesagt?
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Shin Ohno
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)
Chika SATO
Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1
Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1
Toshiaki Maki
HTTP/2で 速くなるとき ならないとき
HTTP/2で 速くなるとき ならないとき
Kazuho Oku
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Chihiro Ito
さばわのわ#2 AWS SDK for PHP で学ぶAthena
さばわのわ#2 AWS SDK for PHP で学ぶAthena
Takaki Sugitani
Fluentdで本番環境を再現
Fluentdで本番環境を再現
Hiroshi Toyama
Spring Day 2016 - Web API アクセス制御の最適解
Spring Day 2016 - Web API アクセス制御の最適解
都元ダイスケ Miyamoto
TypeScript製フレームワーク「Nest」のご紹介
TypeScript製フレームワーク「Nest」のご紹介
bitbank, Inc. Tokyo, Japan
Go言語で作る webアプリ@gocon 2013 spring
Go言語で作る webアプリ@gocon 2013 spring
Takuya Ueda
怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション
土岐 孝平
最近のストリーム処理事情振り返り
最近のストリーム処理事情振り返り
Sotaro Kimura
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
Google Cloud Platform - Japan
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
NTT DATA Technology & Innovation
微博cache设计谈
微博cache设计谈
Tim Y
HTTP/2 入門
HTTP/2 入門
Yahoo!デベロッパーネットワーク
Linuxカーネルを読んで改めて知るプロセスとスレッドの違い
Linuxカーネルを読んで改めて知るプロセスとスレッドの違い
Retrieva inc.
Metaspace
Metaspace
Yasumasa Suenaga
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
Takuya Ueda
1070: CUDA プログラミング入門
1070: CUDA プログラミング入門
NVIDIA Japan
Was ist angesagt?
(20)
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)
バックアップことはじめ JPUG第29回しくみ+アプリケーション分科会(2014-05-31)
Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1
Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1
HTTP/2で 速くなるとき ならないとき
HTTP/2で 速くなるとき ならないとき
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組み
さばわのわ#2 AWS SDK for PHP で学ぶAthena
さばわのわ#2 AWS SDK for PHP で学ぶAthena
Fluentdで本番環境を再現
Fluentdで本番環境を再現
Spring Day 2016 - Web API アクセス制御の最適解
Spring Day 2016 - Web API アクセス制御の最適解
TypeScript製フレームワーク「Nest」のご紹介
TypeScript製フレームワーク「Nest」のご紹介
Go言語で作る webアプリ@gocon 2013 spring
Go言語で作る webアプリ@gocon 2013 spring
怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション
最近のストリーム処理事情振り返り
最近のストリーム処理事情振り返り
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
微博cache设计谈
微博cache设计谈
HTTP/2 入門
HTTP/2 入門
Linuxカーネルを読んで改めて知るプロセスとスレッドの違い
Linuxカーネルを読んで改めて知るプロセスとスレッドの違い
Metaspace
Metaspace
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
1070: CUDA プログラミング入門
1070: CUDA プログラミング入門
Ähnlich wie JDK付属ツールにパッチを出しまくったワケ
CPUから見たG1GC
CPUから見たG1GC
Kenji Kazumura
Versatil Javaチューニング
Versatil Javaチューニング
Kenji Kazumura
20190625 OpenACC 講習会 第3部
20190625 OpenACC 講習会 第3部
NVIDIA Japan
TPC-DSから学ぶPostgreSQLの弱点と今後の展望
TPC-DSから学ぶPostgreSQLの弱点と今後の展望
Kohei KaiGai
Maatkit で MySQL チューニング
Maatkit で MySQL チューニング
Kensuke Nagae
20181211 - PGconf.ASIA - NVMESSD&GPU for BigData
20181211 - PGconf.ASIA - NVMESSD&GPU for BigData
Kohei KaiGai
GPGPU deいろんな問題解いてみた
GPGPU deいろんな問題解いてみた
Ryo Sakamoto
Architecting on Alibaba Cloud - Fundamentals - 2018
Architecting on Alibaba Cloud - Fundamentals - 2018
真吾 吉田
第六回渋谷Java Java8のJVM監視を考える
第六回渋谷Java Java8のJVM監視を考える
chonaso
位置情報を使ったサービス「スマポ」をPostgreSQLで作ってみた db tech showcase 2013 Tokyo
位置情報を使ったサービス「スマポ」をPostgreSQLで作ってみた db tech showcase 2013 Tokyo
Yoshiyuki Asaba
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
Nobuyuki Sasaki
A Benchmark Test on Presto, Spark Sql and Hive on Tez
A Benchmark Test on Presto, Spark Sql and Hive on Tez
Gw Liu
20200828_OSCKyoto_Online
20200828_OSCKyoto_Online
Kohei KaiGai
Oracle code one 2018 報告会概要
Oracle code one 2018 報告会概要
Chihiro Ito
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
Postgres Playground で pgbench を走らせよう!(第35回PostgreSQLアンカンファレンス@オンライン 発表資料)
Postgres Playground で pgbench を走らせよう!(第35回PostgreSQLアンカンファレンス@オンライン 発表資料)
NTT DATA Technology & Innovation
Zabbixでvmc statsの情報など監視
Zabbixでvmc statsの情報など監視
Shota Onishi
2012/8/26 サーバを引っ越す+ドメイン管理会社(レジストラ)を変える@【第四回】初心者向けホームページ勉強会
2012/8/26 サーバを引っ越す+ドメイン管理会社(レジストラ)を変える@【第四回】初心者向けホームページ勉強会
tama200x Kobayashi
PBL1-v1-008j.pptx
PBL1-v1-008j.pptx
NAIST
Java 9で進化する診断ツール
Java 9で進化する診断ツール
Yasumasa Suenaga
Ähnlich wie JDK付属ツールにパッチを出しまくったワケ
(20)
CPUから見たG1GC
CPUから見たG1GC
Versatil Javaチューニング
Versatil Javaチューニング
20190625 OpenACC 講習会 第3部
20190625 OpenACC 講習会 第3部
TPC-DSから学ぶPostgreSQLの弱点と今後の展望
TPC-DSから学ぶPostgreSQLの弱点と今後の展望
Maatkit で MySQL チューニング
Maatkit で MySQL チューニング
20181211 - PGconf.ASIA - NVMESSD&GPU for BigData
20181211 - PGconf.ASIA - NVMESSD&GPU for BigData
GPGPU deいろんな問題解いてみた
GPGPU deいろんな問題解いてみた
Architecting on Alibaba Cloud - Fundamentals - 2018
Architecting on Alibaba Cloud - Fundamentals - 2018
第六回渋谷Java Java8のJVM監視を考える
第六回渋谷Java Java8のJVM監視を考える
位置情報を使ったサービス「スマポ」をPostgreSQLで作ってみた db tech showcase 2013 Tokyo
位置情報を使ったサービス「スマポ」をPostgreSQLで作ってみた db tech showcase 2013 Tokyo
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
A Benchmark Test on Presto, Spark Sql and Hive on Tez
A Benchmark Test on Presto, Spark Sql and Hive on Tez
20200828_OSCKyoto_Online
20200828_OSCKyoto_Online
Oracle code one 2018 報告会概要
Oracle code one 2018 報告会概要
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
Memoizeの仕組み(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
Postgres Playground で pgbench を走らせよう!(第35回PostgreSQLアンカンファレンス@オンライン 発表資料)
Postgres Playground で pgbench を走らせよう!(第35回PostgreSQLアンカンファレンス@オンライン 発表資料)
Zabbixでvmc statsの情報など監視
Zabbixでvmc statsの情報など監視
2012/8/26 サーバを引っ越す+ドメイン管理会社(レジストラ)を変える@【第四回】初心者向けホームページ勉強会
2012/8/26 サーバを引っ越す+ドメイン管理会社(レジストラ)を変える@【第四回】初心者向けホームページ勉強会
PBL1-v1-008j.pptx
PBL1-v1-008j.pptx
Java 9で進化する診断ツール
Java 9で進化する診断ツール
Mehr von Yasumasa Suenaga
Panamaを先取り!? JVMCIでJITと遊ぶ
Panamaを先取り!? JVMCIでJITと遊ぶ
Yasumasa Suenaga
HotSpotコトハジメ
HotSpotコトハジメ
Yasumasa Suenaga
Heap statsfx analyzer
Heap statsfx analyzer
Yasumasa Suenaga
HeapStats(Java解析ツールバトル)
HeapStats(Java解析ツールバトル)
Yasumasa Suenaga
HeapStatsのデモ (Java The Night)
HeapStatsのデモ (Java The Night)
Yasumasa Suenaga
Serviceability Toolsの裏側
Serviceability Toolsの裏側
Yasumasa Suenaga
もしも… Javaでヘテロジニアスコアが使えたら…
もしも… Javaでヘテロジニアスコアが使えたら…
Yasumasa Suenaga
Mehr von Yasumasa Suenaga
(7)
Panamaを先取り!? JVMCIでJITと遊ぶ
Panamaを先取り!? JVMCIでJITと遊ぶ
HotSpotコトハジメ
HotSpotコトハジメ
Heap statsfx analyzer
Heap statsfx analyzer
HeapStats(Java解析ツールバトル)
HeapStats(Java解析ツールバトル)
HeapStatsのデモ (Java The Night)
HeapStatsのデモ (Java The Night)
Serviceability Toolsの裏側
Serviceability Toolsの裏側
もしも… Javaでヘテロジニアスコアが使えたら…
もしも… Javaでヘテロジニアスコアが使えたら…
Kürzlich hochgeladen
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
Kürzlich hochgeladen
(9)
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
JDK付属ツールにパッチを出しまくったワケ
1.
末永 恭正 @YaSuenag
2.
• • • • • http://icedtea.classpath.org/wiki/HeapStats/jp
3.
4.
5.
• •
6.
• •
7.
[Full GC (System.gc()) [PSYoungGen:
320K->0K(38400K)] [ParOldGen: 8K->258K(87552K)] 328K->258K(125952K), [Metaspace: 2485K->2485K(1056768K)], 0.0201510 secs] ※ログは見やすく改行しています System::gc? jcmdでGC.run? どっちだ!?
8.
[9.693s][info][gc] GC(0) Pause Full
(Diagnostic Command) 1M->0M(8M) 7.314ms ※ログは見やすく改行しています [9.693s][info][gc] GC(0) Pause Full (System.gc()) 1M->0M(8M) 7.314ms 一目瞭然! JDK-8068589: GCCause should distinguish jcmd GC.run from System.gc()
9.
• • JDK-8072693: [BACKOUT] GCCause
should distinguish jcmd GC.run from System.gc() ログ出力メッセージの変化を テストケースに反映するの忘れてた…
10.
• JDK-8072913: [REDO] GCCause
should distinguish jcmd GC.run from System.gc()
11.
• • http://openjdk.java.net/jeps/248
12.
• • S0 S1 E
O M CCS YGC YGCT FGC FGCT GCT 0.00 0.00 0.00 0.29 51.11 52.08 7 0.030 7 0.052 0.081 • ホントのFull GC • G1のSTWフェーズ(Remark / Cleanup) どっち!?
13.
http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2016-March/016774.html
14.
15.
16.
それだけでは終わらなかった…
17.
https://bugs.openjdk.java.net/browse/JDK-8153302 Backouted
18.
JDK-8153333: [REDO] STW
phases at Concurrent GC should count in PerfCounter ※2年がかり
19.
ネガティブな出来事 • • ポジティブな出来事 • • Submit Repo • •
JEP 296
20.
• https://hg.openjdk.java.net/jdk/submit/ • http://mail.openjdk.java.net/pipermail/jdk-dev/2018-March/000897.html “We do
no longer require an Oracle sponsor to push changes to HotSpot.”
21.
• • •
22.
https://www.oracle.com/technetwork/java/javase/11-relnote-issues-5012449.html#JDK-8153333
23.
• • コンカレントGCの • コンカレントGCの • •
JDK-8207756: ZGC: jstat should show CGC STW phases S0 S1 E O M CCS YGC YGCT FGC FGCT CGC CGCT GCT 0.00 0.00 0.00 48.87 96.28 87.33 28 0.204 1 0.110 6 0.014 0.327
24.
• • • https://www.slideshare.net/YaSuenag/java-9-62345544/16
25.
PerfCounterで GCのSTWを見分けたかった
26.
• • https://www.slideshare.net/YaSuenag/serviceability-tools/14
27.
• • • • ???
28.
29.
• • • • • https://github.com/YaSuenag/garakuta/tree/master/NativeStackOverflow
30.
https://www.slideshare.net/YaSuenag/java-9-62345544/55 ※少し加工しています ※Java Day
Tokyo 2016でお話しさせてもらいました
31.
$ jhsdb jsnap
32.
• • Java Day Tokyo
2016でも お話させてもらいました https://www.slideshare.net/YaSuenag/java-9-62345544/57
33.
• •
34.
hs_err GC回数とメモリ量 jsnap 詳細な挙動を保持 tickはfreqで割れば秒に!
35.
hs_errログのGCイベント jsnap 40回のGC(うち6回はFull GC)
43回のGC(32+6+5) • • hs_errログのGCイベントの場合(GC開発MLで教えてもらいました)
36.
コアイメージを もらうところから始まる!
37.
クラッシュした~ コアちょうだい それ、どこよ??
38.
39.
• • • • •
40.
Hackergarten @ JavaOne
41.
• • • • https://community.oracle.com/docs/DOC-1026550
42.
• • • http://mail.openjdk.java.net/pipermail/hotspot-dev/2014-October/015459.html “I'm in Hackergarten
@ JavaOne :-)”
43.
44.
• JDK-8059586: hs_err report
should treat redirected core pattern. •
45.
thisオブジェクト、何?
46.
Thread 77506: (state
= IN_NATIVE) - NativeSEGV.doSEGV() @bci=0 (Interpreted frame) - NativeCaller.callNative() @bci=0, line=26 (Interpreted frame) - NativeSEGV.main(java.lang.String[]) @bci=11, line=12 (Interpreted frame) このインスタンスの状態は?
47.
OOPアドレスが見える! JDK-8144965: Show oop
pointer in call frame at HSDB.
48.
O O P • • •
49.
• • 関連するオブジェクトの 状態を確認できる!
50.
• • • • https://github.com/YaSuenag/garakuta/tree/master/oop
51.
52.
53.
S A • • • http://hg.openjdk.java.net/zgc/zgc/rev/8609ea491452
54.
Class Unloading
55.
https://bugs.openjdk.java.net/browse/JDK-8214897
56.
https://bugs.openjdk.java.net/browse/JDK-8207843
57.
SAのクラスヒストグラム • • ZGCのクラスアンロード • • & 生 生 死
生 死 死 生 生 生 死 クラスがアンロードされていると オブジェクトサイズがわからない! とあるZPage内の オブジェクト 連続空間にしにくい http://cr.openjdk.java.net/~ysuenaga/JDK-8207843/webrev.00/ ※アンロードを考慮してない、拒否られたパッチ
58.
src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/oops/ObjectHeap.java • • • • • •
59.
• • • jcmdも応答しない完全ハング状態でも大丈夫! • クラッシュしても大丈夫!
Jetzt herunterladen