成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Java 8 最快的垃圾搜集器是什么?

開發 后端
OpenJDK 8 有多種 GC(Garbage Collector)算法,如 Parallel GC、CMS 和 G1。哪一個才是最快的呢?如果在 Java 9 中將 Java 8 默認的 GC 從 Parallel GC 改為 G1 (目前只是建議)將會怎么樣呢?讓我們對此進行基準測試。

OpenJDK 8 有多種 GC(Garbage Collector)算法,如 Parallel GC、CMS 和 G1。哪一個才是最快的呢?如果在 Java 9 中將 Java 8 默認的 GC 從 Parallel GC 改為 G1 (目前只是建議)將會怎么樣呢?讓我們對此進行基準測試。

基準測試方法

運行相同的代碼六次,每次使用不同的VM參數(-XX:+UseSerialGC, -XX:+UseParallelGC, -XX:+UseConcMarkSweepGC, -XX:ParallelCMSThreads=2, -XX:ParallelCMSThreads=4, -XX:+UseG1GC)。

每次運行大概花費55分鐘。

其它VM參數:-Xmx2048M -server

OpenJDK版本:1.8.0_51(當前***的版本)

軟件:Linux version 4.0.4-301.fc22.x86_64

硬件:Intel? Core? i7-4790 CPU @ 3.60GHz

每次運行13個?OptaPlanner?規劃問題方案。每次運行時間為5分鐘。前30秒用于JVM預熱,不計算在內。

解決規劃問題不涉及 IO (除了啟動時需要幾毫秒來加載輸入信息)。單個 CPU 使用完全飽和。通常會創建許多存活時間很短的對象,GC 之后就會回收這些對象。

衡量標準可以是計算每毫秒的得分,越高越好。計算一個擬議規劃解決方案是一個不可小覷的問題:涉及到大量的計算,包括每個實體與其他所有實體的沖突檢測。

為了能在本地重復運行這些基準測試,可以從源碼進行構建,然后運行主類 GeneralOptaPlannerBenchmarkApp。

基準測試結果

執行結果

為了方便查看,我已經對每種 GC 與 Java 8 默認 GC(Parallel GC)進行了比較。

Java 8最快的垃圾搜集器是什么?

結果非常清楚:默認(Parallel GC)是最快的

原始基準測試數據

Java 8最快的垃圾搜集器是什么?

相對基準測試數據
Java 8最快的垃圾搜集器是什么?

Java 9 默認應該為 G1 嗎?

有一種提議是在 OpenJDK9 的服務器端使用 G1 作為默認 GC。我***反應就是拒絕該提議:

G1 的平均值要慢17.60%

G1 在每個數據集用例下都比較慢。

在***數據集(Machine Reassignment B10)下,表現比其它數據集都要差,G1 慢了34.07%。

如果在開發機和服務器之間采用不同的默認 GC,則開發者基準測試的可信度就會下降。

另一方面,存在幾個需要注意的細節:

G1 關注是 GC 暫停的問題,而不是吞吐量。對于這些用例(計算量比較大),GC 暫停時長基本沒影響。

這是一個(基本是)單線程的基準測試。并行解決多個問題或采用多線程解決的基準測試,結果可能不同。

G1 推薦的堆內存至少是 6GB。而這次基準測試的堆內存是 2GB,即使在***數據集(Machine Reassignment B10)也只需要這么多內存。

海量計算只是 OpenJDK 的諸多功能中的一個:這是在社區廣泛爭論的一個問題。如果有其他方面(如網站服務)的證明,可能值得改變默認GC。但是,請首先向我展示你實際項目的基準測試。

結論

在 Java 8 中,對 OptaPlanner 用例來說,默認 GC(Parallel GC)通常情況是***的選擇。

責任編輯:王雪燕 來源: ImportNew
相關推薦

2019-08-12 11:14:00

JVM垃圾對象

2012-03-16 21:25:14

Windows Pho

2020-06-01 20:08:47

垃圾G1回收器

2021-08-10 07:00:02

Java8 G1垃圾回收器

2012-04-18 09:29:49

微軟Windows 8RT

2023-12-07 12:21:04

GCJVM垃圾

2022-03-21 11:33:11

JVM垃圾回收器垃圾回收算法

2011-07-21 14:54:26

java垃圾收集器

2022-07-25 10:15:29

垃圾收集器Java虛擬機

2013-04-07 10:12:16

超級計算機走鵑IBM

2024-04-02 08:02:11

Dockerk8s容器

2024-09-26 12:33:29

JSAPI循環

2009-09-01 11:18:26

郵件服務器

2009-09-01 10:38:13

NFS服務器

2009-09-16 16:32:30

WUSU服務器

2009-09-01 09:50:22

Samba服務器

2017-08-04 10:53:30

回收算法JVM垃圾回收器

2022-01-20 10:34:49

JVM垃圾回收算法

2025-02-21 10:46:16

JSForEachAPI

2020-02-07 10:55:37

抽象類接口秒懂
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品久久久久久久免费大片 | 九九亚洲| 青青草综合 | 丝袜美腿一区 | 免费观看色 | 超碰97av| 精品一区电影 | 青青草网站在线观看 | 欧美九九 | 精品成人佐山爱一区二区 | 激情一区二区三区 | 亚洲视频免费在线观看 | 午夜影院黄| 中文字幕在线观看视频网站 | 亚洲一区精品视频 | 亚洲成人国产精品 | 午夜精品视频 | 日本久久精品视频 | 日本一道本 | 久久精品久久久久久 | 91久久婷婷 | 黄网站在线播放 | 亚洲综合无码一区二区 | 亚洲一区综合 | 久久久高清 | 一区二区三区四区不卡视频 | 给我免费的视频在线观看 | 精品国产乱码 | 麻豆av片 | 亚洲国产一区视频 | 亚洲精品久久久久久宅男 | 天天干在线播放 | 97国产精品视频人人做人人爱 | 国产精品一区视频 | 久久国产精品一区二区 | av毛片| 日本一区二区不卡 | 成人免费网站 | 日韩国产一区二区三区 | 国产精品成人国产乱一区 | 男女爱爱网站 |