CPU 價格居高不下?且看 BM 有何妙招

EOS 網絡中 REX 被租空,BM 也直呼沒想到; CPU 價格居高不下? 且看 BM 有何妙招。

概括要點如下:

  • 抵押 EOS 獲取 CPU 的方式,可能會被移除,不過會設置過渡期
  • 通過租賃方式分配全部的 CPU
  • 想要獲得 CPU,無論是否自己持有 EOS,都需要從資源市場去租賃
  • 將抵押 EOS 所獲得的收入和租賃 CPU 所消耗的費用相互抵消
  • CPU 出租所獲得的收益,也可能部分的用於支付出塊節點的獎勵
  • BM 認為,通過這種方式,有助於穩定 CPU 價格,降低 CPU 租賃成本,提高 CPU 價格的確定性。

關於這份新提案,你有什麼看法呢?歡迎評論區留言,一起交流。

(為方便理解,部分小標題為譯者所加)

CPU 價格居高不下?且看 BM 有何妙招

EOS 網絡,是EOSIO的首個實現,也是最廣泛使用的公共區塊鏈。

最近在 EOS 網絡上,一直在使用其提供的技術功能的一部分,持續處理每秒800次的轉賬交易。對轉賬的需求如此之高,以至於 REX 的 EOS token 已經用完了(備註:REX 全稱為資源租賃平臺,是 EOSIO 內置的功能,用於租賃資源)。

本文探討了為什麼 REX 中用於出借的 EOS 會耗盡,並提出了一個解決方案,以確保 CPU 資源始終可以保持合理的市場價格。

EOS token 有什麼作用?

在 EOS 網絡中的設計是:EOS 通證(token) 可以抵押,用於獲取 EOS 網絡中的資源。

CPU 資源已經被市場定價過高,這意味著對大多數人來說,需要用能夠負擔得起的價格來租用EOS,才能獲得他們需要的 CPU 功能,這樣,可以將 EOS 的價格波動帶來的資本損失降到最小。

REX 旨在提供一個自動化的市場,讓擁有 EOS CPU 資源的人,可以出租;而讓希望不擁有EOS的情況下也能使用CPU時間的人能夠通過REX 獲得資源。

這其中的挑戰在於,需要確定 CPU 資源合適的出租價格,保持 EOS 所有者的資源價值:

如果價格過高, 那麼沒有人願意租, 因此網絡資源將難以充分利用;如果定價過低, 則可用的 EOS 供應量將會被過度使用, 使得無論出價如何,都無法獲取到 CPU 資源。

關於 REX

我們設計REX時使用了一種算法,當剩餘的可供租賃的 EOS 供應接近於零時,可以將價格提高到無窮大。

然而,最近 REX 陷入了一種情況,無論出價如何,都無法獲取到 EOS,因為,將 EOS 出租給他人時,可以隨意收回它們。鑑於預期的獲利需求,我們沒有預料到會有如此大量的 EOS 從 REX中贖回。

好消息是,REX正在按照設計的方式運行,並且它將兌現代碼中的承諾,允許在 30 天內將放入REX的 EOS 歸還給出租人。

當使用者要求贖回的 EOS 數量突然超過出借的數量時,定價算法會將價格推至無窮大。

為何會出現當前的情況?

這一情形之所以會發生,是因為在 REX 設計時所做的最初假設:

  1. 大量的賬戶的租賃需求將呈正態分佈
  2. 對 REX 的出租需求將呈正態分佈
  3. 租金的上漲,將推動新的需求,為REX提供更多的 EOS 以供出租
  4. 從 REX 的提款贖回需求,將被新增加的存入需求所抵消,EOS 出租的總供應量將相對穩定

現實情況卻是:

  1. 存入 REX 的 EOS 數量,符合帕累託分佈規律的二八法則
  2. 從 REX 中取回的 EOS 數量,符合帕累託分佈規律
  3. 從 REX 中租借 EOS 資源的需求,由帕累託分佈規律決定
  4. 在30天的租賃期結束前,就可以提前發起取回的操作,獲得租金收入

最初的假設與REX使用的實際情況不匹配,這造成的結果是:資源的租用價格不穩定,而沒有 EOS 可供租用。

CPU分配的全新設計

REX 的當前狀態,是 EOSIO 公共網絡中資源分配策略逐步演進的結果。

為了最大限度地發揮我們所設計解決方案的靈活性,我們喜歡通過這種方式思考:如果不受過去設計的限制,我們可以做些什麼不同的事情。

