人们经常建议,要实际参与采矿,必须获得图形卡并安装数据自动化系统和/或OpenCL库。
根据wikipeda的定义:
库达是Nvidia创建的并行计算平台和应用程序编程接口(API)模型。它允许软件开发人员和软件工程师使用CUDA支持的图形处理单元(GPU)进行通用处理,这种方法称为GPU(图形处理单元上的通用计算)。CUDA平台是一个软件层,可以直接访问GPU的虚拟指令集和并行计算元素,用于执行计算内核。OpenCL(开放计算语言)是一个跨异构平台执行程序的框架,包括中央处理器(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)和其他处理器或硬件加速器。OpenCL指定编程语言(基于C99和C++11)对这些设备进行编程,并指定应用程序编程接口(API)来控制平台并在计算设备上执行程序。OpenCL为使用基于任务和数据的并行性的并行计算提供了标准接口。
发布于 2017-07-23 01:40:37
发布于 2017-07-23 01:14:52
要开采块,必须进行计算。计算机没有什么神奇之处--你可以用笔和纸做同样的事情,只是速度要慢得多。通常,计算机上的计算使用能够快速连续执行大量计算的CPU来完成。一种图形卡具有GPU (图形处理单元),该GPU(图形处理单元)被优化以同时快速执行对不同数据的更有限的一组操作。现在您可以同时添加数千对数字,而不是一次添加一个数字对。现在想象一下,试图把随机的数字对加在一起,如果其中任何一对加到100,就停止。即使GPU比CPU长10倍,如果它可以同时做10倍以上的添加,那么它在这个任务上仍然更快。这是对什么是挖掘的一个粗略的简化,但它显示了GPU可以比CPU快得多。这是人们使用GPU而不是CPU的原因之一。其他原因包括能源效率(用于这项专门任务)、每秒计算成本和物理空间。
那么,数据自动化系统和OpenCL是如何适应的呢?它们是编程图形卡的通用语言(目前只在第一种情况下使用nVidia,AFAIK)。就像智能手机和你典型的桌面电脑有很大的不同,但它们都能够显示用同一语言编写的网页一样,CUDA和OpenCL可以让不同的GPU执行特定的操作。这些恰好是图形卡制造商已经确定的标准,与settled没有直接关系。
使用CUDA和OpenCL的替代方法包括在CPU上进行挖掘,定制一个芯片来进行计算--一种专用于应用程序的集成芯片--就像现在用于比特币、使用笔和纸,或者为GPU开发一种新的编程语言一样。
既然我确信你接下来的问题之一是为什么ASIC不被用于开采volume,而被用于比特币,我将先发制人: ASICs需要花费大量的钱来构建,而且,由于生产单个ASIC的成本很高,因此设计/构建低容量应用程序的东西是没有经济意义的。但如果ASIC如此昂贵,为什么它会被用于比特币?可以对ASICs进行优化,以执行特定的操作序列或执行某些事情。但是,用于挖掘的图形卡中与Ethereum相关的昂贵部分是卡上的内存(而不是GPU,它是卡的一部分)。内存的制造成本很高;因此,自定义设计ASIC的成本节约和效率收益不如比特币用于挖掘块的哈希算法好。
https://ethereum.stackexchange.com/questions/22791
复制相似问题