成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

解密新一代 Java JIT 編譯器 Graal

wangdai / 2298人閱讀

摘要:缺陷舊代碼難以擴展和維護使用更多的內聯(lián)函數(shù),開發(fā)成本太大。具體解釋第二點缺陷啟動的時候會檢測運行在哪個處理器上,并且更具特定的處理器生成特定的內聯(lián)函數(shù)表,極大的運用了硬件的能力。更快的新編譯器功能原型設計。編譯器可以獨立于。

本文思路很清晰,分兩步走。第一步,老的即時編譯的缺陷導致新的編譯器孕育而生。第二步,具體講解Graal編譯器的特性。

老即時編譯 流程

先啟動解釋編譯,分析出解釋多次的代碼,使用c1編譯器進行編譯,再次分析c1編譯器編譯多次的代碼,使用c2編譯器進行編譯。

c2編譯器是最重要的一環(huán),因為c2編譯出高度優(yōu)化的機器碼。
缺陷

1.舊代碼難以擴展和維護
2.使用更多的JVM內聯(lián)函數(shù),開發(fā)成本太大。

具體解釋第二點缺陷

JVM啟動的時候會檢測運行在哪個處理器上,并且更具特定的處理器生成特定的內聯(lián)函數(shù)表,極大的運用了硬件的能力。這樣就導致對于特定的處理器需要特定的內聯(lián)表函數(shù),就需要更多的內聯(lián)函數(shù)。所以導致開發(fā)成本和維護成本大。

新即時編譯 目標

更好的編譯Java代碼,那么出發(fā)點就是JIT就是將字節(jié)碼轉換為機器碼,在Java中就是從byte[]轉到另外一個byte[],那么轉換代碼可不可以用java來寫。

優(yōu)勢

工程師開發(fā)新編譯器的進入門檻要低得多。

編譯器的內存安全性。

能夠利用成熟的 Java 工具進行編譯器開發(fā)。

更快的新編譯器功能原型設計。

編譯器可以獨立于 HotSpot。

編譯器能夠自己編譯自己,以生成更快的 JIT 編譯版本。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/73427.html

相關文章

  • JDK10 EA版特性速覽

    摘要:今天收到一封郵件組的郵件,是關于的,版將作為第一個的版。版特性包括挑了感興趣的看了下,包括以下通過使用并行來改進最壞情況下的延遲。雖然式設計成避免的,但有些情況下回收器會降級成。 今天收到一封郵件組的郵件,是關于JDK 10 First Release Candidate的, JDK10 b43版將作為第一個JDK10的RC版。 b43版特性包括: 286: Local-Variabl...

    Xufc 評論0 收藏0
  • Java 10的10個新特性,將徹底改變你寫代碼的方式!

    摘要:的新特性說了這么多,看都會有哪些特性來改變我們寫代碼的方式呢局部變量類型推斷局部變量類型推斷可以說是中最值得注意的特性,這是語言開發(fā)人員為了簡化應用程序的編寫而采取的又一步,如下圖所示。 showImg(https://segmentfault.com/img/remote/1460000015356980); Java 9才發(fā)布幾個月,很多玩意都沒整明白,現(xiàn)在Java 10又快要來了...

    ityouknow 評論0 收藏0
  • 局部性原理——各類優(yōu)化的基石

    摘要:基于局部性原理,計算機處理器在設計時做了各種優(yōu)化,比如現(xiàn)代的多級分支預測有良好局部性的程序比局部性差的程序運行得更快。目前計算機設計中,都是以塊頁為單位管理調度存儲,其實就是在利用空間局部性來優(yōu)化性能。   學過計算機底層原理、了解過很多架構設計或者是做過優(yōu)化的同學,應該很熟悉局部性原理。即便是非計算機行業(yè)的人,在做各種調優(yōu)、提效時也不得不考慮到局部性,只不過他們不常用局部性一詞。如果...

    MadPecker 評論0 收藏0
  • JVM JIT編譯能改變某些反射的執(zhí)行結果

    摘要:某個測試服務器試圖通過反射來修改變量的值,出現(xiàn)了時靈時不靈的現(xiàn)象。這個閾值隨時會變,只是測著玩的編譯是可以取消的,現(xiàn)在修改如下,在用反射設值后,再次執(zhí)行萬次直接取值現(xiàn)在的執(zhí)行結果又是了。結論不要修改變量,會出問題的關于編譯期優(yōu)化的更多知識 某個測試服務器試圖通過反射來修改static final變量的值,出現(xiàn)了時靈時不靈的現(xiàn)象。 開發(fā)環(huán)境無法重現(xiàn)。這是怎么回事呢? 先介紹背景知識 一般...

    lcodecorex 評論0 收藏0
  • 【天贏金創(chuàng)】PHP7與Swoole

    摘要:但在密集計算方面比等靜態(tài)編譯語言差幾十倍甚至上百倍。一使用棧內存在引擎和擴展中,經常要創(chuàng)建一個的變量,底層就是一個指針。代碼中創(chuàng)建的變量也進行了優(yōu)化,直接在棧內存上預分配。應用層與底層在錯誤拋出的方式全部統(tǒng)一為異常。 原文:http://rango.swoole.com/archives/440最近PHP官方終于發(fā)布了傳說中的PHP7,雖然只是alpha版。PHP7號稱是新一代的PHP...

    MingjunYang 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<