背景概要
本次測試網中的計算任務由系統虛擬產生,每個 Round(600個區塊)固定產生 5 個計算任務。挖礦獎勵的獎勵量與白皮書一致,其中每個區塊被挖出的獎勵將有 50% 被執行隱私計算任務的 TEE worker 獲得,30% 的獎勵由所有在線的 TEE worker 獲得,20% 流入國庫通過鏈上議會進行民主治理;
Vendetta 測試網中,CPU 最低抵押額為 0 tPHA;礦工可以用 tPHA 為自己的 CPU 作額外抵押,任何人也可以用自己的 tPHA 為其他 TEE worker 抵押,但是結算時暫不支持自動分賬到提名人身上;
1 個 Round 內,1 個 TEE worker 最多分到 1 次計算任務;
測試網中計算任務分發的算法與參數是具有實驗性的,主網上線后會有所升級;獎勵的結算方式也可能會變化。
代碼閱讀:Github
隱私計算任務派單算法
核心邏輯
如同任何派單算法一樣,我們需要根據隱私計算任務特征指派給合適的 TEE worker 完成計算;
因此 Phala Network 系統會根據計算特性的核心需求,根據每個 TEE 設備特征進行打分,得出每個 TEE worker 的任務分;
根據所有在線 TEE worker 的任務分,通過加權隨機抽樣公式進行計算得出指派結果;
被指派的 TEE 完成隱私計算任務后,由系統自動結算和發放獎勵。為保障系統安全性,獎勵將凍結一段時間。(Vendetta 測試網發放的獎勵是Fire II,只用作獎池結算的統計,無法流轉)。
TEE worker 任務分
TEE worker 分到計算任務的概率主要取決于 TEE worker 的兩個特征:計算能力、安全性。
計算能力由 CPU 性能分來評定,未來將通過鏈上投票-無分叉升級方式實現迭代;
安全性與單 CPU 抵押額相關。
計算能力和安全性的提升對 TEE worker 獲得隱私計算任務的概率并不是線性增加的
根據TEE計算派單的核心指標,我們計算出每個 TEE 被指派到計算任務的任務分
計算任務分的公式如下:
= TEE 計算性能分
= TEE 的抵押量-基礎抵押量(本次 Vendetta 測試網中基礎抵押量為0)
不放回的加權隨機采樣(weighted random sampling without replacement)
我們使用不放回的(這意味著每個 TEE worker 在每個 Round 只能被抽取一次)加權隨機采樣,從所有在線 TEE worker 中隨機的抽取 5 個 TEE worker 來執行計算任務。
加權則意味著抽樣中會將每個 TEE worker 的任務分 w 作為基礎值,w 越高意味著被派到概率越高。
舉例說明不放回的加權隨機采樣:
假設有 A、B、C 三臺 TEE worker
其中 A 任務分為 3,B 任務分為 2,C 任務分為 1
現在從 3 臺 TEE 里抽一臺,那 A 被派到的概率是
如果抽兩臺,那 A 被派到的概率就是
真實環境下可能會從上千臺-上萬臺 TEE 里抽出 5 個,但邏輯是和上述的例子一致的
為了讓 TEE 礦工可以預測自己的被派概率和模擬抵押 tPHA 量與被派概率的關系,我們將提供 Dashboard(此處鏈接到計算器教程)的隱私計算概率計算器,礦工可以填入自己的機器性能分和預期抵押額模擬派單概率。
派單算法的數據模擬
額外抵押量與被派概率的相關性
算法是明確的,但僅僅基于算法,并不能算出單一礦機被派到的概率,因為被派概率是和當前在線的礦機數量以及他們的任務分相關的。我們模擬了額外抵押量對被派概率的提升
假定羅夏有一臺300分的TEE(圖中紅線),而其它 TEE 是 5000 臺 420 分的機器,并且都有額外 1000 tPHA 的抵押。如果從 5001(算上了羅夏的)臺礦機中抽5臺執行計算任務的話,那隨著羅夏增加額外抵押,被派到的概率呈現如下增長
從圖中紅線可以看出:
- 在沒有額外抵押量的情況下,從一千多臺機器中抽5個被派到的概率是很低的,大概是0.05%;
- 隨著抵押量的增加,最開始概率增加較快,之后緩慢;
- 但即使抵押量增加到 2 萬,中獎率也只是增加到0.17%。
機器性能與被派概率的相關性
上圖中淺藍、紅、黃、綠的機器分分別是400、300、200、100分,可以看出機器性能在被派概率上保持恒定的絕對優勢
多臺礦機該怎么分配額外抵押?
假設羅夏有兩臺一樣的礦機,那在總抵押量相同的情況下,怎樣分配抵押對整體收益影響不大。
下圖模擬的情況是羅夏有兩臺420分的TEE、并且都做了5000tPHA的抵押。其它的TEE是5000臺,1000tPHA抵押,都是420分。
現在羅夏有20000tPHA,下圖中橫坐標最左邊是全部把20000tPHA全給了其中一臺TEE,概率是0.28%;最右邊是把20000tPHA全給了另一臺,也是0.28%;中間是均分,概率是0.32%;可見,均分會比只分給其中一臺更多一點。