Monad 是一條與 EVM 兼容的區塊鏈,於 9 月 2 日 14:30 UTC 在主網啟動了 MonadTen 修訂版。MIP-8 升級改變了網路對讀取儲存的合約收費方式,以每 128 個連續插槽為一組取代逐插槽預熱。
Monad 的 mainnet block 101672712 在讀取同一頁的 slot 0 時耗用 8,100 gas,讀取 slot 1 時耗用 100 gas,而在下一頁的首個 slot 128 處又耗用 8,100 gas。
官方 MonadTen 發布記錄 將啟用時間設定為 Unix 時間戳 1788359400。在該時間戳之前,MonadNine 規則仍有效。
儲存佈局現在變更帳單
最終的 MIP-8 規範 將儲存頁面定義為 128 個 32 位元組的字,合計 4,096 位元組。在頁面上任何位置進行首次 SLOAD 的成本為 8,100 氣體。在該已預熱頁面內後續的讀取,於交易剩餘過程中每次成本為 100 氣體,但若呼叫框架回滾,則會被回滾。
根據 Monad 之前的排程,兩個先前未使用的插槽即使相鄰,每個也需耗費 8,100 氣體。在 新的 opcode 定價 下,若這兩個插槽落在同一頁內,則第一個耗費 8,100 氣體,第二個僅耗費 100 氣體。

常見的 Solidity 布局可自動繼承該折扣。順序的狀態變數、結構體欄位和陣列元素會佔用連續的槽位,因此重複讀取更有可能保留在已預熱的頁面中。
一個映射鍵通常會指向一個獨立且分散的頁面,但儲存在該鍵下的結構體內的欄位仍保持連續,並可共享頁面級別的折扣。
哈希或未對齊的儲存會保留 Monad 的現有冷基線。跨越頁面邊界的讀取仍每次耗費 8,100 氣體,而節省取決於交易觸及的插槽數量以及這些插槽是否聚集在同一個 128 插槽邊界內。
MIP-8 保留 EVM 執行語義,同時更改了用於構建存取清單、儲存證明或氣體估計的工具所使用的假設。EIP-2930 項目現在會熱化頁面,且證明格式必須表示頁面模型。該規範將硬編碼儲存操作碼氣體成本的合約識別為主要的相容性風險類別。
對於開發者來說,優勢在於,當資料儲存於相近位置時,一起讀取的成本更低。
文章 Monad 主網升級使資料儲存成本降低 98% 首先出現在 CryptoSlate。
