写点什么

并行编程:并行层次(Parallel Hierarchies)模式

  • 2007-09-03
  • 本文字数:1173 字

    阅读完需:约 4 分钟

多核处理器的降临带来了新的性能潜力。然而, Ina Fried 说,硬件上如此的趋势,对于软件业是一个巨大的挑战,因为“当今的大多数软件并非为利用这个进步而构建的”。Intel 院士(Fellow) Shekhar Borkar 也评论说“软件巨臂们 [……] 走得还不够快”同时已经到了软件也该遵循摩尔定律(Moore’s Law)的时候了,也就是“每两年对并行量的支持能力”翻一番。(摩尔定律的观点指出现实中每过两年芯片的性能大约翻一番)。Borkar 相信软件开发实践必须改组整备工具以利用起提升的性能潜力。

在这个方向上,墨西哥国家自治大学(the National Automonous University of Mexico)数学系的 Jorge L. Ortega-Arjona 教授提出了一个新的并行编程架构模式(pdf 格式)。这个模式尝试对以下情况下的执行性能进行提高:

现有必要对一个有序数据集合重复进行一系列有序操作组成的运算。考虑这样一个程序,它的输出可以只是一个单个复杂运算的结果,此运算为一系列概念上有序、在不同层次上执行的简单操作,其目标不是为了取值,而是为了产生某些影响。一个高层次上的操作需要执行一个或多个更低层次上的操作。如果这样一个程序以串行方式执行,就可以把它看作一个子过程的调用链,一个接一个的进行求值。

他的并行层次(Parallel Hierarchies)模式是“对分层(Layers)模式的扩展”,把问题划分为若干分层组件,负责“向更复杂级别的层次提供操作或功能,同时把更简单的子任务委派给复杂级别次之的层次。”“通过允许‘同一层次上两个以上组件 [……] 同时存在,通常完成相同操作’引出”功能性并行的元素为:

在各层操作的执行过程中,通常高级别的层次只得等待低级别层次的结果。然而,如果每个层次通过多个组件来表示,它们就能够并行执行并且为新请求提供服务。自此,几个有序操作集合就能够被同一个系统,同时负载。几个运算则能够在时间上相重叠。

Ortega 教授提出的这个模式的几个已知用法包括“树形结构操作比如搜索树,其中为每个节点都建立一个搜索进程”。已列出的限制包括“并非每一个系统运算都能被构造出高效的层次结构,”当上方层次对下方层次有过多依赖(例如:典型的基于 Web 的应用)时,这个模式就不太好使了,并且进行正确的层次级别设计会相当复杂。

如果你同意 Jon Erickson所相信的“在所有开发者和架构师的视野中,并发[…] 应该位于最前端”,那关注一下这个领域的新兴研熬究比较好。

查看英文原文: Programming for Parrallelism: The Parallel Hierarchies Pattern - - - - - -

译者简介:岳立东,Ableverse 创始人,技术推广大使。开源项目 WoW (内含 ToB 对象数据库)和 SecureJSH 创建者。目前致力于东道组件接合(Hosting Based Interfacing)理论研究,在此基础上的软件并行分布架构及对象数据库应用,技术博客 http://complystill.javaeye.com/ 。欲参与 InfoQ 中文站内容建设,请邮件至 china-editorial[at]infoq.com

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2007-09-03 02:301158

评论

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

毕业两年就拿到腾讯,字节offer,原来是看了这份BAT总结的面试核心知识点

Java架构师迁哥

三面遭SpringCloudAlibaba暴锤,含恨吃透大佬的手抄本笔记(听说Github都没有),终入阿里

Java 编程 架构 面试 微服务

王者荣耀异地多活架构设计

Lane

免费分享Java高并发与多线程的优秀图书

Java入门到架构

Java 推荐书籍

Reactor响应式编程,你只差这个!

CodeWithBuff

Java reactor

整整奋战6个月,入职字节跳动那一天,我泪目了

Java架构师迁哥

成功拿到饿了么offer后!我总结 5月上半月大厂面试真题,押题命中率高达 95%以上

Java 程序员 架构 面试

【架构设计模块一】:微信业务架构图 & 学生管理系统

Ryoma

架构实战营

Git点赞82K!阿里量产的保姆级Spring Security笔记,一眼望穿干货满满!

Java 编程 架构 面试

IPFS矿机怎么挖矿IPFS矿机工作原理

足足13万字,腾讯架构师纯手肝“JDK源码笔记”带你从入门到实战!

Java架构师迁哥

【LeetCode】根据字符出现频率排序Java题解

Albert

算法 LeetCode 7月日更

Token Pocket钱包DAPP系统开发

Geek_23f0c3

区块链 dapp DAPP系统开发 token pocket

Java线程映射到操作系统线程原理浅析

CodeWithBuff

Java JVM

杀进腾讯你知道多难吗?6个小时,4 轮技术面+1 轮 HR面,面到吐才斩获40k*16 薪offer!

Java架构师迁哥

凌晨起来肝的一篇 Java 学习路线,保证学弟学妹们大三大四的时候顺利找到实习 Offer

《持之以恒的从事运动》一

Changing Lin

数字科技这类人才是银行急需的

CECBC

Redisson 分布式锁源码 02:看门狗

程序员小航

Java redis 源码 分布式锁 redisson

公开吧!腾讯技术专家手撸“Redis技术笔记”,下载量已突破30W

redis 编程 架构 面试

web messaging与Woker分类:漫谈postMessage跨线程跨页面通信

zhoulujun

Service Worker

ServiceWorker工作机制与生命周期:资源缓存与协作通信处理

zhoulujun

Service Worker

慕了没?3年经验,3轮技术面+1轮HR面,拿下字节30k*16薪offer

Java架构师迁哥

Hive解析Json数组超全讲解

五分钟学大数据

hive 7月日更

微信业务架构图和“学生管理系统”毕业架构设计

NewBranSTONE

#架构实战营

完美收官!字节4面斩下2-2Offer,入职就是30K16薪,全凭这套“面试+架构进阶知识点”pdf

Java 程序员 架构 面试

分布式认知工业互联网赋能工业企业数字化转型

CECBC

北鲲云探索云计算在生命科学领域更多的应用场景

北鲲云

不收藏你就后悔吧!费了三天才从GitHub上扒下的阿里Java优化笔记

Java架构师迁哥

MySQL开篇

卢卡多多

架构 MySQL 数据库 7月日更

一站到底!Spring Cloud Alibaba第三版耀世升级全彩PDF版

Java架构师迁哥

并行编程:并行层次(Parallel Hierarchies)模式_架构_Sadek Drobi_InfoQ精选文章