编者按:本文来自QuarkChain,作者:QuarkChain团队,星球日报经授权转载。
我们写作这篇文章的目的,主要是想通过展示我们关于这个主题的一些初步想法,来和同行进行讨论,欢迎大家提意见。动机
众所周知,比特币挖矿主要是由是由ASIC矿机来完成的。这是因为ASIC设备的效率比普通CPU高1000多倍。由于高性能ASIC的制造被掌控在少数几个厂商手中,这引起了人们对于挖矿中心化的担忧。因此,开发者们提出了几种抵抗ASIC优化的算法,其中包括:Ethhash、CyptoNight和Equihash。但不幸的是,市场上还是出现了一些针对以上算法进行ASIC优化的矿机,它们声称比CPU或者显卡挖矿显著的提高了效率。在这些算法中,Ethash可能是被ASIC优化后效率增益最小的一种。Ethash算法的核心思想是通过执行内存密集型操作而取代计算密集型操作。这样内存的读取性能成为哈希算法的瓶颈,从而限制ASIC的优化效果。如果假设定制开发的硬件很难提高内存的读取速度,则通过ASIC对Ethash算法进行优化获得的性能增益应该非常有限。基于顺序统计的哈希算法的想法
比特币矿企Mawson从嘉楠科技购入17352台ASIC矿机:金色财经报道,澳大利亚数字和加密货币公司Mawson Infrastructure已从嘉楠科技购买了17352台ASIC矿机。Mawson Infrastructure 表示,购买新矿机将为其现有业务增加超过1.5EH。Mawson 现在已经购买了超过3EH 的 ASIC 比特币挖矿硬件,这家位于悉尼的矿业公司在美国和澳大利亚开展业务。(CoinDesk)[2021/8/13 1:51:47]
在Ethash算法的启发下,我们提出一种新的算法,旨在通过限制ASIC的并行计算能力,从另一个方面来抵抗ASIC对挖矿效率的提升。先让我们看看ASIC的优化是如何工作的。一组固定指令实际上可以被分解成一个电路流水线,因此每个时钟周期,ASIC可以同时求解多个输入值的哈希值。例如,a+b+c+d的指令可以被流水线化,使得每个运算周期可以同时计算3个不同的输入:1,a0+b0;2,b1+c1;3,c2+d2可以在ASIC中建立多个电路逻辑,同时并发的计算多个指令。例如,上文的a+b+c+d指令可以被设计为(a+b)+(c+d),将在2个周期中完成计算。目前,这种流水线化的思想还被广泛地应用于诸如x86之类的现代处理器中,这些x86中具有分支预测器和流水线微处理器。一种避免处理器计算流水线的方法是执行多个if-then-else命令,然后在不同的分支上执行不同的代码路径,这使得流水线和分支预测变得很难。为了打破执行过程的并发性,我们可以考虑采用于状态依赖的思路——任何未来的指令都依赖于当前状态,而这种状态可以频繁地被改变,这意味着我们不能预先执行未来的指令。基于顺序统计的哈希算法
Osasion欧赛区块链浏览器等外接组件将迎来优化升级:据Osasion欧赛最新消息,Osasion欧赛区块链浏览器、钱包端和下载链接等将于近期迎来新的优化和升级。目前区块链浏览器正与主链数据库做单向接口校对,链上数据执行正常操作打包。
Osasion欧赛钱包区块链浏览器显示端将进行短暂限制接入,校对完成后数据进行同步显示,预计周期在48小时以内。截止香港时间6月19日17:27,数据列表已同步完毕,共计历时22小时17分。现已正式进入校对检验阶段,具体更新时间以公布信息为准。[2021/6/19 23:49:39]
在本节中,我们将介绍我们提出的顺序统计哈希算法。该算法试图打破流水线,使代码的执行路径变得更加随机。在介绍这种新算法之前,让我们重新回顾一下Ethash算法的核心内容,看看Ethash是如何生成一个哈希值的:Input:-state:128-bytestate-datablock:anarrayoflargeamountofdata,eachdatais64bytes-H(x,y):afasthashalgorithm,xandyhasthesamesize,returnthehashvaluewiththesamesizeasx-R(x):returnan32-bitrandomintegerderivedfromxAlgorithm:foriinrange(64):p=R(state)%(len(datablock)-1)newdata=,datablock]state=H(state,newdata)returnstateOshash算法的初步方案如下:Input:-state:128-bytestate-datablock:anlongarraywitheachentrybeing8bytes-H(x,y):afasthashalgorithm,xandyhasthesamesize,returnthehashvaluewiththesamesizeasx-R(x):returnan64-bitrandomintegerderivedfromxAlgorithm:foriinrange(64):p=R(state)%len(datablock)newdata=forjinrange(128/8):newdata=newdata.add(datablock.find_by_order(p))#Removethepthsmallestelementfromdatablockdatablock.remove_by_order(p)#Addarandomdatatothedatablock,e.g.,#datablock.insert(R(]))#Findthenextindex,e.g.,#p=R()%len(datablock)state=H(state,newdata)returnstateOshash算法与Ethash的关键差异如下:原算法是根据随机索引数p去寻值,而新算法根据第p位的最小值去寻值。在读取了datablock变量中的一个数据后,该数值将被删除,新的随机数值值将被插入到datablock中。由于datablock是一个支持有序数据查找的动态列表,因此datablock的有效实现方式可以是一棵具有顺序统计的动态搜索树。想要使用流水线来加速树的删除/插入操作是困难的,因为树的执行路径是随机的,并且高度依赖于随机输入量。CPU和FPGA实现的性能比较
亿邦CEO胡东:发挥在ASIC芯片等领域技术优势,加快国际化步伐:金色财经消息,6月26日,在今日的亿邦国际控股公司纳斯达克上市仪式上,亿邦CEO胡东表示,未来,亿邦将继续利用对加密货币行业的深刻理解及实践经验,努力向全产业链上下游拓展,并探索将区块链技术应用于非加密货币行业,例如教育、金融服务、医疗保健等。
打造专业的数字金融交易平台,服务广大投资者;升级托管及维修服务到算力中心运营,提供从入门选址到投资建设咨询,打造一站式服务,并且还将面向fintech科技金融领域逐步探索和部署;充分发挥在ASIC芯片、区块链技术应用、通信技术等领域沉淀的技术优势以及战略合作伙伴的协同优势,将在已有行业继续深耕,还要布局更多新兴行业,加快国际化的步伐。[2020/6/26]
我们将对比CPU和FPGA的实现对动态搜索树进行插入/删除操作性能,来初步验证以上思路是否成立。实验中,我们使用具有以下配置的CPU,CPU的代码可以在这里找到:CPU型号:Inteli7-7700KOS操作系统:Ubuntu16.04LTS编译器:g++5.4.0编译命令:g++-O3-std=gnu++17线程数:1键值数:64K键值类型:unsigned64-bitrandomintegers性能结果:FPGA:每秒执行397万个插入/删除操作CPU:每秒执行446万个插入/删除操作几点补充说明跟FPGA实现的搜索性能比较,FPGA实现的插入/删除操作的性能要低得多,这是因为每个插入/删除操作需要更多的执行周期,而每个搜索任务可以在一个周期中完成。实验中,FPGA的性能是根据Virtex5LX330FPGA测算的,该FPGA可能已经过时了。如果采用最新的FPGA,性能可能会提升一些。CPU的性能是根据单线程/单核测算的,如果使用多线程/多核,性能可能会更高。本测算中CPU中的键值大小是64位,FPGA中的是32位。参考文献https://github.com/ifdefelse/ProgPOWBranchpreditor,Wikipedia,https://en.wikipedia.org/wiki/Branch_predictorYang,Y-H.E.andPrasanna,V.K.,HighThroughputandLargeCapacityPipelinedDynamicSearchTreeonFPGA,18thAnnualACM/SIGDAInt.Symp.onFieldProgrammableGateArrays,2010
公告 | 贝尔链OASIS平台第8期销毁131.86万枚BRC:据官方最新消息,为配合Baer Chain生态的长远稳定发展,根据OASIS平台运营规划,每周平台所有游戏总充值BRC的10%将进行永久性销毁。本周OASIS平台共销毁1318624枚BRC,目前销毁已完成。销毁地址见原文链接。[2020/1/13]
动态 | AsicBoost与Slush Pool不兼容:据CNN报道,比特币矿业池运营商Slush Pool敦促矿工不要将他们的Antminer S9设备升级到今天早上由制造商比特大陆发布的新固件补丁AsicBoost,因为会使设备与Slush Pool不兼容。Slush Pool表示正在努力尽快提供自己的解决方案,并会及时通知矿工。[2018/10/23]
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。