📜 [專欄新文章] 區塊鏈管線化的效能增進與瓶頸
✍️ Ping Chen
📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium
使用管線化(Pipeline)技術可以提升區塊鏈的處理效能,但也可能會產生相應的代價。
Photo by tian kuan on Unsplash
區塊鏈的擴容方案
說到區塊鏈的效能問題,目前討論度最高的應該是分片(sharding)技術,藉由將驗證者分成多組的方式,可以同時分別處理鏈上的交易需求,即使單分片效能不變,總交易量可以隨著分片/驗證者集的數量線性增加。
除了分片,另一個常用來提升程式效能的方案是將計算步驟拆解,以流水線的方式將複雜的運算攤平,降低系統的閒置時間,並大幅提升工作效率。為了達到管線化預期的目的,會需要先知道系統的瓶頸在哪。
區塊鏈的效能瓶頸
熟悉工作量證明設計哲學的人應該會知道,區塊鏈之所以需要挖礦,並不是為了驗證交易的正確性,而是要決定交易的先後順序,從而避免雙花和帳本分裂的發生。可以說,區塊鏈使用低效率的單線程設計,並付給礦工高額的成本,都只為了一件事,就是對交易的全局排序產生共識。
在這樣的基礎之上,區塊鏈在一段時間內可以處理的交易數量是有限的,這之中包含許多方面的限制,包括 CPU 效能、硬碟空間、網路速度等。其中,關於 TPS(每秒交易數) 提升和對硬體的要求大致上是線性增加的,但在設計共識演算法時,通訊複雜度常是平方甚至三次方的關係。
以現在的目標 TPS 來說,處理交易和生成一個合法的區塊並不困難,只是因為區塊鏈的特性,新區塊需要透過洪水法的方式擴散到全網路,每個節點在收到更新請求的時候都要先執行/驗證過區塊內的交易,等於整個廣播的延時會是「驗證區塊時間×經過的 hop 數量」這麼多。似乎網路越分散、節點越多,我們反而會需要降低計算量,以免讓共識不穩定。
管線化的共識機制
使用權益證明取代工作量證明算是行業發展的趨勢,除了環保或安全這些比較顯然的好處之外,權益證明對產生共識的穩定性也很有幫助。首先,權益證明在同一時間參與共識的節點數是已知的,比較容易控制數量級的邊界;其次,權益證明的出塊時間相較工作量證明固定很多,可以降低計算資源不足或閒置的機率。
相較於工作量證明是單一節點出塊,其餘節點驗證,權益證明的出塊本身就需要很多節點共同參與,瓶頸很像是從驗證轉移到通訊上。
以 PBFT 為例,每次產新區塊都需要經過 pre-prepare, prepare, commit 三個階段,你要對同意驗證的區塊簽名,還要對「你有收到某人的簽名」這件事簽名,再對「你有收到 A 說他有收到 B 的簽名」這件事簽名,過程中會有很多簽名飛來飛去,最後才能把一個區塊敲定。
為了降低每兩個區塊間都需要三輪簽名造成的延遲,後來的共識演算法包括 HotStuff 和 Casper FFG 採用了管線化的區塊驗證過程。也就是對區塊 T 的 pre-prepare 同時是對 T-1 的 prepare 和對 T-2 的 commit。再加上簽名聚合技術,出塊的開銷在複雜度等級和係數等級都降低許多。
然而,要保持管線化的區塊生產順利,需要驗證者集合固定不變,且網路通訊狀況良好。如果會經常更動驗證者集合或變換出塊的領導者,前後區塊間的相依性會是個大問題,也就是 T 的驗證者集合取決於 T-1 裡有沒有會導致刪除或新增驗證者的交易,T-1 的合法性又相依於 T-2,以此類推。
當激烈的分叉出現的時候,出塊跟共識的流水線式耦合就從優雅變成災難了。為了避免這種災難,更新的共識演算法會限制驗證者變更的時機,有些叫 epoch 有些叫 checkpoint,每隔一段時間會把前面的區塊徹底敲定,才統一讓驗證者加入或退出。到這些檢查點的時候,出塊的作業流程就會退化成原本的三階段驗證,但在大部分時候還是有加速的效果。
管線化的狀態更新
另一個可以用管線化加速的是區塊鏈的狀態更新。如前所述,現在公鏈的瓶頸在於提高 TPS 會讓區塊廣播變慢,進而導致共識不穩定,這點在區塊時間短的以太坊上尤其明顯。可是如果單看執行一個區塊內的交易所花的時間的話,實際上是遠遠低於區塊間隔的。
只有在收到新區塊的時候,節點才會執行狀態轉移函數,並根據執行結果是否合法來決定要不要把區塊資訊再廣播出去。不過其實只要給定了交易集合,新的狀態 s’ = STF(s, tx) 應該是確定性的。
於是我們有了一個大膽的想法:何不乾脆將交易執行結果移出共識外呢?反正只要大家有對這個區塊要打包哪些交易有共識,計算的結果完全可以當作業留給大家自己算吧。如果真的不放心,我們也可以晚點再一起對個答案,也就是把這個區塊執行後的新狀態根包在下個區塊頭裡面。
這就是對狀態更新的管線化,在區塊 T 中敲定交易順序但暫不執行,區塊 T+1 的時候才更新狀態(以及下一批交易)。這麼做的好處十分顯而易見,就是將原本最緊繃的狀態計算時間攤平了,從原本毫秒必爭的廣播期移出來,變成只要在下個塊出來之前算完就好,有好幾秒的時間可以慢慢來。新區塊在廣播的每個 hop 之間只要驗證交易格式合法(簽名正確,有足夠的錢付手續費)就可以放行了,甚至有些更激進的方案連驗簽名都省略了,如果真的有不合法交易混進去就在下個區塊處罰礦工/提案者便是。
把負擔最重的交易執行移出共識,光用想的就覺得效能要飛天,那代價呢?代價是區塊的使用程度會變得不穩定。因為我們省略了執行,所以對於一筆交易實際用掉多少 gas 是未知的。本來礦工會完整的執行所有交易,並盡可能的塞滿區塊空間,然而在沒有執行的情況下,只能以使用者設定的 gas limit 當作它的用量,能打包的交易會比實際的上限少。
緊接著,下一個問題是退費困難。如果我們仍然將沒用完的手續費退還給使用者,惡意的攻擊者可以透過發送 gas limit 超大,實際用量很小的交易,以接近零的成本「霸佔」區塊空間。所以像已故區塊鏈 DEXON 就直接取消 gas refund,杜絕濫用的可能。但顯然這在使用者體驗和區塊空間效率上都是次優的。
而最近推出的 smartBCH 嘗試擬了一套複雜的退款規則:交易執行後剩餘的 gas 如果小於 gas limit 的一半(代表不是故意的)就退款;如果剩餘量介於 50%-75% 可以退一半;超過 75% 推斷為惡意,不退款。乍看是個合理的方案,仔細一想會發現製造的問題似乎比解決的還多。無論如何,沒用掉的空間終究是浪費了,而根據殘氣比例決定是否退款也不會是個好政策,對於有條件判斷的程式,可能要實際執行才知道走哪條路,gas limit 一定是以高的情況去設定,萬一進到 gas 用量少的分支,反而會噴更多錢,怎麼想都不太合理。
安全考量,退費大概是沒希望了。不過呢,最近以太坊剛上線的 EIP1559 似乎給了一點方向,如果區塊的使用程度能以某種回授控制的方式調節,即使偶爾挖出比較空的區塊似乎也無傷大雅,也許能研究看怎麼把兩者融合吧。
管線化方案的發展性
考慮到以太坊已經堅定地選擇了分片的路線,比較激進的單鏈高 TPS 管線化改造方案應該不太有機會出線,不過管線化畢竟是種歷史悠久的軟體最佳化技巧,還是很有機會被使用在其他地方的,也許是 VDF 之於信標鏈,也許是 rollup 的狀態轉換證明,可以坐等開發者們表演。
倒是那些比較中心化的 EVM fork/sidechain,尤其是專門只 for DeFi 的鏈,管線化加速可以在不破壞交易原子性的前提下擴容,確實是有一些比分片優秀的地方可以說嘴,值得研究研究,但這就要看那些機房鏈們有沒有上進心,願不願意在分叉之餘也投資發展自己的新技術了。
給我錢
ping.eth
區塊鏈管線化的效能增進與瓶頸 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.
👏 歡迎轉載分享鼓掌
擴散係數計算 在 台灣物聯網實驗室 IOT Labs Facebook 的最佳解答
智能技術中的數據脫敏很重要
2020年05月21日04:38 光明日報
目前,隨著大數據的海量爆發、算法的深入改進與硬件技術的持續發展,以深度學習為代表的人工智能技術迎來了新一輪繁榮。智能機器創作、無人駕駛汽車以及智慧法院已經初步成為現實。我國提出“要建立人工智能法律法規、倫理規範和政策體系”。目前,技術界和法學界對人工智能技術的主體性和可規制性進行了激烈的爭論,筆者認為,現階段的人工智能技術及其應用顯然並不具備自己的思想,其一切行動都是按照人類預設的規則來完成。現階段的人工智能技術及其應用既不同於具有生命的自然人,也區別於具有獨立意志並作為自然人集合體的法人。
從社會文化的角度出發,人的內涵包含了生命、認知、個性、情感、倫理、社交等一系列要素,這些要素共同組成了一個個鮮活的生命。反觀人工智能,它既不可能產生生命,也不具有自然人群體中千人千面的個體差異,更缺乏人類所具有的道德、良知、情感、倫理、宗教和習俗。無論是人工智能無生命的生成機理,還是無道德情感的機器特徵,都說明人工智能不具有人的屬性。這些特點在現階段的人工智能典型應用中體現得尤其明顯。
2016年,谷歌公司的新一代超級電腦“阿爾法狗”又在圍棋領域擊敗了人類優秀棋手李世石。“阿爾法狗”的深度學習算法已經迥乎不同於“深藍”所採用的α-β剪枝算法。但無論採用的是哪種算法,人工智能超級棋手仍然是按照預先編制的程序運行的一種智能機器。從某個意義上說,打敗人類棋手的並不是台前的超級電腦,而是幕後為這些智能機器開發運行軟件的程序員。
時下很熱門的無人駕駛汽車,各汽車廠商在宣傳中往往以人工智能作為主打的賣點。無人駕駛汽車似乎已經擁有了類人智能,既可以像人類一樣快速分析周圍複雜的路況,又可以安全可靠地駕駛汽車。然而,無人駕駛汽車的實際工作原理卻沒有那麼高大上。其技術路徑通常是在汽車上內置高性能計算機系統,同時在車身四周和道路沿線安裝感應探頭,車載計算機系統通過感應探頭髮送和收集反饋的信號來計算車輛與周圍障礙物的距離,以此控制車輛的方向與速度。相比而言,傳統的人機交互模式較為單一,例如早期的鍵盤鼠標和後來陸續出現的語音、圖像、視頻採集等技術。無人駕駛汽車在交互手段有所創新,但L0至L5各層次的無人駕駛汽車所體現的智能均遠未達到自我判斷、自我學習的程度。可以肯定地說,無人駕駛汽車現在並不具備真正的人類智能,而只是人類設計製造出的一種智能機器。
機器寫作最近也非常吸引眼球。以體育賽事新聞為例,各種體育項目基本都有比較固定的報導模式,使用人工智能技術抓取現有數據和信息進行整理和分析,並套入設計好的報導模板中,該類新聞報導便像流水線作業般輕鬆完成。由此可見,新聞“創作”機器人仍然是在人類提前編好的表達模板基礎上,對採集來的數據信息進行篩选和使用。這類創作仍然依靠人類預設規則和預設模板去完成,充其量是在數據收集和使用的自動化程度上有所突破,但仍未達到人類自我創作、自主完成的智慧高度。
以上足見,現階段的人工智能儘管具備了相當程度的高效率、高質量分析操作能力,甚至這種能力在很多方面已經遠遠地超越了人類,但人工智能對人類智能的模擬還遠沒有觸及人類智慧的本質特徵,現階段的人工智能技術還未從本質上具備人類的屬性。基於此,可以把當下階段稱為准人工智能時代。准人工智能時代的技術特徵可以濃縮為三條:一是具有強大的存儲運算能力,二是具有創新的交互方式,三是必須按照人類程序員預設的規則運行。而真正的人工智能必然區別於以上三個特徵,並體現出一個根本性的新特徵:自主學習並獨立運行。
儘管現階段還處於准人工智能時代,人工智能尚不能被賦予法律主體資格,但由人工智能技術所引發的一系列問題仍然需要法律加以響應和規制。目前較為急迫的事項主要集中在三個方面:一是智能數據的產權定性,二是智能技術的使用規則,三是人工智能技術研發的規範保障。
人工智能的技術與應用很大程度上提升了數據的價值,但數據的非法獲取、非法買賣以及非法洩露等問題也尤為突出,已經嚴重地影響到了每一個社會成員的數據安全。數據使用首先要經過脫敏化處理,即對數據進行去隱私化處理實現對敏感信息的保護,這樣既能夠有效利用數據又能保證數據使用的安全性;針對未進行脫敏處理的數據,數據與其原始來源的數據主體之間是精準的一一對應關係,數據主體當然享有全部產權,數據控制者即使可以使用也應受到嚴格的限制。對於已進行脫敏處理的數據,已經無法一一對應於其原始來源的數據主體,此時數據控制者因其對數據處理所作出的貢獻而享有全部產權,數據主體則不再享有產權。此外,還應明確數據使用者的保密義務與保密責任,要求各個商家在使用數據過程中對數據採取必要的保密措施,避免數據被擴散及洩露。
作為當今世界科技新驅動的核心力量,人工智能技術及其層出不窮的各類新應用正在深刻影響著人類社會的發展格局。處於准人工智能時代的智能技術只不過是人類創造的一種智能工具,在現有法律體系下無法擁有主體資格。在面對新興技術時固然需要未雨綢繆,但此時關注的重點應落腳在規範技術使用規則,保障技術研發的安全可控上,從法律、道德、倫理等方面對人工智能的各類應用場景進行規制,構建對社會有益的人工智能產業格局。
附圖: 日前,智能列車乘客服務系統亮相北京。新華社發
資料來源:https://tech.sina.com.cn/roll/2020-05-21/doc-iirczymk2711936.shtml?cre=tianyi&mod=pcpager_fintoutiao&loc=4&r=9&rfunc=86&tj=none&tr=9
擴散係數計算 在 台灣物聯網實驗室 IOT Labs Facebook 的最佳貼文
智能技術中的數據脫敏很重要
2020年05月21日04:38 光明日報
目前,隨著大數據的海量爆發、算法的深入改進與硬件技術的持續發展,以深度學習為代表的人工智能技術迎來了新一輪繁榮。智能機器創作、無人駕駛汽車以及智慧法院已經初步成為現實。我國提出“要建立人工智能法律法規、倫理規範和政策體系”。目前,技術界和法學界對人工智能技術的主體性和可規制性進行了激烈的爭論,筆者認為,現階段的人工智能技術及其應用顯然並不具備自己的思想,其一切行動都是按照人類預設的規則來完成。現階段的人工智能技術及其應用既不同於具有生命的自然人,也區別於具有獨立意志並作為自然人集合體的法人。
從社會文化的角度出發,人的內涵包含了生命、認知、個性、情感、倫理、社交等一系列要素,這些要素共同組成了一個個鮮活的生命。反觀人工智能,它既不可能產生生命,也不具有自然人群體中千人千面的個體差異,更缺乏人類所具有的道德、良知、情感、倫理、宗教和習俗。無論是人工智能無生命的生成機理,還是無道德情感的機器特徵,都說明人工智能不具有人的屬性。這些特點在現階段的人工智能典型應用中體現得尤其明顯。
2016年,谷歌公司的新一代超級電腦“阿爾法狗”又在圍棋領域擊敗了人類優秀棋手李世石。“阿爾法狗”的深度學習算法已經迥乎不同於“深藍”所採用的α-β剪枝算法。但無論採用的是哪種算法,人工智能超級棋手仍然是按照預先編制的程序運行的一種智能機器。從某個意義上說,打敗人類棋手的並不是台前的超級電腦,而是幕後為這些智能機器開發運行軟件的程序員。
時下很熱門的無人駕駛汽車,各汽車廠商在宣傳中往往以人工智能作為主打的賣點。無人駕駛汽車似乎已經擁有了類人智能,既可以像人類一樣快速分析周圍複雜的路況,又可以安全可靠地駕駛汽車。然而,無人駕駛汽車的實際工作原理卻沒有那麼高大上。其技術路徑通常是在汽車上內置高性能計算機系統,同時在車身四周和道路沿線安裝感應探頭,車載計算機系統通過感應探頭髮送和收集反饋的信號來計算車輛與周圍障礙物的距離,以此控制車輛的方向與速度。相比而言,傳統的人機交互模式較為單一,例如早期的鍵盤鼠標和後來陸續出現的語音、圖像、視頻採集等技術。無人駕駛汽車在交互手段有所創新,但L0至L5各層次的無人駕駛汽車所體現的智能均遠未達到自我判斷、自我學習的程度。可以肯定地說,無人駕駛汽車現在並不具備真正的人類智能,而只是人類設計製造出的一種智能機器。
機器寫作最近也非常吸引眼球。以體育賽事新聞為例,各種體育項目基本都有比較固定的報導模式,使用人工智能技術抓取現有數據和信息進行整理和分析,並套入設計好的報導模板中,該類新聞報導便像流水線作業般輕鬆完成。由此可見,新聞“創作”機器人仍然是在人類提前編好的表達模板基礎上,對採集來的數據信息進行篩选和使用。這類創作仍然依靠人類預設規則和預設模板去完成,充其量是在數據收集和使用的自動化程度上有所突破,但仍未達到人類自我創作、自主完成的智慧高度。
以上足見,現階段的人工智能儘管具備了相當程度的高效率、高質量分析操作能力,甚至這種能力在很多方面已經遠遠地超越了人類,但人工智能對人類智能的模擬還遠沒有觸及人類智慧的本質特徵,現階段的人工智能技術還未從本質上具備人類的屬性。基於此,可以把當下階段稱為准人工智能時代。准人工智能時代的技術特徵可以濃縮為三條:一是具有強大的存儲運算能力,二是具有創新的交互方式,三是必須按照人類程序員預設的規則運行。而真正的人工智能必然區別於以上三個特徵,並體現出一個根本性的新特徵:自主學習並獨立運行。
儘管現階段還處於准人工智能時代,人工智能尚不能被賦予法律主體資格,但由人工智能技術所引發的一系列問題仍然需要法律加以響應和規制。目前較為急迫的事項主要集中在三個方面:一是智能數據的產權定性,二是智能技術的使用規則,三是人工智能技術研發的規範保障。
人工智能的技術與應用很大程度上提升了數據的價值,但數據的非法獲取、非法買賣以及非法洩露等問題也尤為突出,已經嚴重地影響到了每一個社會成員的數據安全。數據使用首先要經過脫敏化處理,即對數據進行去隱私化處理實現對敏感信息的保護,這樣既能夠有效利用數據又能保證數據使用的安全性;針對未進行脫敏處理的數據,數據與其原始來源的數據主體之間是精準的一一對應關係,數據主體當然享有全部產權,數據控制者即使可以使用也應受到嚴格的限制。對於已進行脫敏處理的數據,已經無法一一對應於其原始來源的數據主體,此時數據控制者因其對數據處理所作出的貢獻而享有全部產權,數據主體則不再享有產權。此外,還應明確數據使用者的保密義務與保密責任,要求各個商家在使用數據過程中對數據採取必要的保密措施,避免數據被擴散及洩露。
作為當今世界科技新驅動的核心力量,人工智能技術及其層出不窮的各類新應用正在深刻影響著人類社會的發展格局。處於准人工智能時代的智能技術只不過是人類創造的一種智能工具,在現有法律體系下無法擁有主體資格。在面對新興技術時固然需要未雨綢繆,但此時關注的重點應落腳在規範技術使用規則,保障技術研發的安全可控上,從法律、道德、倫理等方面對人工智能的各類應用場景進行規制,構建對社會有益的人工智能產業格局。
附圖: 日前,智能列車乘客服務系統亮相北京。新華社發
資料來源:https://tech.sina.com.cn/…/2020-…/doc-iirczymk2711936.shtml…
擴散係數計算 在 醫化三E1組實驗一以電化學法分析赤血鹽氧化還原反應並計算 ... 的推薦與評價
醫化三E1組實驗一以電化學法分析赤血鹽氧化還原反應並 計算 其 擴散係數 之實驗. 化學實驗五. 化學實驗五. 2 subscribers. Subscribe. ... <看更多>
擴散係數計算 在 扩散模式的分类以及扩散系数的计算 - |Jerkwin 的推薦與評價
使用MD计算粒子的扩散系数时, 一般都是基于粒子进行布朗运动, 遵循简单的扩散模型. 实际上, 根据外界限制条件的不同, 粒子的扩散有多种模式, 不同扩散 ... ... <看更多>