报名参加CloudWeGo黑客松,奖金直推双丰收! 了解详情
写点什么

多核处理器真的能提升软件系统性能吗?

  • 2007-04-24
  • 本文字数:567 字

    阅读完需:约 2 分钟

Larry O’Brien 对关于多核处理器和适应它的语言一定能带来性能提升的假设提出质疑

原理很简单。没有边际效应(side effect)的函数式编程基本上将自己交给了并行(译者注:意思是最适合并行的技术)。比较有意思的是 Map 函数,在 Map 里函数被应用到数组里的每一个元素。

一些乐观人士看到这儿的时候,说“哈哈,编译器可以轻松地将那些计算分发到一个线程池,在一个有多核的机器上会有性能优势。”确实如此,如果函数非常长或者数组非常大的话。否则,通过多核 / 多处理器分发计算的开销会比在一个核里执行 Map 要大的多。最糟糕的情况是,当函数和数据已经在原核的缓存中时,分发它的性能会非常低效。

从历史上来比较说明,Larry 提到 C/C++ 的内联关键字(inline keyword)。他说在大多数情况下,内联关键字是一个灾难。“绝大多数开发人员在考虑内联关键字给他们带来的好处时,做的很糟糕。因为,仅作为分发用时,Map 会是反生产力的,内联的代码会降低效率(现代处理器的芯片缓存使得代码的大小和位置对性能而言是非常重要的)”

  • 那些声称每一个调用都会被分发的语言,它们有足够的能力去克服并行带来的性能问题吗?
  • 在并行发生的时候,程序员所要使用的语言在主流程序员的手中会像内联一样,成为一场灾难吗?
  • 会有一个混合的方法同时解决这两个问题吗?

查阅英文原文: Automatic Parallel Processing, Will It Work?

2007-04-24 08:101178

评论

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

HarmonyOS 94个JS/eTS开源组件首发上新,肯定有你要用的一款!

HarmonyOS开发者

HarmonyOS ArKUI 3.0

Flink CDC Meetup · Online,5.21 开讲!

Apache Flink

大数据 flink 编程 流计算 实时计算

10个 解放双手的 IDEA 插件,少些冤枉代码

爱好编程进阶

Java 程序员 后端开发

2020java面试题-chukou-chengzhang

爱好编程进阶

Java 程序员 后端开发

2022年开发者时间报告

Geek_rze78a

2021年阿里高频Java面试题:分布式+中间件

爱好编程进阶

Java 程序员 后端开发

33岁跳槽无路,濒临绝望受贵人指点,拼尽全力阿里offer在兜里

爱好编程进阶

Java 程序员 后端开发

[Python] 题集 ②

謓泽

5月月更

六大应用场景解决方案重磅发布,华为开发者联盟助力开发者商业成功

最新动态

与众不同的企业,都有最棒的知识管理!

小炮

知识管理

Byte和bit

爱好编程进阶

Java 程序员 后端开发

某小视频App v10.x 手机号加密算法分析

奋飞安全

android 移动安全

跨境电商中的秘密

Geek_e369a5

跨境电商 编程解决 跨境电商快速更新产品 多图AI融合 图片背景替换

3 个方法,教你提升程序员的自我价值

爱好编程进阶

Java 程序员 后端开发

Apriori算法详解

爱好编程进阶

Java 程序员 后端开发

C++std命名空间和头文件详解

爱好编程进阶

Java 程序员 后端开发

1024属于程序员的专属浪漫

爱好编程进阶

Java 程序员 后端开发

2个月成功逆袭!最新分享阿里(Java岗

爱好编程进阶

Java 程序员 后端开发

面试突击46:公平锁和非公平锁有什么区别?

王磊

Java 面试 java常见面试题

【ICDE 2022】稀疏模型训练框架HybridBackend,单位成本下训练吞吐提升至5倍

阿里云大数据AI技术

深度学习 推荐系统 开源项目

Builder构建者模式,将复杂对象的创建过程与其表示分离,活学活用才是王道

爱好编程进阶

Java 程序员 后端开发

11-SpringSecurity:Session共享

爱好编程进阶

Java 程序员 后端开发

40个W年薪蚂蚁团队Java岗技术4面分享:HashMap+线程池

爱好编程进阶

Java 程序员 后端开发

7-21 求前缀表达式的值 (25 分)(思路详解)

爱好编程进阶

Java 程序员 后端开发

cdn日志文件导入mysql进行分析,核心用到 Python

梦想橡皮擦

5月月更

【校招/社招】面试字节,写了一份硬核简历!

小傅哥

Java 面试 小傅哥 招聘 简历

C语言_数组的查找、替换、排序、拼接

DS小龙哥

5月月更

【刷题第三天】无重复字符的最长字串

白日梦

5月月更

CGBTN2110-DAY07总结复习

爱好编程进阶

Java 程序员 后端开发

SAP GUI 一些实用技巧分享

汪子熙

router 客户端 SAP GUI 5月月更

算力免费,还奖钱,OpenI日常激励活动“我为开源打榜狂”来袭

OpenI启智社区

开源 我为开源打榜狂

多核处理器真的能提升软件系统性能吗?_.NET_Jonathan Allen_InfoQ精选文章