迈向透明高效的软件分布式共享内存

D. Scales, K. Gharachorloo
{"title":"迈向透明高效的软件分布式共享内存","authors":"D. Scales, K. Gharachorloo","doi":"10.1145/268998.266673","DOIUrl":null,"url":null,"abstract":"Despite a large research effort, software distributed shared memory systems have not been widely used to run parallel applications across clusters of computers. The higher performance of hardware multiprocessors makes them the preferred platform for developing and executing applications. In addition, most applications are distributed only in binary format for a handful of popular hardware systems. Due to their limited functionality, software systems cannot directly execute the applications developed for hardware platforms. We have developed a system called Shasta that attempts to address the issues of efficiency and transparency that have hindered wider acceptance of software systems. Shasta is a distributed shared memory system that supports coherence at a fine granularity in software and can efficiently exploit small-scale SMP nodes by allowing processes on the same node to share data at hardware speeds. Thispaper focuses onourgoal oftappingintolarge classes of commercially available applications by transparently executing the same binaries that run on hardware platforms. We discuss the issues involved in achieving transparent execution of binaries, which include supportingthe full instruction set architecture, implementing an appropriate memory consistency model, and extending OS services across separate nodes. We also describe the techniques used in Shasta to solve the above problems. The Shasta system is fully functional on a prototype cluster of Alpha multiprocessors connected through Digital’s Memory Channel network and can transparentlyrunparallelapplicationsontheclusterthatwere compiled to run on a single shared-memory multiprocessor. As an example of Shasta’s flexibility, it can execute Oracle 7.3, a commercial database engine, across the cluster, includingworkloadsmodeled after theTPC-B and TPC-D database benchmarks. To characterize the performance of the system and the cost of providing complete transparency, we present performance results for microbenchmarks and applications runningon the cluster, include preliminary results for Oracle runs.","PeriodicalId":340271,"journal":{"name":"Proceedings of the sixteenth ACM symposium on Operating systems principles","volume":"55 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1997-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"63","resultStr":"{\"title\":\"Towards transparent and efficient software distributed shared memory\",\"authors\":\"D. Scales, K. Gharachorloo\",\"doi\":\"10.1145/268998.266673\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Despite a large research effort, software distributed shared memory systems have not been widely used to run parallel applications across clusters of computers. The higher performance of hardware multiprocessors makes them the preferred platform for developing and executing applications. In addition, most applications are distributed only in binary format for a handful of popular hardware systems. Due to their limited functionality, software systems cannot directly execute the applications developed for hardware platforms. We have developed a system called Shasta that attempts to address the issues of efficiency and transparency that have hindered wider acceptance of software systems. Shasta is a distributed shared memory system that supports coherence at a fine granularity in software and can efficiently exploit small-scale SMP nodes by allowing processes on the same node to share data at hardware speeds. Thispaper focuses onourgoal oftappingintolarge classes of commercially available applications by transparently executing the same binaries that run on hardware platforms. We discuss the issues involved in achieving transparent execution of binaries, which include supportingthe full instruction set architecture, implementing an appropriate memory consistency model, and extending OS services across separate nodes. We also describe the techniques used in Shasta to solve the above problems. The Shasta system is fully functional on a prototype cluster of Alpha multiprocessors connected through Digital’s Memory Channel network and can transparentlyrunparallelapplicationsontheclusterthatwere compiled to run on a single shared-memory multiprocessor. As an example of Shasta’s flexibility, it can execute Oracle 7.3, a commercial database engine, across the cluster, includingworkloadsmodeled after theTPC-B and TPC-D database benchmarks. To characterize the performance of the system and the cost of providing complete transparency, we present performance results for microbenchmarks and applications runningon the cluster, include preliminary results for Oracle runs.\",\"PeriodicalId\":340271,\"journal\":{\"name\":\"Proceedings of the sixteenth ACM symposium on Operating systems principles\",\"volume\":\"55 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1997-10-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"63\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the sixteenth ACM symposium on Operating systems principles\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/268998.266673\",\"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 of the sixteenth ACM symposium on Operating systems principles","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/268998.266673","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 63

摘要

尽管做了大量的研究工作,软件分布式共享内存系统还没有被广泛用于跨计算机集群运行并行应用程序。硬件多处理器的更高性能使其成为开发和执行应用程序的首选平台。此外,大多数应用程序仅以二进制格式分发给少数流行的硬件系统。由于功能有限,软件系统不能直接执行为硬件平台开发的应用程序。我们开发了一个叫做Shasta的系统,试图解决效率和透明度的问题,这些问题阻碍了软件系统的广泛接受。Shasta是一个分布式共享内存系统,在软件中支持细粒度的一致性,并且可以通过允许同一节点上的进程以硬件速度共享数据来有效地利用小规模的SMP节点。本文的重点是通过透明地执行在硬件平台上运行的相同二进制文件来开发大型商用应用程序的目标。我们讨论了实现二进制文件透明执行所涉及的问题,包括支持完整的指令集架构,实现适当的内存一致性模型,以及跨独立节点扩展操作系统服务。我们还描述了在沙斯塔用来解决上述问题的技术。Shasta系统在Alpha多处理器的原型集群上功能齐全,通过Digital的内存通道网络连接,可以透明地在集群中运行并行应用程序,这些应用程序被编译为在单个共享内存多处理器上运行。作为Shasta灵活性的一个例子,它可以跨集群执行Oracle 7.3,一个商业数据库引擎,包括在tpc - b和TPC-D数据库基准测试后建模的工作负载。为了描述系统的性能和提供完全透明的成本,我们给出了在集群上运行的微基准测试和应用程序的性能结果,包括Oracle运行的初步结果。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Towards transparent and efficient software distributed shared memory
Despite a large research effort, software distributed shared memory systems have not been widely used to run parallel applications across clusters of computers. The higher performance of hardware multiprocessors makes them the preferred platform for developing and executing applications. In addition, most applications are distributed only in binary format for a handful of popular hardware systems. Due to their limited functionality, software systems cannot directly execute the applications developed for hardware platforms. We have developed a system called Shasta that attempts to address the issues of efficiency and transparency that have hindered wider acceptance of software systems. Shasta is a distributed shared memory system that supports coherence at a fine granularity in software and can efficiently exploit small-scale SMP nodes by allowing processes on the same node to share data at hardware speeds. Thispaper focuses onourgoal oftappingintolarge classes of commercially available applications by transparently executing the same binaries that run on hardware platforms. We discuss the issues involved in achieving transparent execution of binaries, which include supportingthe full instruction set architecture, implementing an appropriate memory consistency model, and extending OS services across separate nodes. We also describe the techniques used in Shasta to solve the above problems. The Shasta system is fully functional on a prototype cluster of Alpha multiprocessors connected through Digital’s Memory Channel network and can transparentlyrunparallelapplicationsontheclusterthatwere compiled to run on a single shared-memory multiprocessor. As an example of Shasta’s flexibility, it can execute Oracle 7.3, a commercial database engine, across the cluster, includingworkloadsmodeled after theTPC-B and TPC-D database benchmarks. To characterize the performance of the system and the cost of providing complete transparency, we present performance results for microbenchmarks and applications runningon the cluster, include preliminary results for Oracle runs.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信