CPU技术变革所引来的软件开发模式的变化

peterzl 2005-04-11 11:40:05
CPU时钟频率趋近上限,摩尔定律(Moore‘s Law)也即将成为经典的过去。我清楚地记得6年前我用的是赛扬333,而如今笔记本频率已达1.8G。两年前台式机处理芯片频率达到3G,可现在还是在 3.5G左右徘徊。根据摩尔定律,我们的处理芯片频率应该已经到达10G了啊!散热问题、芯片材料问题,已经牵制住时钟频率的进一步提升。对于软件开发者来说这,或许是恶梦。

曾经用486启动Win95需要10分钟,现在市场上能买到最烂的机器都能1分钟内启动95完毕。作为开发商的Microsoft并没有做95系统的效率升级工作啊!其依靠市场规律,“免费”为95“提高”了性能。

多少年来,软件开发者抱着这种心态来完成程序开发。一年前没有机器能够跑得了DOOM3,ID就等着更强劲的显卡的发布以支持DOOM3当时近似变态的配置要求。Microsoft宣布Longhorn的配置要求,也是如此,等待明年硬件性能的提升。

现在的情形变了,经过了网速限制、内存限制、硬盘速度限制后,我们即将引来CPU频率限制。CPU频率的提升将转变为CPU逻辑单元的增加,和多核心 CPU的研发。这意味着以现有的软件开发模式去开发高CPU负荷的产品,然后等待CPU的升级已经将成为过去。我们不得不采用不同的方式去达到开发更先进产品的目的。
我们或许有两种不同的策略:
1. 用更高效的算法实现软件功能
2. 开发出支持多线程的软件

若你的软件只支持双线程,那么它在双核心CPU或三核心CPU上运行的效率是一样的。“等待”硬件升级不再有效,为了提高效率,你需要将你的软件分成3个“工作组”来“合作”使得三个线程能够在三核心CPU上高效工作。

另一项值得注意的是面对服务技术(Service-Oriented)的发展。
所谓面对服务技术是指两个程序在某种协议(protocol)的支持下提供不同的服务以达到系统的目的。在网速仍然高速发展的今天,我们的有理由相信,现在很多运行在本地的服务将来很可能运行在服务器上,通过网络协议来供给服务,以减少个人计算机的计算负荷。这也是Microsoft新操作系统 Longhorn的一个探索。配合.NET,未来浏览器将不再存在,服务器/客户端(Server/Client)模式也将被淘汰。

但软件开发模式的改变也不是一夜成形的,需要几年,甚至数十年的变革。至少目前CPU的速度仍在增长,缓存(Cache)仍在为速度的提高做贡献。就现在的个人及企业软件需求来说,我们还不需要如此规模的大变革。只是它或许不远了……
...全文
99 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jonak 2005-04-12
  • 打赏
  • 举报
回复
NetPC好像是SUN提出来的吧?
xia renjie 2005-04-12
  • 打赏
  • 举报
回复
面向服务器技术让我想起了多年前Intel提出来来的网络PC。程序运行在服务器上客户只需要连结到
服务器就能得到相应的服务,说白了客户机只起到一个显示作用一切通过网络传输。
于是不再有盗版了!
legendhui 2005-04-12
  • 打赏
  • 举报
回复
up
Mr-Chen 2005-04-12
  • 打赏
  • 举报
回复
这是必然的事情,IBM早就开始网格计算研究了
peterzl 2005-04-12
  • 打赏
  • 举报
回复
网格技术!

1,649

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 非技术类
社区管理员
  • 非技术类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