fbpx
维基百科

動態編譯

動態編譯是某些程式語言在執行時用來增進效能的方法。儘管這技術源於Self[來源請求],但使用此技術最為人所知的是Java。此技術可以做到一些只在執行時才能完成的最佳化。使用動態編譯的執行環境一開始執行速度較慢,之後,完成大部分的編譯和再編譯後,會執行得比非動態編譯程式快很多。因為初始化時的效能延遲,動態編譯不適用於一些情況。在許多實作中,一些可以在編譯時期做的最佳化被延到執行時期才編譯,導致不必要的效能降低。即時編譯是一種動態編譯的形式。

一個非常近似的技術是遞增式編譯。遞增式編譯器用於POP-2、POP-11、一些Lisp的版本,如Maclisp和最少一種版本的ML語言(Poplog ML)。這需要程式語言的編譯器成為執行環境的一部分作為要件以實作。如此便得以在任何時候從終端、從檔案、或從執行中程式所建造資料結構中讀取源碼。然後,轉成機器碼區塊或函數(有可能取代之前同名的函數),之後可立即被程式使用。因為執行中對互動開發和測試的速度的要求,編譯後的機器碼所做的最佳化程度不如標準「批次編譯器」。然而,遞增式編譯過的程式跑起來通常比同一個程式的一般解譯版本還快。遞增式編譯因而能夠同時提供編譯和解譯語言優點。 為了增加可移植性,遞增式編譯通常採兩步驟。第一個步驟會編譯到中間、與平台獨立的語言,然後再到機器碼。在這個例子中,移植只須改變「後端」編譯器。不同於動態編譯,遞增式編譯在程式執行後不會做更進一步的最佳化。

參見

  • 全美達處理器動態將x86碼轉成VLIW碼。
  • 動態再編譯英语dynamic recompilation

外部連結

  • Architecture Emulation through Dynamic Compilation (页面存档备份,存于互联网档案馆
  • SCIRun (页面存档备份,存于互联网档案馆
  • Article "" by David B. Scofield and Eric Bergman-Terrell
  • Article "High-performance XML: Dynamic XPath expressions compilation (页面存档备份,存于互联网档案馆)" by Daniel Cazzulino
  • Article "A Survey of Adaptive Optimization in Virtual Machines (页面存档备份,存于互联网档案馆)" by Matthew R. Arnold, Stephen Fink, David P. Grove, Michael Hind, and Peter F. Sweeney

動態編譯, 是某些程式語言在執行時用來增進效能的方法, 儘管這技術源於self, 來源請求, 但使用此技術最為人所知的是java, 此技術可以做到一些只在執行時才能完成的最佳化, 使用的執行環境一開始執行速度較慢, 之後, 完成大部分的編譯和再編譯後, 會執行得比非程式快很多, 因為初始化時的效能延遲, 不適用於一些情況, 在許多實作中, 一些可以在編譯時期做的最佳化被延到執行時期才編譯, 導致不必要的效能降低, 即時編譯是一種的形式, 一個非常近似的技術是遞增式編譯, 遞增式編譯器用於pop, 一些lisp的版本. 動態編譯是某些程式語言在執行時用來增進效能的方法 儘管這技術源於Self 來源請求 但使用此技術最為人所知的是Java 此技術可以做到一些只在執行時才能完成的最佳化 使用動態編譯的執行環境一開始執行速度較慢 之後 完成大部分的編譯和再編譯後 會執行得比非動態編譯程式快很多 因為初始化時的效能延遲 動態編譯不適用於一些情況 在許多實作中 一些可以在編譯時期做的最佳化被延到執行時期才編譯 導致不必要的效能降低 即時編譯是一種動態編譯的形式 一個非常近似的技術是遞增式編譯 遞增式編譯器用於POP 2 POP 11 一些Lisp的版本 如Maclisp和最少一種版本的ML語言 Poplog ML 這需要程式語言的編譯器成為執行環境的一部分作為要件以實作 如此便得以在任何時候從終端 從檔案 或從執行中程式所建造資料結構中讀取源碼 然後 轉成機器碼區塊或函數 有可能取代之前同名的函數 之後可立即被程式使用 因為執行中對互動開發和測試的速度的要求 編譯後的機器碼所做的最佳化程度不如標準 批次編譯器 然而 遞增式編譯過的程式跑起來通常比同一個程式的一般解譯版本還快 遞增式編譯因而能夠同時提供編譯和解譯語言優點 為了增加可移植性 遞增式編譯通常採兩步驟 第一個步驟會編譯到中間 與平台獨立的語言 然後再到機器碼 在這個例子中 移植只須改變 後端 編譯器 不同於動態編譯 遞增式編譯在程式執行後不會做更進一步的最佳化 參見 编辑全美達處理器動態將x86碼轉成VLIW碼 動態再編譯 英语 dynamic recompilation 外部連結 编辑The UW Dynamic Compilation Project Architecture Emulation through Dynamic Compilation 页面存档备份 存于互联网档案馆 SCIRun 页面存档备份 存于互联网档案馆 Article Dynamic Compilation Reflection amp Customizable Apps by David B Scofield and Eric Bergman Terrell Article High performance XML Dynamic XPath expressions compilation 页面存档备份 存于互联网档案馆 by Daniel Cazzulino Article A Survey of Adaptive Optimization in Virtual Machines 页面存档备份 存于互联网档案馆 by Matthew R Arnold Stephen Fink David P Grove Michael Hind and Peter F Sweeney 取自 https zh wikipedia org w index php title 動態編譯 amp oldid 70632825, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。