如果可以設想出更好的理想解決方案,那麼我們就可以從 EOS 網絡及其 REX 的當前狀態發展出一種新設計。

最大的抱怨是“CPU”太貴了,其次是在任何給定時間都無法預測CPU帶寬的大小。這些抱怨的來源可能與之前的嘗試有關,考慮到較高的資金成本和較低的利用率,他們試圖降低 CPU 的成本。

EOSIO 被設想為使用一種token(通證,或者說代幣, 如 EOS)來表示一個所有權模型,其中 1% 的EOS 允許您永遠免費使用 1% 的 CPU 資源。這種資源模式類似於買房子,你可以永遠住在裡面。

理想的算法

在理想的算法中,CPU 將沒有投機價值,您所保留的 CPU 時間將是固定的和可預測的。

此外,你可以不必佔用大量資本(以EOS token的形式), 並在無需面臨資本收益或損失的情況下使用 CPU。

最後,CPU 總會有可用的資源,價格可能不同,因此,CPU 的價格在時間上相對穩定。

要實現這種結果,所有的 CPU 資源都應該從系統合約中租賃, 隨著所租賃 CPU 的百分比的增加, 所付出的 EOS 租金價格也將呈指數增長。

支付了CPU時間租金的這部分EOS,將被分發到 EOS 通證(token)抵押池中(例如REX池)。

通過將抵押 EOS 所獲得的收入和租賃 CPU 所消耗的費用相互抵消,該模型可以將 CPU 分配給抵押了 EOS 的持有者。

假設你所抵押的 EOS 每個月獲利 1個 EOS,你可以在租賃市場花費 1 個 EOS 並獲得一些 CPU。CPU 數量將根據當前價格動態變化。顯然,一些 CPU 租賃的收入將根據抵押的百分比直接返回給你。

通過租賃分配全部的 CPU,不再有動態的通證供應影響到 CPU,也不需要擔心人們從 REX 中提取 EOS 會對 CPU 租賃市場及其定價算法造成衝擊。

此外,CPU 時間變得不可轉移,因為所有 CPU 時間都是通過從系統合約中租賃而不是通過抵押EOS來分配的。這消除了 CPU 定價的投機成分,並確保每個人都在相同的資源模型下進行操作。

可以用一個簡單的等式,來確定租用一定比例的 CPU 用 30天所需要支付的費用。

下面的圖表顯示了租用 1億 EOS * 2% 所需要付出租金。

根據這個等式,一旦網絡出租率達到大約10%,租金收入將超過 EOS 通脹率。EOSIO 治理的未來版本中,可能會選擇向出塊節點支付一定比例的租金收入,這將使他們利益一致,能夠盡力提升網絡效用價值。

原則上,社區可以使用任何常數指數來確定價格曲線。較高的指數將允許更大比例的網絡被廉價利用,但是當利用率接近100%時,價格將更快地提高。理想的指數應該平衡供給和需求,使得總租金收入減去區塊鏈運營成本之後的差額最大化。

CPU 價格居高不下?且看 BM 有何妙招

因為那些租用 CPU 的人符合帕累託分佈的二八法則,我們預計會有大量的大戶會同時租用和/或更新CPU。這可能會導致租金突然下降,然後上升。

如果沒有一個“訂單簿”來捕捉租金下降的趨勢,可能會給較大的租戶帶來不受歡迎的定價優勢。因此,我們建議租金下降的速度要比上升的速度慢。給定一個定價函數P(TotalUsage),新CPU租金的發行價格將是MAX(P(CurrentUsage), P(DailyAvgTotalUsage))。

(備註: 這裡的 MAX(P(CurrentUsage), P(DailyAvgTotalUsage)) 的算式表示的意思是分別使用定價函數,對當前使用量(CurrentUsage)跟每日平均用量(DailyAvgTotalUsage)這兩個作為參數來計算獲得定價,然後,比較這兩個價格,取其中的較大的值)。

如果價格過高,那麼當前的總使用量將下降,隨著時間的推移,DailyAvgTotalUsage(即每日平均用量)也將下降。如果當前的總使用量突然增加,那麼價格將迅速攀升,以防止 CPU 的供應被消耗。

我們可以考慮這個算法的一些其他版本,比如在 CurrentTotalUsage 大於 DailyAvgTotalUsage 的時候,將 DailyAvgTotalUsage 重置為 CurrentTotalUsage。

這將導致平均算法對需求增長做出快速反應,而在沒有新需求的情況下,仍會在24小時內逐步降低價格。

