將即時編譯引入EVM 即時編譯(JIT)常被認為是優化EVM的一個有趣想法。 但也面臨挑戰: - 很難使所有的確切行為(燃氣費用、錯誤處理)匹配。例如,即使代碼被編譯器簡化,原始的燃氣費用也必須保留。 - 編譯成本高,因此並非所有內容都應被編譯,並且不能在不影響延遲的情況下即時完成。 - 編譯後的工件比原始字節碼大得多。 - 要充分利用編譯器,需要創造性地解決問題的獨特方面。需要大量的研究、基準測試和反覆優化機器代碼生成。 @category_xyz團隊克服了這些問題,構建了一個強大的編譯器,使合約代碼的執行速度和效率超過現有的EVM實現。 Monad客戶端分析經常使用的合約(按累計消耗的燃氣量衡量),並緩存本地代碼,以便後續調用更高效地執行。 編譯是異步進行的;在編譯完成之前,虛擬機使用一個單獨的低延遲、高優化的解釋器運行代碼。 這項功能在週二的升級後已在Monad測試網上線! 查看文檔以獲取更多信息,最新消息。感謝@__inshorts和Category Labs的編譯器團隊出色的工作!
64.07K