英特尔和微软正在漫长的道路上一步步地走向他们所构想的蓝图,即为未来多核处理器设计新型并行编程模型。两个公司在英特尔发展论坛上发表了各自所取得的进展。
微软的新版本中,为系统软件栈添加了新的层,并为它的.Net集成环境进行了一些扩展。英特尔则计划对x86指令集进行扩展,并展示了在Ct上的进度,Ct是C++设计语言的扩展版本,旨在提供更好的并行化计算。
从用于计算开始,软件的发展便凭借着摩尔定律关于串行处理器的发展而不断提高其性能水平。然而,随着微处理器上的功率泄露的问题不断严重,迫使向多核方向转移。去年年底发起的微软并行计算计划的主持者DavidCallahan称,这意味着向并行计算模型的历史性过渡。
微软与英特尔正在支持着各种学术性研究,来推进这方面的发展。在英特尔技术峰会上,学者们与企业界内部团队分享了一些进展情况。
这样的工作似乎还不够雄心勃勃,微软更希望使用并行计算的转变推动计算机界面的发展。
Callahan称,“这实际上是我们希望实现的自然与经验相结合的新的布景。并行计算转化只是前进路上的一个小插曲。”
在开始并行工作前,底层软件需要整体调整。Callahan表示,未来的系统软件将会分成更多的层,形成更多的单独组件,包括在应用库和进程管理程序(hypervisors)之间定义用户空间的新的运行环境,以及关键操作系统内核。
运行环境将作为调度器,与进程管理程序及操作系统之间协调工作。进程管理程序虚拟地映射着物理资源,而操作系统对物理硬件的访问进行管理。Callahan称,“这是一个对传统操作系统服务的重构。”
这样的目的是更好的处理在多核环境下竞争请求。即使今天的PC也并行着执行“可怕数目”的进程,于是形成了时序处理的瓶颈以及数据存储的丢失。
微软会把其运行层公布给第三方,其中包括英特尔公司,因为微软预计未来将需要很多种从不同厂商抽象得来的用于不同服务种类的互操作软件抽象。未来的软件还需要在下面几个方面进行技术改进:协作调度、更好的线程级性能以及增强消息传递。
Callahan称,“这将是一系列深刻的改变,甚至需要重新构建库文件并重新编写应用程序。”
RapidMind公司的首席科学家MichaelMcCool称,“这是一个雄心勃勃的转变,也是他们(微软与英特尔)第一个目标。”RapidMind公司从事于为x86和其他处理器提供并行编程工具。
McCool还补充说,“最初,他们已经完成了一些显著的支持并行任务的事情,但我没有看到在对数据抽象方面上的任何努力。”
McCool称,未来并行编程模型要新的类型来对数据排序,因此数据可以在合适的时候汇集到缓存中的合适位置。他还指出,英特尔最新的高速处理器互连,显著得减少了等待时间,但如果错误数据出现在缓存中,等待时间又会显著增加。
[1] [2] 下一页
【我要评论】 【推荐给朋友】 【编辑: 信息中心】 【关闭窗口】
相关资讯
发表评论