译改进,初步预测大概可以提高计算机4~5倍的运行效率。”曹长久看出王所似乎没有什么生病的迹象,心中大定,也就开起玩笑来。
“哦!既然如此,功过相抵,回去干活。另外把你说的东西拿来我看,是不是真的啊?”王所心情很好,完全忘了自己前几天还在骂这小子不务正业。
曹长久连忙从包里拿出了两张软磁盘,这是他从大李那敲来的,里面正存着他这些日子以来对心血向量并行编译算法。
757工程决定使用向量处理机,兼容cray-1是一个明智的决定,在元件制造的限制之下只有通过架构的优化最大化的实现并行才能显著的提高运算速度。向量处理就是一种方法,向量处理机对数组执行向量指令,每条指令都包含一串重复的操作,可以利用循环级展开得到人们想要的并行性,并且可以附属于任何标量处理机。
因此向量处理机通常用于多流水线超级计算机中。专用的向量流水线可以在循环控制中消除某些软件开销,它的效果与优化编译器将顺序代码向量化的性能很有关系。
曹长久的编译器就是此种产物,他大量借鉴了自己原来梦中的经验,将open64编译器中的先进的并行思想融入到其中,正好757也是64位的大型计算机,open64对代码也是64位的,让长久省了重写代码的麻烦。
open64是一个编译器平台,也是一个开源组织,专门做并行编译技术研究。open64来源于sgi于1999年公布的一个工业化的并行化优化编译器pro64源代码,后被全世界多个编译器研究小组用来作为研究平台,并命名为open64。
开源运动大大促进了编译技术的普及,因此曹长久也是开源的受益者。这次长久写的并行编译器也沿用了open64这个名字,并小心的在程序里面加了一个小小的声明,里面注明了编译器的创作时间,作者等等,虽然长久自己版权不抱什么希望,但是梦中的习惯让他写了这个文本,同样,之前的长久写的磁盘操作系统也是如此。
王所将磁盘插入了计算所的终端上,进入磁盘目录。无需担心兼容问题,因为长久在上海编写代码的时候用的是同一个操作系统,虽然硬件相关的内核不一样。
磁盘上保存的是源代码,要想使用必须重新编译转换成机器码,虽然硬件系统平台有差异,但是只要在操作系统中重新编译一下就可以使用了。
王所准备了一个高阶方程算法,分别使用计算所以前的编译器和曹长久写的open64进行编译封装,试着进行计算,结果大跌眼镜,新编译器完全滞后,比老的慢的多。
这不禁让围观的群众们大失所望,个别的还有点幸灾乐祸,小声的风言风语,吹得都登天了,也不过如此嘛!
曹长久则是一副早知如此的样子,摇摇头没说话。
王所叹了一口气:“看来这是优化过的,不在向量机上不行啊!”“王伯,你也太心急了,现在所里的机器没有向量模块,没有多处理系统,还是32位的,虽说open64可以兼容32位机,但是就不要谈性能了。”曹长久斜睨了一下旁边叽咕的人,对王所解释。