跳到主要内容
10.1145/1596550.1596588acm会议文章/章节视图摘要出版物页面国际货币基金组织会议记录会议集合
研究论文

并行并发ML

出版:2009年8月31日出版历史

摘要

并发ML(CML)是一种高级消息传递语言,支持构建称为事件的一级同步抽象。多年来,这一机制已被证明相当有效,并已被纳入许多其他语言。虽然CML提供了并发编程模型,但它的实现一直局限于单处理器。在实现作为事件机制基础的同步协议时利用了这一限制,但随着台式机(和笔记本电脑)上廉价并行处理的出现,现在是使用并行CML的时候了。

Java和Haskell存在类似CML的原语的并行实现,但构建在不太可能执行良好的高级同步构造上。本文提出了一种新颖的CML并行实现,该实现利用了一种专门构建的乐观并发协议,该协议旨在共享内存多处理器上实现正确性和性能。这项工作扩展并完成了一个早期的协议,该协议只支持CML的一个严格子集,并在输入时进行同步,但不支持输出事件。我们的主要贡献是协议的一个经过模型检查的参考实现和两个具体实现。本文重点介绍了Manticore的功能性、基于连续性的实现,但简要讨论了一个用C#编写并在Microsoft的库存并行运行时上运行的独立、基于线程的实现。虽然在细节上差别很大,但两者都源自同一设计。对Manticore实现的实验评估显示了良好的性能,消除了多处理器同步的额外开销。

跳过补充材料部分

补充材料

并行并发mlonvimeo.mp4

mp4型

98.2 MB

工具书类

  1. Bornat,R.广义occam协议。SP&E,16(9),1986年9月,第783-799页。谷歌学者谷歌学者数字图书馆数字图书馆
  2. 巴克利、G.N.和A.Silberschatz。CSP广义输入输出结构的有效实现。ACM TOPLAS,5(2),1983年4月,第223-235页。谷歌学者谷歌学者数字图书馆数字图书馆
  3. 这个。NET公共语言运行库。请参见http://msdn.microsoft.com/en-gb/netframework/。谷歌学者谷歌学者
  4. Chrysanthakopoulos,G.和S.Singh。C#的异步消息传递库。在面向对象语言的同步与并发(SCOOL)中,OOPSLA 2005研讨会。UR Research,2005年10月。谷歌学者谷歌学者
  5. Demaine,E.D.Java中的高阶并发。1997年4月,WoTUG20,第34-47页。可从以下位置获得http://theory.csail.mit.edu/edemaine/papers/WoTUG20/。谷歌学者谷歌学者
  6. Demaine,E.D.同步信道上非确定性通信的协议。1998年3月,IPPS/SDP'98,第24-30页。可从以下位置获得http://theory.csail.mit.edu/edemaine/papers/IPPS98/。谷歌学者谷歌学者数字图书馆数字图书馆
  7. Donnelly,K.和M.Fluet。事务性事件。2006年,美国俄勒冈州波特兰市,ICFP'06。ACM,第124-135页。谷歌学者谷歌学者数字图书馆数字图书馆
  8. 弗拉特,M.和R.B.芬德勒。Kill-safe同步抽象。2004年6月,PLDI’04,第47-58页。谷歌学者谷歌学者数字图书馆数字图书馆
  9. 7} manticore-ml07Fluet,M.、N.Ford、M.Rainey、J.Reppy、A.Shaw和Y.Xiao。状态报告:Manticore项目。2007年ML。ACM,2007年10月,第15-24页。谷歌学者谷歌学者数字图书馆数字图书馆
  10. Fluet,M.、M.Rainey和J.Reppy。通用并行语言的调度框架。2008年9月,加拿大不列颠哥伦比亚省维多利亚市,ICFP'08。ACM,第241--252页。谷歌学者谷歌学者数字图书馆数字图书馆
  11. 甘斯纳、E.R.和J.H.Reppy。《多线程高阶用户界面工具包》,《软件趋势》第1卷,第61-80页。约翰·威利;《儿子》,1993年。谷歌学者谷歌学者数字图书馆数字图书馆
  12. Herlihy,M.和N.Shavit。多处理机编程的艺术。摩根·考夫曼出版社,纽约,纽约,2008年。谷歌学者谷歌学者数字图书馆数字图书馆
  13. Knabe,F.一种用于基于信道的选择性通信的分布式协议。技术报告ECRC-92-16,欧洲计算机工业研究中心,1992年10月。谷歌学者谷歌学者交叉引用交叉引用
  14. Leroy,X.目标凸轮系统(3.00版),2000年4月。可从以下位置获得http://caml.inia.fr。谷歌学者谷歌学者
  15. mlton-与mlton一致。并发ML.可在http://mlton.org/ConcurrentML。谷歌学者谷歌学者
  16. Musuvathi,M.和S.Qadeer。用于多线程程序系统测试的迭代上下文边界。2007年6月,加利福尼亚州圣地亚哥,PLDI’07。ACM,第446--455页。谷歌学者谷歌学者数字图书馆数字图书馆
  17. Milner,R.、M.Tofte、R.Harper和D.MacQueen。标准ML的定义(修订版)。麻省理工学院出版社,马萨诸塞州剑桥,1997年。谷歌学者谷歌学者数字图书馆数字图书馆
  18. Reppy,J.H.同步操作是一流的价值观。1988年6月,PLDI’88,第250-259页。谷歌学者谷歌学者数字图书馆数字图书馆
  19. Reppy,J.H.CML:一种高阶并发语言。1991年PLDI。ACM,1991年6月,第293--305页。谷歌学者谷歌学者数字图书馆数字图书馆
  20. Reppy,J.H.《ML并发编程》,剑桥大学出版社,英国剑桥,1999年。谷歌学者谷歌学者数字图书馆数字图书馆
  21. Ritson,C.轻量级通信进程的多核调度。在2008年10月举行的并发系统语言和运行时支持研讨会上发表讲话。幻灯片可从http://www.mm-net.org.uk/workshop171008/mmw07-slides。谷歌学者谷歌学者
  22. Haskell中的Russell,G.Events,以及如何实现它们。2001年9月,ICFP’01,第157-168页。谷歌学者谷歌学者数字图书馆数字图书馆
  23. Reppy,J.和Y.Xiao。CML消息传递原语的专门化。在POPL'07中。ACM,2007年1月,第315-326页。谷歌学者谷歌学者数字图书馆数字图书馆
  24. Reppy,J.和Y.Xiao。2008年DAMP中并发ML的并行实现。ACM,2008年1月。谷歌学者谷歌学者
  25. TG2,E.T.C#语言规范。请参见http://www.ecma-international.org/publications/standards/ecma-334.htm。谷歌学者谷歌学者
  26. Vella,K.多处理器工作站异构网络上的无缝并行计算。坎特伯雷肯特大学博士论文,1998年12月。谷歌学者谷歌学者
  27. Young,C.、L.YN、T.Szymanski、J.Reppy、R.Pike、G.Narlikar、S.Mullender和E.Grosse。Protium,用于分区应用程序的基础结构。在HotOS-X中,2001年1月,第41-46页。谷歌学者谷歌学者交叉引用交叉引用

