挖礦顯示無法寫入dag
1. 什麼是DAG
參考 Explaining Directed Acylic Graph (DAG), The Real Blockchain 3.0
Bitcoin視為blockchain 1.0, Ethereum視為2.0, 那麼3.0是什麼? DAG可能會是.
DAG, 即Direct Acyclic Graph, 有向無環圖. 它的特點是節點有先後次序, 可以有分叉, 但還不會有環. DAG常用語數據處理, 事務規劃, 最優路徑查找, 數據壓縮
bitcoin之所以效率低是因為它的POW機制. 整個網路只有一個主鏈, 其上的新塊只能有一個, 無法同時創建多個新塊. 10分鍾左右以內的所有交易記錄都被記錄到一個塊中. Ethereum也是類似, 大概15-20秒產生一個新塊.
NXT 是第一個想到用DAG替代blockchain單鏈表結構的組織.
有了DAG, 就可以同一時間創建多個塊.
使用DAG的想法來自於側鏈(side-chain). 不同類型的交易在不同的鏈上同時進行.
IoT Chain (ITC), IOTA , 和 Byteball 是沒有block概念的項目.
如果每個block只有一個transaction, 那這個transaction就不用等待被打包, 跳過計算hash的過程(即挖礦), 直接上鏈了.
Bitcoin使用UTXO(Unspent Transaction output)模型.
DAG網路中, 降低網路寬度是比較重要的一個課題.
由於只有transaction, 沒有打包的過程, DAG比基於PoW或PoS的區塊鏈更快.
DAG網路里, 沒有礦工. 交易的驗證直接在交易時進行. 對於用戶來說這意味著交易可以瞬間完成.
DAG可以有效降低交易費.
IoT Chain (ITC) 所基於的DAG的TPS達到10,000.
在以前的文章中,我們分別了解了比特幣挖礦和以太坊挖礦的區別。本文重點介紹以太坊挖礦及礦機部分。
以太坊是一個開源的有智能合約功能的公共區塊鏈平台,通過其專用加密貨幣ETH提供去中心化的以太虛擬機來處理點對點合約。目前ETH的挖礦主要是通過顯卡礦機,所謂顯卡礦機,其實就是類似家用台式機,只不過每台機器裡面有6-10張顯卡,並且沒有顯示器(如圖)。
圖:顯卡礦機
之所以以太坊沒有發展出類似於BTC一樣的ASIC礦機,主要是由於ETH的特殊挖礦機制決定的。
在ETH挖礦過程中,會產生一個DAG文件,該文件需要一直被調用,因此必須有專門的存儲空間放置。這個對於存儲空間的硬性需求會導致即使生產出來了ASIC晶元,也並不能大幅度降低單位算力的成本。簡單來說,就是性價比很差。
以太坊的DAG大小自2016年6月份引入Dagger-Hashimoto 演算法時的1GB開始,以每年約520MB的速度增大到了現在的 3.7G,預計2020年底以太坊的DAG大小將增加至4G。屆時,顯存小於4G的顯卡都將被陸續淘汰。
還需要介紹一點的是,由於顯卡礦機的體積通常是比特幣礦機的2-4倍,而消耗的電力卻只有比特幣礦機的1/2甚至更低,這就導致一般人不願意修建專門的顯卡礦機礦場(因為礦場主要賺取的是電費差價,同樣面積的場地,可以放置的顯卡數量少,消耗的電量更少)。即使有少量的顯卡礦場,收取的電費成本通常也比比特幣礦機礦場的高。
3. 以太坊gpu挖礦程序是怎樣的
GPU挖掘
硬體
演算法是內存難解的,為了使DAG適合內存,每個GPU需要1-2GB內存,如果你得到錯誤提示:Error GPU mining. GPU memory fragmentation? 說明你沒有足夠的內存。GPU挖礦軟體是基於OpenCL實現的,AMD GPU會比同一水準的NVIDIA GPU更快。ASIC和FPGA相對低效因而被阻攔。要給晶元集成平台獲取openCL,嘗試:
AMD SDK openCL
NVIDIA CUDA openCL
Ubuntu Linux設置
對於這個快速指南,你會需要Ubuntu 14.04或15.04以及fglrx圖像驅動器。你也可以使用NVidia驅動器和其他平台,但是你必須要找到自己的方式來獲得有效的OpenCL安裝,比如Genoil的ethminer分叉。
如果你在用15.04,到"軟體與更新〉額外的驅動器"設置為"從fglrx為AMD圖形加速器使用視頻驅動器"。
如果你在用14.04,到"軟體與更新〉額外的驅動器"設置為"從fglrx為AMD圖形加速器使用視頻驅動器"。很遺憾,對於一些人來說,這種方法可能不管用,因為Ubuntu 14.04.02中有個已知的程序錯誤會阻止你轉換到GPU挖礦所必須的專屬圖形驅動器。
所以,如果你遇到這個程序錯誤,先到"軟體與更新〉更新"選擇"預發行的可靠更新提議"。然後,回到"軟體與更新〉額外的驅動器"設置為"從fglrx為AMD圖形加速器使用視頻驅動器"。重啟之後,值得檢查一下現在確實正確安裝了驅動器(例如通過再到"額外驅動器")。
不管做什麼,如果你在用14.04.02,一旦安裝之後,就不要改變驅動器或者驅動器配置。例如,aticonfig –initial的使用(尤其是-f, –force選項)會"破壞"你的設置。如果你偶然改變了配置,會需要卸載驅動器,重啟,再次安裝驅動器並重啟。
4. hd7990顯卡3G挖礦軟體報錯怎麼解決
挖礦一般都需要比較高端,性能比較強的顯卡,挖礦是比較消耗顯卡的性能的。
建議重新更換或者顯卡驅動版本看下是否一樣,如果還是一樣的話重新安裝下系統,建議使用win10最新版本的。
5. 以太坊多節點私有鏈部署
假設兩台電腦A和B
要求:
1、兩台電腦要在一個網路中,能ping通
2、兩個節點使用相同的創世區塊文件
3、禁用ipc;同時使用參數--nodiscover
4、networkid要相同,埠號可以不同
1.4 搭建私有鏈
1.4.1 創建目錄和genesis.json文件
創建私有鏈根目錄./testnet
創建數據存儲目錄./testnet/data0
創建創世區塊配置文件./testnet/genesis.json
1.4.2 初始化操作
cd ./eth_test
geth --datadir data0 init genesis.json
1.4.3 啟動私有節點
1.4.4 創建賬號
personal.newAccount()
1.4.5 查看賬號
eth.accounts
1.4.6 查看賬號余額
eth.getBalance(eth.accounts[0])
1.4.7 啟動&停止挖礦
啟動挖礦:
miner.start(1)
其中 start 的參數表示挖礦使用的線程數。第一次啟動挖礦會先生成挖礦所需的 DAG 文件,這個過程有點慢,等進度達到 100% 後,就會開始挖礦,此時屏幕會被挖礦信息刷屏。
停止挖礦,在 console 中輸入:
miner.stop()
挖到一個區塊會獎勵5個以太幣,挖礦所得的獎勵會進入礦工的賬戶,這個賬戶叫做 coinbase,默認情況下 coinbase 是本地賬戶中的第一個賬戶,可以通過 miner.setEtherbase() 將其他賬戶設置成 coinbase。
1.4.8 轉賬
目前,賬戶 0 已經挖到了 3 個塊的獎勵,賬戶 1 的余額還是0:
我們要從賬戶 0 向賬戶 1 轉賬,所以要先解鎖賬戶 0,才能發起交易:
發送交易,賬戶 0 -> 賬戶 1:
需要輸入密碼 123456
此時如果沒有挖礦,用 txpool.status 命令可以看到本地交易池中有一個待確認的交易,可以使用 eth.getBlock("pending", true).transactions 查看當前待確認交易。
使用 miner.start() 命令開始挖礦:
miner.start(1);admin.sleepBlocks(1);miner.stop();
新區塊挖出後,挖礦結束,查看賬戶 1 的余額,已經收到了賬戶 0 的以太幣:
web3.fromWei(eth.getBalance(eth.accounts[1]),'ether')
用同樣的genesis.json初始化操作
cd ./eth_test
geth --datadir data1 init genesis.json
啟動私有節點一,修改 rpcport 和port
可以通過 admin.addPeer() 方法連接到其他節點,兩個節點要要指定相同的 chainID。
假設有兩個節點:節點一和節點二,chainID 都是 1024,通過下面的步驟就可以從節點二連接到節點一。
首先要知道節點一的 enode 信息,在節點一的 JavaScript console 中執行下面的命令查看 enode 信息:
admin.nodeInfo.enode
" enode://@[::]:30303 "
然後在節點二的 JavaScript console 中執行 admin.addPeer(),就可以連接到節點一:
addPeer() 的參數就是節點一的 enode 信息,注意要把 enode 中的 [::] 替換成節點一的 IP 地址。連接成功後,節點一就會開始同步節點二的區塊,同步完成後,任意一個節點開始挖礦,另一個節點會自動同步區塊,向任意一個節點發送交易,另一個節點也會收到該筆交易。
通過 admin.peers 可以查看連接到的其他節點信息,通過 net.peerCount 可以查看已連接到的節點數量。
除了上面的方法,也可以在啟動節點的時候指定 --bootnodes 選項連接到其他節點。 bootnode 是一個輕量級的引導節點,方便聯盟鏈的搭建 下一節講 通過 bootnode 自動找到節點
參考: https://cloud.tencent.com/developer/article/1332424
6. 什麼是DAG區塊鏈技術
DAG全稱是「有向無環圖」,沒有區塊概念,不是把所有數據打包成區塊,再用區塊鏈接區塊,而是每個用戶都可以提交一個數據單元,這個數據單元里可以有很多東西,比如交易、消息等等。數據單元間通過引用關系鏈接起來,從而形成具有半序關系的DAG(有向無環圖)。DAG的特點是把數據單元的寫入操作非同步化,大量的錢包客戶端可以自主非同步地把交易數據寫入DAG,從而可以支持極大的並發量和極高的速度。同時,使用DAG技術的TrustNote還支持聲明式智能合約,聲明式的智能合約要表達的意思是可以直接按照用戶想要的結果去寫、去描述,以很簡單的語言,讓大家都能看懂的語言去描述他要乾的事情。
截止到2017年年底,「高流量應用」越來越多,除了主流電商平台外,還有直播平台、P2P理財、今日頭條、陌陌等嶄露頭角,如果「高流量應用」與DAG區塊鏈技術結合,將會給行業帶來哪些變革呢?除區塊鏈自身的特點去中心化、分布式賬本、不可篡改之外,DAG區塊鏈技術不但可以支持高並發,結合雙層共識機制,使用工作量證明共識演算法,還能夠防止「雙花」問題。
那麼,DAG如何支持高並發的呢?第一,數據不像比特幣和以太坊一樣強同步,而是弱同步,允許節點在同一時刻數據不一樣,數據可以有一些微小的差別。第二,可以通過數據單元之間的引用來完成交易的確認,就是後面發生的單元去引用前面的單元,這樣不需要我們把數據傳給礦工,整個過程都是由自己去完成的,這個過程很快。DAG是解決高並發比較優美的方法,比起之前的閃電網路,還有其他一些方面,DAG有其先天優勢。
再來看看DAG是如何防止「雙花」?在有向圖里如果能選出一個MainChain,這個時候會發現所有圖裡面的節點都可以用一種方法來給它做排序,把這個序號連接起來在一排,這張圖將會變成跟區塊鏈一樣的序列結構,就是排完序的節點,而且每個節點是一個交易,而不是一個區塊。所以,確定了主鏈,通過主鏈,可以形成全序。最後達到的結局就是在某一個邏輯狀態里,交易還是被排序了,這是DAG最關鍵核心的部分。
「高流量應用」是隨著節點數和交易數的增加平滑擴展,當這個節點數超過1億或交易數超過並發100萬時,DAG的特性剛好是交易越多越快,節點越多越快。
7. ETH挖礦提示VRAM不足
換內核軟體。
4G顯存挖ETH出現DAG顯存不足報錯的,換成15.0內核軟體都可以解決問題,此故障過段時間會大面積報錯。
更新一下顯卡驅動或者虛擬內存弄大一點,把ETH刪掉試試,我的就是這個問題,打上ETH補丁魅力嗎跳出你這個提示,只能設置成窗口模式玩,把ETH刪除掉就可以了。
8. 幣印礦池打不開
幣印官網都打不開了 app也打不開,可能實在維護階段。
拓展資料:
1、今日幣印礦池發文指出,2月24日,2miners團隊爆出,距離比特大陸旗下E3礦機被迫停止開采ETH、ETC還有一個月的時間,在ETC網路中,E3礦機的算力從日常180MH/S驟降到30MH/S。目前的主流幣種,ETH、ETC的DAG文件大小均已接近4GB,而expanse項目由於上線時間較晚,所以當前DAG文件還不大。
2、相比在ETC網路上已經無法正常工作的E3,在ETH網路中,還有近兩個月的時間可以正常運轉。與E3形成鮮明對比的是芯動的A10礦機,高達500MH/S的算力,功耗卻比E3還要低。 Innosilicon芯動官方客服稱:A10因為其設計原理不同,所以不受目前DAG文件過大導致顯存不足的問題。
3、據外媒消息,Poolin副總裁Alejandro De La Torre在接受采訪時就減半表示:「我確信,短期內哈希率會下降。但是,我認為減半是讓新玩家進入比特幣挖礦領域的絕佳時機。新礦工現在能夠預測未來四年內新的獎勵方案同時回顧過去,我們看到比特幣價格在每次減半後都上漲了。更別說,現在有許多兩年前還行不通的新方法來資助礦場/礦機的運行。」他還指出,自從2016年7月9日發生的最近一次減半以來,比特幣挖礦領域已經有了巨大的進步。
4、業內已經有更多大玩家、更好的礦機,也有了更激烈的競爭,這一切都可能推動比特幣礦業的全球擴張:「此外,幾年之前還不存在的許多新的運行系統工具和管理工具也提高了挖礦的便利性和盈利能力。我預計比特幣礦業將會繼續向全球擴張。」Alejandro補充道:「並不只有小礦工才受到了挑戰。任何類型的礦場,不論規模大小,如果其電力成本足夠低而且擁有最新型的礦機,那麼盡管在短期內其盈利能力會受損,他們最終將會安全過渡。如果礦工的電力成本高昂且礦機型號老舊,那麼他們毫無疑問將遇到麻煩,將不得不關機。這就是現實。」
9. 求助 挖礦dag錯誤報錯
遇到過這樣的問題,是許可權方面的原因。比如:許可權設置的交貨地點或是裝運點應該不只是限於他所在的地點。
10. 挖礦文件後綴
挖礦文件後綴為DAG。
比特幣挖礦機就是用於賺取比特幣的計算機。這類計算機一般有專業的挖礦晶元,多採用安裝大量顯卡的方式工作,耗電量較大。