技术开发 频道

微软将增强Windows 7多核心功能

  【IT168 资讯】这是我们都必须面对的问题:既然芯片的趋势是处理器变多,而不是速度变快,你下一台电脑执行软件的速度会比较快吗?

  微软相信,Windows 7比旧版操作系统提供更好的多核心系统平台。

  Windows 7可支持搭载多达256个处理器核心的服务器,旧版操作系统只能支持64个。随着芯片进入多核心时代,如今就连笔记本电脑,也能处理数年前只有服务器才能胜任的许多运算任务。英特尔新Core i7 "Clarksfield"移动处理器具有四核心,可处理总计八条执行绪(threads)的任务。

  微软Windows核心操作系统部门资深副总裁Jon DeVaan说:“其中一个层面是支持数量更多的处理器,并且在64颗处理器转变到256颗处理器的过程中做好线性扩充。”

  线性扩充(linear scaling)的意思是,把处理器数目加倍就表示性能也加倍--这在实际的运算方面是很少达到的。然而,256或64个处理器,能拿一台具备四或八个核心的PC做什么? 简单说就是,让Windows系统升级到支持数量更多的服务器,也能协助规模较小的多核心机器更顺畅地执行任务,例如可以把数据存储在高速缓存,以便处理器核心就近存取。

  解决多核心问题,微软责无旁贷。微软供应全球使用率最普及的PC操作系统,而且提供许多人用来制作PC软件的程序设计工具,例如即将推出的Visual Studio 2010。

  Devaan说:“目前还没有任何特效药。但商业现实使得情况变得更迫切,所以我认为,我们将采取更多的作法。”

  释放多核心威力也攸关竞争力。苹果最新版操作系统雪豹Mac OS X增加了一项称为"Grand Central Dispatch"的功能,集中管理系统上各种执行中程序的执行绪。

  当然,英特尔和AMD也有责任,但微软对开发者的影响力更大。

  多核心设计能轻松提供协助的时机,是在使用者同时执行多种个别的程序,或当执行的程序“不易平行”(embarrassingly parallel)时--换言之,就是当某项任务附带许多自然独立自主的子任务(independent subtasks),例如呈现一部视频的许多图框(frames)。但今天的许多程序已设定好依照一系列步骤的顺序来执行,无法轻易地转换成平行的设计。

  Evans Data分析师Janel Garvin说:“单靠操作系统,绝对无法把尚未支持平行处理的应用程序变成能做平行处理。开发者还是得让自己的应用程序做到多重执行绪。”

  所以,微软在Visual Studio之内放入平行程序设计(parallel programming)的辅助工具,是好消息。

  微软平行运算产品部门经理Steve Teixeira说:“平行运算是复杂、困难、劳力密集的,即使是对最熟练的开发者而言亦然,这导致开发者避免写平行程序,使许多CPU周期闲置未用。”

  微软计划通过Visual Studio 2010,以及第四版的.Net Development Framework,来改善这种情况。

0
相关文章