CMP设计分享 http://blog.sciencenet.cn/u/accsys 没有逆向思维就没有科技原创。 不自信是科技创新的大敌。

博文

计算机新技术革命要求必须从源头做起

已有 3553 次阅读 2009-12-2 10:56 |个人分类:计算机核|系统分类:科研笔记| 多核, CMP, 计算机新技术革命, 操作系统瓶颈

在科研界有一句话,叫“站在巨人的肩膀上”。在人类知识积累的过程中,这句话是真理。但这句话用的不是地方,也会产生运用不当的谬误,这就叫“具体问题,具体分析”。在目前的这场计算机新技术革命的机遇与挑战中,过分强调计算机已有的理论和方法,忘记了计算机发展的暂短历史,忘记了从深层次去分析“为什么计算机技术目前会遇到这么多不能逾越的障碍”,你就永远不能实际地进入这场计算机新技术革命之中。
 
确实,计算机短短六十多年的历史,无与伦比地展示了计算机科学的创造力,它为整个人类的生活开创了全新的天地。然而计算机的发展毕竟还处在上升期,虽然已经取得了很大的成就,但,问题终归是问题。
 
从计算机发展的过程看,这项科学技术从一开始就紧密地与商业应用捆绑在一起了。由于计算机不是仅仅谈论理论的科学,而是要实际地造出计算机投入使用。计算机的实现,需要应用到电子器件,因而就需要强大的经济后盾的支持。所以开始不久,这项科学技术发明的发展,就染上了“急功近利”的色彩。由于上个世纪六七十年代,电子技术产品价格昂贵,因而生产计算机投资巨大,自然计算机也是“凤毛羚角”。这使多用户,多任务计算机,成为了设计研究的重要方向。如何能够让一台计算机同时完成更多的任务,自然而然地成了计算机科学家研究的重要课题。
 
在计算机多任务研究中,投入较少的软件方法获得了成功。人们引入了“进程”和“并发执行”的概念,让一个原本只能顺序执行任务的计算机,实现了多任务交叉进行,做到了多任务的均衡完成。这种技术使软件产业获得了巨大的成功,八十年代出现的“微软”就是其中的佼佼者。
 
单处理器多任务计算机,将人们引进了用软件方法实现程序运行调度的方向。一个时期,纯软件管理计算机的方法获得了巨大的成功,出现了“操作系统”。此后,在计算机的理论方法中,将操作系统设计成包裹“裸机”,使用计算机就必须通过它的东西。因而,在计算机的层次结构理论中,将操作系统列为了使用计算机必须通过的一层。实际上,这种理论上的必然,很快就被打破了。一些大型的数据库系统设计中,已经绕过了操作系统,直接深入到硬件层面。但是,由于操作系统的厂家,设计了许多供人们使用的应用程序,并且将这些应用程序捆绑在他们的软件产品中,这就完全造成了“没有操作系统计算机就不能工作”的假象。
 
随着处理器频率提升最终受到“热效应”的限制,单芯片多处理器技术时代来临了。正如哲学辩证法的“否定之否定规律”所揭示的那样,一个否定操作系统全面管理计算机的时代来临了。如今,逻辑电路的设计方法也发生了重大的变化,连设备驱动程序一类的东西,都可以用硬件设计的方法实现,这说明计算机应用越来越贴近了计算机硬件,对计算机的应用,完全可以用更直接,效率更高的方法进行。
 
多处理器计算机中,操作系统带来的负面作用是什么?其实,多处理器计算机并不是现在才有的,以往的大型计算机就采用了多处理器结构,例如,IBM的370等。比较成功的并行计算机的结构,叫对称并行计算机SMP。 SMP靠操作系统管理整机的资源和程序任务分配,结果造成了系统的瓶颈。因而SMP的处理器数量受到了限制,当处理器的数量超过某一个数时,计算机系统的效率不但不能提高,反而下降。因此,SMP长时间没有长足的发展。如今,操作系统的瓶颈现象越发明显。
 
