亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java8最快的垃圾搜集器是哪個

發布時間:2022-01-06 21:07:03 來源:億速云 閱讀:140 作者:iii 欄目:編程語言

這篇文章主要介紹“Java8最快的垃圾搜集器是哪個”,在日常操作中,相信很多人在Java8最快的垃圾搜集器是哪個問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Java8最快的垃圾搜集器是哪個”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

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)進行了比較。

Java8最快的垃圾搜集器是哪個

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

原始基準測試數據

Java8最快的垃圾搜集器是哪個

相對基準測試數據
Java8最快的垃圾搜集器是哪個

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。但是,請首先向我展示你實際項目的基準測試。

到此,關于“Java8最快的垃圾搜集器是哪個”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

靖安县| 图木舒克市| 五莲县| 双峰县| 丰顺县| 基隆市| 乐安县| 盐边县| 灵丘县| 米脂县| 石门县| 洞头县| 荣昌县| 图片| 桐柏县| 灵寿县| 友谊县| 潜江市| 芦山县| 湟中县| 榆中县| 商南县| 玉山县| 竹山县| 通许县| 临安市| 郑州市| 绍兴县| 武穴市| 永宁县| 乡宁县| 贵定县| 达拉特旗| 雷波县| 博白县| 新河县| 溆浦县| 靖宇县| 阿克苏市| 若羌县| 巴东县|