Skip to main content

验证节点的解析器

验证节点区块图

流水线(Pipelining)#

验证节点广泛使用CPU设计中常见的优化方法, 称为流水线处理。 当有一个输入数据流需要通过一系列步骤进行处理,并且每个步骤都有不同的硬件负责时,流水线化是一个非常正确的思路。 典型的例子是用洗衣机和烘干机完成洗涤/烘干/折叠好几堆衣服。 洗涤必须在烘干前进行,烘干后才能折叠,但这三种操作都由单独的设备执行。 为了最大限度地提高效率,我们创建了 三个阶段 的流水线处理。 我们将洗涤称为一个阶段,烘干称为第二个阶段,折叠过程称为第三个阶段。 为了让流水线跑起来,在第一批衣物被添加到烘干机之后,第二批衣物就可以添加到洗衣机当中去了。 同样的,在第二批衣物添加到烘干机之后,第三批衣物就可以添加到洗衣机中去了。 这时候第一批衣物应该到了折叠的阶段。 按照这样的方式,三堆衣物就会最大化的取得进展。源源不断的输入载荷,流水线化就会持续最优的完成工作。

验证节点中的流水线#

验证节点有两类流水线,领导节点使用的流水线称为TPU,从节点使用的流水线成为TVU。 在这两种情况下,流水线化是一样的,网络输入、GPU卡、CPU内核、磁盘写入和网络输出。 不同之处在于每个阶段由不同的硬件完成。 TPU流水线的存在是为了创建和维护账本,而TVU流水线的存在是为了验证区块。