传输和计算

博客探讨了通用计算的核心,从图灵机原理到Unix哲学,强调了软件核的设计思想,即任务拆分成步骤在时间轴上展开。文章指出,尽管存在存内计算等优化,但内存和CPU之间的通信本质未变,遵循端到端原则。分布式计算被视为通用计算的一种形式,通过将所有参与者视为整体,实现一致性。文章最后提及人脑与AI在处理通用计算和分布式计算上的可能倾向,并以RIP和STP协议为例说明过程交互在某些情况下的必要性。
摘要由CSDN通过智能技术生成

我本胡言乱语。

昨天的一篇短文:
通用计算机器
今天假期最后一天,接着说几句。

图灵机将步骤按照时间展开,替代将部分空间中连线延展,成就了通用计算机器,我们现在的计算机都是图灵机的形式。

这就必然会有内存和CPU之间的通信,就算如火如荼的存内计算也不过是小范围优化,既然词中还有“存”,便没有改变本质,内存和CPU依旧两隔。

但时间展开和空间展开真的就是固然对立的吗?非也。

虽然计算组件不能在空间扩展,因为太占地方,但已经按照时间扩展的步骤却可以自由组合和递归,实现新的功能。这便是Unix哲学的实例了。

组合使用命令,cat a|grep skinshoe|wc -l就是一个例子。

好了,该总结“道”和“法”了。

为了通用,在最底层,将一个任务拆成不同步骤,这些步骤在时间轴展开分时复用计算元组件。这就形成了一个通用的“软件核”,剩下的便是空间展开的外围了。

软件核之间需要信息交互,信息交互最终落实到传输,目之所及的正确做法是,只传输结果,不传输过程,过程封装在软件核中。

结果就是端到端原则。背后的逻辑是:

  • 传输希望bit不被改变,过程传输需要端到端容错,只传结果可增效。
  • 计算希望bit被改变,避免传输过程可让bit的改变发生得更快。

只传输结果不传输过程,意味着交互的消息始终是无状态的,除了端到端,中间介质无需维护任何状态,只需尽力而为。

其实,在软件核的层次,这个规律依然适用,Load/Store指令在CPU和内存之间传递的就是结果,所有的过程只在CPU中完成。

微内核,云原生微服务,无不如此,消息交互。

可是看起来又有例外不是吗?RIP,STP等协议确实是在彼此交互过程,最终收敛到一致的结果,如何解释?这叫分布式计算,你把所有参与者作为一个整体看待,它便又是一个软件核了,若不当一个整体看待,单凭这些参与方彼此交互过程,是无法扩展规模的。

所以,大规模分布式计算一直都是通用计算的对立面。

人脑偏向于哪一个?AI的选择呢?

浙江温州皮鞋湿,下雨进水不会胖。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值