暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

LAXCUS分布式操作系统7.0聚合计算体系架构(ACA)介绍

聚合计算正在开启一个全新的分布式计算时代!

聚合计算是一种全新的分布式计算方案,聚合计算体系架构(ACA, Aggregate Computing Architecture)是LAXCUS分布式操作系统7.0的基础和核心,它规定了LAXCUS分布式操作系统7.0及以后所有版本,如何理解和执行分布式作业流程。在开发层面,聚合计算的实现细节对开发者是透明的,应用开发者只需要通过相关的计算机语言和操作系统编程接口(目前仅支持C/C++,未来将扩展到Python、Java等高级语言),就能编写基于LAXCUS分布式操作系统的聚合计算应用软件代码。如果你是一名分布式应用软件开发者,了解聚合计算的基本功能和工作原理,将有助于你在需要的时候,更好更快地开发及优化分布式应用软件代码。    

1. 聚合计算:从N到1的计算工作

因为AI,我们正在需要更多的CPU、GPU、FPGA、磁盘、内存参与计算工作,这与传统的单机计算完全不同,促使我们重新制定管理这些硬件资源的策略。同时,对于开发者、用户、系统管理员来说,面对越来越复杂的大规模计算和编程开发工作,如何使用和调度这些硬件资源,也是一件极度复杂和麻烦的事情。

聚合计算是针对这些问题,在LAXCUS分布式操作系统基础上,通过对计算机集群“从N到1”的重组整合硬件资源,把量的硬件计算机,变成一台逻辑的软件“超级计算机”,其最大规模可以达到100W+节点系统管理员和开发者可以在这台逻辑单一的“超级计算机”上,管理计算机集群,开发各种分布式应用软件,执行各种大规模和超大规模的计算。也就是说,无论你的计算机集群实际上有多少台计算机,从软件表面上看,就像是一台计算机一样。

聚合计算体系架构(ACA)LAXCUS分布式操作系统的首通过对硬件资源“从N到1”的重组整合,使得我们更容易管理计算机集群,并帮助开发者更简单、更快捷开发各种AI和分布式算力应用软件,尤其处理超大规模的分布式并行计算工作时效果更加明显

          

2. 多机并行下的计算线程

聚合计算的并行计算是由一批核心函数定义的,这些函数具备向后兼容的能力,在运行过程中,需要保证每台计算节点的版本一致性,才能够多台计算机上并行执行。多机并行的计算函数在运行过程中将启动线程,工作完成后被释放。这些线程按照网格块的形式组成,每条线程执行一个实例。    

          

3. SIMN(Single Instruction Multiple Nodes)执行模型

聚合计算采用SIMN模式实现分布式作业,意味着一条指令会被LAXCUS分布式操作系统分发到多台计算机上,并被这些计算机执行。每台计算机在资源允许和批准的情况下,遵循相同的执行路径。多台计算机在遵循SIMN执行过程中,将处理流程一致但是内容不尽相同的数据SIMN这是聚合计算的多机并行处理的基础。

          

4. 针对内存访问的指令

聚合计算支持不同层次内存的读写操作,包括全局内存、共享内存、常量内存和寄存器。这些指令将实现用来加速和优化内存访问,减少内存延迟,提高带宽利用率,加速AI和大规模算力应用的执行效果。

          

5. 标量和向量函数

聚合计算提供了有各种的标量和向量函数,这些函数需要落实到各种硬件计算单元上实施。基于这种情况,LAXCUS分布式操作系统又提供了一批抽象接口,方便硬件设备商对接这些函数当应用软件运行过程中,聚合计算会把这些计算工作转移到对应的计算单元上执行。如果一台计算机没有类似GPU、FPGA硬件加速计算单元,相关的加速计算工作将转移到CPU上,对接其指令集运行(比如X86架构的CPU及其MMX、SSE、AVX指令)。

          

6. 分布式作业流程的控制算法    

聚合计算提供了针对各种分布式作业流程的控制算法,包括卡间计算、网间计算、远近场计算的作业流程控制。它们允许在多机并行计算过程中,动态分配和调整改变计算节点,并驱动这些计算节点的工作线程,执行相同的控制流指令。

          

7. 原子级操作和同步原语

聚合计算内置分布锁,实现不同粒度,包括原子级的锁定操作,比如增加、减少、交换的指令操作,它将确保在多机并行环境下,对共享数据的操作具备原子级的一致性还有,同步原语用于控制线程间的执行顺序,以及数据上下文关系的依赖。

          

8. 分布式编程接口

聚合计算体系架构是LAXCUS分布式操作系统底层和应用软件的中间层,它的作用类似于英伟达的CUDA。通过这样一套完整的分布式计算框架,开发者在调用上层API,管理员操纵计算机集群的工作,都被大幅简化。且因为是聚合计算的分布式编程接口作为操作系统的一部分,在未来,也更容易实现标准化和通用化。

          

9. 冗余和容错

当一个计算机集群的节点规模达到到几百台、几千台的时候,很难保证每台计算机每个硬件部件正常协同工作,这时冗余和容错就派上用场。简单说,冗余就是备份,需要我们在规划计算机集群方案时,考虑好足够的备份机器,当计算节点发生故障后,启动备份节点替换故障节点。容错由LAXCUS分布式操作系统和系统管理员一起共同承担,当计算节点故障,操作系统会在数秒内做出判断,通常可恢复的故障,操作系统会主动处理,如果是不可恢复的故障,操作系统将对故障节点执行隔离操作,并通过系统管理员来处理。

聚合计算提供有冗余容错的接口,开发者将这些接口嵌入到自己的应用软件里,运行过程中就能实时感知每个计算节点的运行状态。当计算节点出现故障后,LAXCUS分布式操作系统会通知应用软件,让应用软件实时感知故障情况,并由应用软件做出针对性处理。    

          

10. 多处理器的异构计算

LAXCUS分布式操作系统支持多种CPU。目前首选是X86架构的处理器,其次是ARM架构,未来根据产品和产业发展情况,将支持更多的CPU,比如国产的龙芯架构处理器。当有多种CPU处于一个计算机集群,并需要它们协同执行一项计算工作时,多处理器的异构计算就成为必须解决的问题。

为此,针对开发者,聚合计算提供有多处理器异构计算抽象。它介于操作系统的底层和应用软件层之间,隔离了底层功能,类似于Java语言的“一次编写到处运行”,允许开发者在一种处理器平台上开发应用软件,然后部署到其它处理器平台运行,这种模式大大降低了开发应用软件和采购硬件设备的成本。

客观地讲,多处理器异构计算抽象虽然隔离底层,简化了编程开发,但是同时降低了应用软件的运行效率,尤其对需要大算力的AI计算,并不是一种很好的解决方案,所以目前它属于聚合计算体系架构的一项备选方案,未来将视需求再决定是否公开,推出公共版本。

          

聚合计算作为一全新的分布式计算方案和软件框架,目前仍然在开发和演进中,它将淘汰旧的分布式计算框架,彻底改变分布式计算和分布式应用软件的设计、开发、编流程,重新定义计算体系,为未来更多AI和分布式计算业务的井喷打下基础。

          

LAXCUS分布式操作系统研发团队正在扩招中,岗位包括技术合伙人、项目主管、核心开人员,公司提供了丰厚的股权和期权奖励,欢迎“有想法”和“不安分”的小伙伴联系我,加入LAXCUS分布式操作系统研发团队,抓住AI和算力互联网发展浪潮红利!    

技术探讨长按此微信号

股权商务合作长按此微信号    

文章转载自LAXCUS分布式操作系统,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论