索引术语

  1. 并行并发ML

          建议

          评论

          登录选项

          检查您是否可以通过登录凭据或您的机构访问本文。

          登录

          完全访问权限

          • 发布于

            封面图片ACM会议
            ICFP’09:第14届ACM SIGPLAN功能编程国际会议记录
            2009年8月
            364页
            国际标准图书编号:9781605583327
            内政部:10.1145/1596550
            • 封面图片ACM SIGPLAN注意事项
              ACM SIGPLAN通知 第44卷第9期
              2009年ICFP
              2009年9月
              343页
              国际标准编号:0362-1340
              EISSN公司:1558-1160年
              内政部:10.1145/1631687
              问题目录

            版权所有©2009 ACM

            如果复制品不是为了盈利或商业利益而制作或分发的,并且复制品的第一页载有本通知和完整引文,则允许免费制作本作品的全部或部分数字或硬拷贝以供个人或课堂使用。必须尊重ACM以外的其他人拥有的本作品组件的版权。允许用信用证进行摘要。要以其他方式复制或重新发布,在服务器上发布或重新发布到列表,需要事先获得特定许可和/或付费。从请求权限[电子邮件保护]

            发布者

            计算机协会

            美国纽约州纽约市

            出版历史

            • 出版:2009年8月31日

            权限

            请求有关此文章的权限。

            请求权限

            检查更新

            限定符

            • 研究论文

            接受率

            总体验收率333属于1,064提交文件,31%

            即将召开的会议

            24年ICFP
            ACM SIGPLAN功能编程国际会议
            2024年9月9日至13日
            米兰,意大利

          PDF格式

          以PDF文件查看或下载。

          PDF格式

          电子阅读器

          使用eReader联机查看。

          电子阅读器