使用pthread和rthread进行并行和分布式编程

Bernd Dreier, Markus Zahn, T. Ungerer
{"title":"使用pthread和rthread进行并行和分布式编程","authors":"Bernd Dreier, Markus Zahn, T. Ungerer","doi":"10.1109/HIPS.1998.665141","DOIUrl":null,"url":null,"abstract":"The paper describes Rthreads (Remote threads), a software distributed shared memory system that supports sharing of global variables on clusters of computers with physically distributed memory. Other DSM systems either use virtual memory to implement coherence on networks of workstations or require programmers to adopt a special programming model. Rthreads uses primitives to read and write remote data and to synchronize remote accesses similar to the DSM systems that are based on special programming models. Unique aspects of Rthreads are: the primitives are syntactically and semantically closely related to the POSIX thread model (Pthreads). A precompiler automatically transforms Pthreads (source) programs into Rthreads (source) programs. After the transformation the programmer is still able to alter the Rthreads code for optimizing run time. Moreover Pthreads and Rthreads can be mixed within a single program. We support heterogeneous workstation clusters by implementing the Rthreads system on top of PVM, MPI and DCE. We demonstrate that programmer based optimizations may reach a significant performance increase. Our performance results show that the Rthreads system introduces few overhead compared to equivalent programs in the baseline system PVM, and a superior performance compared to the DSM systems, Adsmith and CVM.","PeriodicalId":179985,"journal":{"name":"Proceedings Third International Workshop on High-Level Parallel Programming Models and Supportive Environments","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"1998-03-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"11","resultStr":"{\"title\":\"Parallel and distributed programming with Pthreads and Rthreads\",\"authors\":\"Bernd Dreier, Markus Zahn, T. Ungerer\",\"doi\":\"10.1109/HIPS.1998.665141\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The paper describes Rthreads (Remote threads), a software distributed shared memory system that supports sharing of global variables on clusters of computers with physically distributed memory. Other DSM systems either use virtual memory to implement coherence on networks of workstations or require programmers to adopt a special programming model. Rthreads uses primitives to read and write remote data and to synchronize remote accesses similar to the DSM systems that are based on special programming models. Unique aspects of Rthreads are: the primitives are syntactically and semantically closely related to the POSIX thread model (Pthreads). A precompiler automatically transforms Pthreads (source) programs into Rthreads (source) programs. After the transformation the programmer is still able to alter the Rthreads code for optimizing run time. Moreover Pthreads and Rthreads can be mixed within a single program. We support heterogeneous workstation clusters by implementing the Rthreads system on top of PVM, MPI and DCE. We demonstrate that programmer based optimizations may reach a significant performance increase. Our performance results show that the Rthreads system introduces few overhead compared to equivalent programs in the baseline system PVM, and a superior performance compared to the DSM systems, Adsmith and CVM.\",\"PeriodicalId\":179985,\"journal\":{\"name\":\"Proceedings Third International Workshop on High-Level Parallel Programming Models and Supportive Environments\",\"volume\":null,\"pages\":null},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1998-03-30\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"11\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings Third International Workshop on High-Level Parallel Programming Models and Supportive Environments\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/HIPS.1998.665141\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings Third International Workshop on High-Level Parallel Programming Models and Supportive Environments","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/HIPS.1998.665141","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 11

摘要

Rthreads (Remote threads)是一种软件分布式共享内存系统,它支持在具有物理分布式内存的计算机集群上共享全局变量。其他DSM系统要么使用虚拟内存在工作站网络上实现一致性,要么要求程序员采用特殊的编程模型。Rthreads使用原语来读写远程数据,并同步远程访问,这与基于特殊编程模型的DSM系统类似。rthread的独特之处在于:原语在语法和语义上与POSIX线程模型(Pthreads)密切相关。预编译器会自动将Pthreads(源)程序转换为Rthreads(源)程序。转换之后,程序员仍然能够修改Rthreads代码以优化运行时。此外,pthread和rthread可以在单个程序中混合使用。我们通过在PVM、MPI和DCE之上实现Rthreads系统来支持异构工作站集群。我们证明了基于程序员的优化可以显著提高性能。我们的性能结果表明,与基线系统PVM中的等效程序相比,Rthreads系统引入的开销很少,并且与DSM系统、Adsmith和CVM相比具有优越的性能。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
Parallel and distributed programming with Pthreads and Rthreads
The paper describes Rthreads (Remote threads), a software distributed shared memory system that supports sharing of global variables on clusters of computers with physically distributed memory. Other DSM systems either use virtual memory to implement coherence on networks of workstations or require programmers to adopt a special programming model. Rthreads uses primitives to read and write remote data and to synchronize remote accesses similar to the DSM systems that are based on special programming models. Unique aspects of Rthreads are: the primitives are syntactically and semantically closely related to the POSIX thread model (Pthreads). A precompiler automatically transforms Pthreads (source) programs into Rthreads (source) programs. After the transformation the programmer is still able to alter the Rthreads code for optimizing run time. Moreover Pthreads and Rthreads can be mixed within a single program. We support heterogeneous workstation clusters by implementing the Rthreads system on top of PVM, MPI and DCE. We demonstrate that programmer based optimizations may reach a significant performance increase. Our performance results show that the Rthreads system introduces few overhead compared to equivalent programs in the baseline system PVM, and a superior performance compared to the DSM systems, Adsmith and CVM.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Improving performance of multi-dimensional array redistribution on distributed memory machines ViC*: a compiler for virtual-memory C* ZPL's WYSIWYG performance model Implementing automatic coordination on networks of workstations Language bindings for a data-parallel runtime
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1