个人计算机的出现,极大地减少了多用户计算机的生产,特别是计算机网络诞生之后,人们发现,网络的方法不但能够实现远距离协同完成任务,而且也可以近距离地用多台计算机,协同完成复杂的任务,从而提高任务完成的效率。在这种网络思想的发挥,产生了“高性能计算机”,现在将这种网络思想发挥到极致的是“片上网络”。所谓的多核技术,目前正沿用着片上网络的方法在研究中。这种方法正被国外的计算机界所大力吹捧。严格地说,片上网络和片上多处理器CMP不能等同为一个概念,因为处理器+存储器+程序运行设备,这三者才能统称为“核”,因此核与核间的互联,一定要通过类似网络数据传输的方法进行合作,这就是被称为多核的原因。多核必然要包含多个处理器,因而片上多核可以看成CMP的一种。
 
片上多处理器CMP技术的到来,对计算机系统的运作提出了更高的要求。由于多个处理器和存储设备等,同处在一个方寸的芯片中,极大地拉近了设备之间的距离,使许多网络中必须采用的异步传输方式,可以采用同步传输的方法进行了。这在多处理器协同工作的结构和数据交换方式上,必然产生前所未有的变革。例如,过去的那种固定总线结构的处理器、存储器、程序运行设备的连接方式,可以用线路开关实现关系总线的动态连接方式所替代,处理器对存储器的共享,完全可以变成多存储器的动态共享,而不用再像网络那样,需要通过线路数据传输,来完成两个存储器之间的数据转移。存储器对处理器的动态交换方式的数据转移,效率之高,是任何线路传输方式所无法比拟的。
 
处理器对存储程序的存储器和执行环境的动态转移,在芯片上完全可以通过及时地线路切换完成,并且这种切换的实施,完全可以跟得上处理器和存储器的运行速度。因而可以用简单的计算机指令来指挥控制,这是任何片外线路结构所无法完成的。现代超大规模集成电路技术,提供了非常充足的芯片内部线路资源,因而在芯片内部实现关系总线结构是轻而易举的事情。这对于片外结构的器件连接方式,是难以想象的事情。
 
目前,采用网络结构的片上多核,毫无例外地难以解决“让每一个核都能充分工作”的问题。因为路由操作,任务分配等一系列问题,不能够高速高层控制,只能够通过软件的方法,通过协议解析等异步方式传递数据和指令数据来解决。这种方法,相比直接的总线数据流动方式,不知要缓慢多少倍。因而,要解决片上多处理器充分工作的问题,必须充分考虑片上结构的特点,设计出适应片上结构的计算机核心部件,才能彻底实现片上多处理器CMP的时代要求。
 
并行编程墙、存储墙、功耗墙等一系列事实,已经清楚地告诉了我们,单处理器计算机所使用的软件管理方法,对多处理器计算机来说,有许多不适用,需要我们去从根源上去寻求适应CMP的新理论和新方法。
 
片上多核或多处理器的设计,要求大家必须从头审视以往的理论和方法,不管我们是否愿意,是否舍不得已经取得的成就。在这一点上,先进的国外计算机界比我们要痛,他们失去的不仅是理论上的领导地位,而更重要的是会有可能失去利益丰厚的市场收益。但这对于我们这样一个计算机产业落后的国家来说,恰是千载难逢的良机。我们终于有机会和那些计算机强国,在计算机科学领域一拼高下了。不要怕有人说我们是“小儿科”,任何一项复杂高深的科学技术,都是从最简单的问题和方法开始的。
 
在人人平等的EDA技术和可编程器件FPGA面前,CMP技术理论的发展,一定是在全世界的勇敢者的“智力大比拼”中前进。对计算机界的人才来说,现在没有落后国家和先进国家之差,因为过去先进的国家也不得不与你站在同一个起跑线上。现在的问题是看谁能够率先拿出良谋捷策,谁就可以获得最现实的胜利。
 
2009-12-2
 


https://blog.sciencenet.cn/blog-340399-275516.html

上一篇:用英文写才是顶尖的科研论文吗
下一篇:中国计算机界的科学家都在忙什么
收藏 IP: .*| 热度|

2 唐常杰 intowin

发表评论 评论 (1 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-17 03:43

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部