写点什么

多核处理器趋势对软件架构的影响

  • 2007-09-27
  • 本文字数:1171 字

    阅读完需:约 4 分钟

“Java 开发者”杂志上刊载了一篇精彩的文章,作者在文中讲述了软件开发者将会受到业内日益趋向多核处理器与大量并行处理器这股潮流的影响。以下是来自原文的内容:

作为软件开发者,我们在处理器技术所带来的性能持续增长潮流里乐在其中。实际上,在过去的 20 年中,处理器的性能几乎以每两年翻倍的速度持续增长着。如果 这样的性能提升突然戏剧性的减缓甚至停滞了,这个世界将会变成什么样子?我们还能继续搭建更大、更重和功能丰富的软件吗?……事实是——单线程性能的提升即将在一至三年内大规模减速。在某些情况下,单线程性能甚至会降低。长期持续不变的攀升会戏剧性的变缓。

尽管杂志的名字很专业化,但即使你不是一个 Java 工程师,这篇文章本身也是很值得一读的。你也许能猜到,作者并不会只让你感到上述段落所带来的失望。文章将解释我们将需要怎样做,来使我们的软件架构去适应持续不变的性能提升。

……业内已经开始关注为延续性能提升潮流所进行的多核、多线程处理器的设计。这些设计所关注的不是执行单个线程的性能提升,而是多个,有时甚至是巨量线程数的并行运行……作为一个开发人员而言,学习如何开发可以在数量持续增长的并行处理器上面高效运行的应用程序就变得很重要了。由于单线程的性能提升不会象 过去那么快,开发人员将会不得不关注并发来提高某个给定任务的性能。

文章接下来给出了一个关于并行编程策略的概述,以 Amdahl 法则开始:

当你开始并行编程时,所熟悉的第一条准则是 Amdahl 法则。Amdahl 法则说,限制你的程序加速运行的将是程序中不能并行执行的部分。比如说,如果性能监控显示,程序中那些只能在一个处理器上串行执行的代码需要花费 20%的运行时间,那么即使余下的代码都做了最佳并行化,也不管你扔给它多少处理器,你最多也只能获得 5 倍的速度提升。负载不平衡是一个类似的问题。如果你将你的代码分成 N 个子任务,执行它们所需的时间不是 1/N。所需的时间是执行子任务所 需时间的最大值。

文章之后讲述了并发问题和线程的设计,特别是在并行程序设计方面的 Java 语言模型。全文以宣布了一个由IBM 开发的称为X10 的新语言收尾。该语言 为Java 语言添加加了更高层次的模型,尤其是并行应用开发方面。它通过提供管理并行操作的简化语义和与这些操作相关的数据分布,试图简化并发设计。 X10 并不是一个真正的内部领域专用语言(DSL),因为它的语法不符合Java 的语法。它使用Java 语言作为基础并由此构造了一个新的、严格的语言,从这一点上来看和AspectJ(之前的5.0 版本)很相似。

查看英文原文 The Software Architecture Impact of the Multi-Core Processor Trend


译者简介: 曹云飞,西安交通大学计算机软件硕士。现就职于 Ethos ,热衷于新技术的钻研,软件架构与敏捷开发,目前从事流媒体方面的工作。参与 InfoQ 中文站内容建设,请邮件至 china-editorial[at]infoq.com

2007-09-27 21:091407
用户头像

发布了 47 篇内容, 共 12.9 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

哈尔滨二级等保:核心定位、适用范围与三级等保差异

等保测评

技术干货丨SimSolid 在起重机副臂托架设计中的应用

Altair RapidMiner

汽车 仿真 CAE SimSolid 多物理场仿真

微擎商户的流量增长秘籍:低成本高转化的种草新玩法

微擎应用市场

4U8 卡 AI 服务器选型避坑指南——从参数党到实战派

GPU算力

算力 海光 AI服务器 hpe #GPU

多云环境下的大规模资产配置统一治理实践

智象科技

多云管理平台 多云管理 多云管理中心 一体化运维平台

通过中国信通院SQL质量管理最高等级评测,天翼云TeleDB引领数据库管理新标准!

天翼云开发者社区

数据库 数据管理 DMS

AI“爆改”双11,京东、阿里谁更胜一筹?

趣解商业

AI 电商 双十一

行业分享丨工程机械数字仿真体系建设与思考

Altair RapidMiner

汽车 数字孪生 仿真 高性能计算 CAE

云栖实录 | 阿里云发布Elasticsearch Serverless 2.0,重塑AI搜索时代基础设施

阿里云大数据AI技术

elasticsearch 阿里云 Serverless AI搜索

AI前沿|英伟达全面支持开源生态;伦交所Anthropic开启战略合作

Fabarta

英伟达

2025年GEO公司排名:基于公开数据的可信评价榜单

新消费日报

【浪潮海岳inDatax数据中台专栏】构建数据一致性:主数据管理的核心与挑战

inBuilder低代码平台

数据中台 系统集成 主数据管理 inDataX

SD-WAN如何提升企业的云办公体验?

光联世纪

字节一面凉了!被问 “你们项目为啥要用消息队列”,我张口就说 “解耦异步削峰”,面试官:你怕不是没真做过项目?

Fox爱分享

程序员 面试 开发 消息队列 大厂

大数据-139 ClickHouse MergeTree 最佳实践:Replacing 去重、Summing 求和、分区设计与物化视图替代方案

武子康

大数据 flink spark 分布式 Clickhouse

springboot使用flyway,使用介绍、个人总结及报错场景如何修改

刘大猫

环境工程 城市规划 城市设计 环境纳米设计 环境遥感应用

发布会回顾 | EasyMR“1+4”矩阵,加速企业基础设施落地

袋鼠云数栈

发布会 袋鼠云 EasyMR

当运维遇见AI:从救火队员到战略中枢的演进

智象科技

AI #运维 运维智能化 运维智能系统 一体化运维平台

过程控制 驱动器维护经验总结(1)

万里无云万里天

工业 工厂运维 过程控制

过程控制 软件维护经验总结(3)

万里无云万里天

工业 工厂运维 过程控制

使用智能代理在亚马逊云科技无服务器架构上进行源代码分析

亚马逊云科技 (Amazon Web Services)

强化特权用户监控,守护Active Directory核心安全

运维有小邓

AD域 AD域管理 AD域审计

华为云 Serverless 云原生基础设施 | 极简体验,加速业务创

华为云开发者联盟

华为云开发者联盟

云栖实录 | AI 搜索引擎如何驱动亿级物流:货拉拉 x 阿里云 Elasticsearch

阿里云大数据AI技术

elasticsearch 阿里云 货拉拉

翘楚共探AI落地 同驱产业新程:司马阅2025企业AI落地应用峰会上海站,在张江机器人谷落下帷幕

司马阅

人工智能

小红书同款3D百万运镜平替!他们用AE肝到崩,我们用这个一键直接出丨ScreenSage

阿星AI工作室

产品 AI 自媒体 AI工具

设计变量是什么,如何使用?变量系统使用全攻略

职场工具箱

变量 设计师 ui设计 在线设计工具 界面设计

如何生成随机密码保护新创建的用户帐户安全?

运维有小邓

AD域 AD域管理 AD域组管理

对 GPT 5 模型路由机制的深度解析

Baihai IDP

程序员 AI 大模型 LLM 模型路由

哈尔滨三级等保:等级定位、适用范畴与二级等保核心区别

等保测评

AI向量知识库更新策略

阿汤哥

知识库

多核处理器趋势对软件架构的影响_Java_Mark Figley_InfoQ精选文章