我們可以計算一下,如果用戶希望獲得 CPU 總量 1%,使用30天的時間,需要付出的成本可以通過如下方式計算:

MAX(P(CurrentTotalUsage+1%), P(DailyAvgTotalUsage+1%)) — MAX(P(CurrentTotalUsage),P(DailyAvgTotalUsage))

更簡單的表述方式是:

他們所需要支付的成本,等於在新的利用率水平上預計將收取的租金收入總額,減去當前利用率收取的租金收入總額的差值。

(備註:就是說,假設原先全網的 CPU 總量使用率為10%, 在新增了 1% 的CPU 總量使用情況下,全網的 CPU 總量使用率為 11%, 用戶需要支付的租金,等於在11%下的租金收入總額,與 在 10% 的租金收入總額的差值。通過這種方式,用戶支付租金,為提升了 CPU 的租用率部分而買單)

如何 REX 升級?

新設計之所以成為可能,是因為與REX不同,“CPU”不可能從租賃市場中撤出。

REX 算法必須平衡借貸雙方的需求。在這一過程中,貸款人最終要等30天的租約到期,或者潛在的租客最終沒有任何EOS可供出租,因為貸款人要求收回他們的EOS。

在當前的REX模型下,沒有一種簡單的解決方案能夠為租借雙方提供足夠的簡易性。

解決這一問題最直接的方法是通過隨時間“增加 CPU 供應”的方式,逐步將當前模型下分配的 CPU 百分比轉移到新模型。

這可以通過在系統合約中實現一個新的操作來實現,該操作允許通過租借方式分配 CPU,然後分配“ 虛擬 的抵押 CPU”,從而將總的CPU 抵押量(不管是擁有的還是租借的)稀釋為現有的 CPU。

這並沒有增加EOS的供應,相反,它只是調整了決定分配給每個帳戶的 CPU 比率的參數。

目前,系統合約將抵押 EOS 獲取的 CPU 的比例設定為 1:1,但是底層的 EOSIO 協議只知道相對的CPU權重(分配給你帳戶的權重,除以分配給所有帳戶的所有權重之和)。

如果新資源市場創造的“CPU”供給逐漸增長到 EOS 抵押方式所供給 CPU 的100倍,那麼 99% 的 CPU 可用時間,將由新的租賃市場有效控制。最終,當所有人都轉向 CPU/NET 租賃市場時,EOS 抵押以獲取 CPU和NET 的方式可能會被棄用和移除。

之後,新 CPU 租賃市場的收益就可以像姓名拍賣和 RAM 市場費用一樣,直接投向那些在 REX 中抵押 EOS 的人。這個解決方案可以使 CPU 立即可用,而且價格合理。隨著時間的推移,REX市場的利用率將下降,新的 CPU 市場將取而代之。

如果這一方案被社區採用,那些擁有 EOS 並抵押給自己賬號的用戶,將不得不轉向新的市場去租用 CPU,因為他們現有的持有 EOS 獲取資源的方式,將在整個 CPU 市場中佔有越來越少的份額。我建議在一年的時間內將 CPU 逐步引入新市場,讓人們有機會調整他們的 CPU 資源策略。

最終,抵押 EOS 獲取 CPU 的方式,和從 REX 租用 EOS 的功能,可能會因為新提議的 CPU 市場而被棄用。

這一方案不僅適用於 CPU,也可以用在 NET 資源中,後者有著同樣的動態機制。

終端用戶的可用性

許多應用程序和錢包已經採用了 CPU 的代付方式,為終端用戶提供了方便,使得他們無需考慮租用或抵押 EOS 獲取 CPU。

在有些平臺上,應用程序的團隊會從雲服務提供商那裡租用服務,通過訂閱、廣告或產品銷售等多種策略來涵蓋成本,這一提案也反應了類似的方式。

結論

本文所建議的 CPU 租賃市場,將有助於穩定 CPU 價格,降低 CPU 租賃成本,提高 CPU 使用中的成本的確定性。

CPU和 NET 資源所獲得的租金收益,仍然可以分配給 REX 的投資者。然而,最大的變化是給 EOS 作為共享 CPU 的籌碼,而 EOS 使用者將逐漸失去永遠 “擁有CPU”的能力。

另外,由於服務提供商能夠為其用戶代付 CPU,這將使基於 EOSIO 的網絡成為市場上最容易使用和最具成本效益的解決方案。


分享到:


相關文章: