首页 > 最新文献

ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity最新文献

英文 中文
A programmatic introduction to Neo4j Neo4j的编程介绍
J. Webber
In this workshop we provide a hands-on introduction to the popular open source graph database Neo4j [1] through fixing a series of increasingly sophisticated, but broken, test cases each of which highlights an important graph modeling or API affordance.
在这个研讨会中,我们通过修复一系列日益复杂但破碎的测试用例,提供了流行的开源图形数据库Neo4j的实际介绍[1],每个测试用例都突出了一个重要的图形建模或API功能。
{"title":"A programmatic introduction to Neo4j","authors":"J. Webber","doi":"10.1145/2384716.2384777","DOIUrl":"https://doi.org/10.1145/2384716.2384777","url":null,"abstract":"In this workshop we provide a hands-on introduction to the popular open source graph database Neo4j [1] through fixing a series of increasingly sophisticated, but broken, test cases each of which highlights an important graph modeling or API affordance.","PeriodicalId":194590,"journal":{"name":"ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121940136","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 304
Advanced debugging techniques to identify concurrency bugs in actor-based programs 高级调试技术,用于识别基于角色的程序中的并发错误
Carmen Torres Lopez
Actor-based programs are not exempt from concurrency bugs. Inspiring contributions for debugging actor-based programs have been developed, however there is no approach that reliably identifies the root cause of complex concurrency bugs. Solving this problem can result in a reduction of the debugging time that programmers spend when developing concurrent applications. I propose a debugging approach based on the combination of offline debugging techniques that aim to help developers in the process of finding the root cause of concurrency bugs. I plan to evaluate this proposal through user studies and performance evaluation.
基于actor的程序也不能避免并发错误。在调试基于参与者的程序方面已经有了一些鼓舞人心的贡献,但是没有一种方法可以可靠地识别复杂并发错误的根本原因。解决这个问题可以减少程序员在开发并发应用程序时花费的调试时间。我提出了一种基于离线调试技术组合的调试方法,旨在帮助开发人员找到并发错误的根本原因。我计划通过用户研究和性能评估来评估这个提案。
{"title":"Advanced debugging techniques to identify concurrency bugs in actor-based programs","authors":"Carmen Torres Lopez","doi":"10.1145/3135932.3135936","DOIUrl":"https://doi.org/10.1145/3135932.3135936","url":null,"abstract":"Actor-based programs are not exempt from concurrency bugs. Inspiring contributions for debugging actor-based programs have been developed, however there is no approach that reliably identifies the root cause of complex concurrency bugs. Solving this problem can result in a reduction of the debugging time that programmers spend when developing concurrent applications. I propose a debugging approach based on the combination of offline debugging techniques that aim to help developers in the process of finding the root cause of concurrency bugs. I plan to evaluate this proposal through user studies and performance evaluation.","PeriodicalId":194590,"journal":{"name":"ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-10-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134082494","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Machine learning for programming 用于编程的机器学习
Peter Norvig
If you want to recognize speech or filter out spam emails, you will probably write a machine learning algorithm and will not try to write the whole program using a "traditional" software specification and implementation. There are many examples of successful machine learning solutions, but can we more broadly apply the techniques to most or all software problems, and for most or all programmers, from the novice in their first programming course to the seasoned professional?
如果你想识别语音或过滤掉垃圾邮件,你可能会编写一个机器学习算法,而不会尝试使用“传统”软件规范和实现来编写整个程序。有许多成功的机器学习解决方案的例子,但是我们是否可以更广泛地将这些技术应用于大多数或所有软件问题,并适用于大多数或所有程序员,从第一次编程课程的新手到经验丰富的专业人员?
{"title":"Machine learning for programming","authors":"Peter Norvig","doi":"10.1145/2660252.2661744","DOIUrl":"https://doi.org/10.1145/2660252.2661744","url":null,"abstract":"If you want to recognize speech or filter out spam emails, you will probably write a machine learning algorithm and will not try to write the whole program using a \"traditional\" software specification and implementation. There are many examples of successful machine learning solutions, but can we more broadly apply the techniques to most or all software problems, and for most or all programmers, from the novice in their first programming course to the seasoned professional?","PeriodicalId":194590,"journal":{"name":"ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122388200","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
DSLDI 2014: second workshop on domain specific languages design and implementation DSLDI 2014:第二次领域特定语言设计和实现研讨会
Sebastian Erdweg, Adam Welc
The Second Workshop on Domain Specific Languages Design and Implementation (DSLDI 2014) is collocated with SPLASH 2014 conference and held in Portland, Oregon, USA on October 20th 2014. The goal of the DSLDI workshop is to bring together researchers and practitioners interested in sharing ideas on how Domain Specific Languages (DSLs) should be designed, implemented, supported by tools, and applied in realistic application contexts. More generally, we are interested in building a community that can drive forward the development of modern DSLs.
第二届领域特定语言设计与实现研讨会(DSLDI 2014)于2014年10月20日在美国俄勒冈州波特兰市举行。DSLDI研讨会的目标是将有兴趣分享领域特定语言(dsl)应该如何设计、实现、由工具支持以及在实际应用环境中应用的想法的研究人员和实践者聚集在一起。更一般地说,我们有兴趣建立一个能够推动现代dsl发展的社区。
{"title":"DSLDI 2014: second workshop on domain specific languages design and implementation","authors":"Sebastian Erdweg, Adam Welc","doi":"10.1145/2660252.2663600","DOIUrl":"https://doi.org/10.1145/2660252.2663600","url":null,"abstract":"The Second Workshop on Domain Specific Languages Design and Implementation (DSLDI 2014) is collocated with SPLASH 2014 conference and held in Portland, Oregon, USA on October 20th 2014. The goal of the DSLDI workshop is to bring together researchers and practitioners interested in sharing ideas on how Domain Specific Languages (DSLs) should be designed, implemented, supported by tools, and applied in realistic application contexts. More generally, we are interested in building a community that can drive forward the development of modern DSLs.","PeriodicalId":194590,"journal":{"name":"ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114306502","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
SEPS 2014: first international workshop on software engineering for parallel systems SEPS 2014:第一届并行系统软件工程国际研讨会
A. Jannesari, F. Wolf, W. Tichy
The first international workshop on Software Engineering for Parallel Systems (SEPS) will be held in Portland, Oregon, USA on October 21, 2014 and co-located with the ACM SIGPLAN conference on Systems, Programming, Languages and Applications: Software for Humanity (SPLASH 2014). The purpose of this workshop is to provide a stable forum for researchers and practitioners dealing with compelling challenges of the software development life cycle on modern parallel platforms. The increased complexity of parallel applications on modern parallel platforms (e.g. multicore, manycore, distributed or hybrid) requires more insight into development processes, and necessitates the use of advanced methods and techniques supporting developers in creating parallel applications or parallelizing and reengineering sequential legacy applications. We aim to advance the state of the art in different phases of parallel software development, covering software engineering aspects such as requirements engineering and software specification; design and implementation; program analysis, profiling and tuning; testing and debugging.
首届并行系统软件工程国际研讨会(SEPS)将于2014年10月21日在美国俄勒冈州波特兰举行,并与ACM SIGPLAN系统、编程、语言和应用会议(SPLASH 2014)同地举行。本次研讨会的目的是为研究人员和从业者提供一个稳定的论坛,以应对现代并行平台上软件开发生命周期中令人信服的挑战。现代并行平台(如多核、多核、分布式或混合)上并行应用程序的复杂性增加,需要对开发过程有更深入的了解,并且需要使用先进的方法和技术来支持开发人员创建并行应用程序或并行化和重新设计顺序遗留应用程序。我们的目标是在并行软件开发的不同阶段提升技术水平,涵盖软件工程方面,例如需求工程和软件规格说明;设计与实现;程序分析、分析和调优;测试和调试。
{"title":"SEPS 2014: first international workshop on software engineering for parallel systems","authors":"A. Jannesari, F. Wolf, W. Tichy","doi":"10.1145/2660252.2663602","DOIUrl":"https://doi.org/10.1145/2660252.2663602","url":null,"abstract":"The first international workshop on Software Engineering for Parallel Systems (SEPS) will be held in Portland, Oregon, USA on October 21, 2014 and co-located with the ACM SIGPLAN conference on Systems, Programming, Languages and Applications: Software for Humanity (SPLASH 2014). The purpose of this workshop is to provide a stable forum for researchers and practitioners dealing with compelling challenges of the software development life cycle on modern parallel platforms. The increased complexity of parallel applications on modern parallel platforms (e.g. multicore, manycore, distributed or hybrid) requires more insight into development processes, and necessitates the use of advanced methods and techniques supporting developers in creating parallel applications or parallelizing and reengineering sequential legacy applications. We aim to advance the state of the art in different phases of parallel software development, covering software engineering aspects such as requirements engineering and software specification; design and implementation; program analysis, profiling and tuning; testing and debugging.","PeriodicalId":194590,"journal":{"name":"ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","volume":"75 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115802962","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
ETX'14: 2014 workshop on eclipse technology exchange ETX'14: 2014 eclipse技术交流研讨会
Jan S. Rellermeyer, Tim Verbelen
The Eclipse platform was originally designed for building an integrated development environment for object-oriented applications. Over the years it has developed into a vibrant ecosystem of platforms, toolkits, libraries, modeling frameworks, and tools that support various languages and programming styles. The sixth ETX workshop provides a platform for researchers and practitioners to transfer knowledge about the Eclipse Platform and exchange new ideas. It is held in Portland, OR on October 21, 2014 and is co-located with SPLASH 2014.
Eclipse平台最初是为构建面向对象应用程序的集成开发环境而设计的。多年来,它已经发展成为一个充满活力的生态系统,包括支持各种语言和编程风格的平台、工具包、库、建模框架和工具。第六届ETX研讨会为研究人员和实践者提供了一个平台,以传递有关Eclipse平台的知识并交换新的想法。它将于2014年10月21日在俄勒冈州波特兰举行,并与2014年SPLASH同期举行。
{"title":"ETX'14: 2014 workshop on eclipse technology exchange","authors":"Jan S. Rellermeyer, Tim Verbelen","doi":"10.1145/2660252.2662143","DOIUrl":"https://doi.org/10.1145/2660252.2662143","url":null,"abstract":"The Eclipse platform was originally designed for building an integrated development environment for object-oriented applications. Over the years it has developed into a vibrant ecosystem of platforms, toolkits, libraries, modeling frameworks, and tools that support various languages and programming styles. The sixth ETX workshop provides a platform for researchers and practitioners to transfer knowledge about the Eclipse Platform and exchange new ideas. It is held in Portland, OR on October 21, 2014 and is co-located with SPLASH 2014.","PeriodicalId":194590,"journal":{"name":"ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","volume":"179 2","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120987175","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Agile programming with executable models: an open-source, standards-based eclipse environment 使用可执行模型的敏捷编程:开源的、基于标准的eclipse环境
E. Seidewitz, A. Cuccuru
Why can it be so hard to extract the "truth" from the code, especially on important big-picture, architectural issues in large systems? Models designed for human understanding can display these things much more clearly, but how do you keep the models in sync with the code? Well, suppose the model was the code -- then you could have the best of both worlds! This is, indeed, possible, as is demonstrated using a combination of standard UML graphical class modeling and standard Alf action language programming, all based on a common, standard executable semantic foundation, new capabilities implemented in the Eclipse Papyrus UML tool. The result is a step toward a next generation agile programming environment.
为什么从代码中提取“真相”会如此困难,特别是在大型系统中重要的全局架构问题上?为人类理解而设计的模型可以更清楚地显示这些东西,但是如何使模型与代码保持同步呢?那么,假设模型就是代码——那么您就可以两全其美了!这确实是可能的,正如使用标准UML图形类建模和标准Alf动作语言编程的组合所演示的那样,所有这些都基于通用的、标准的可执行语义基础,以及Eclipse Papyrus UML工具中实现的新功能。其结果是向下一代敏捷编程环境迈出了一步。
{"title":"Agile programming with executable models: an open-source, standards-based eclipse environment","authors":"E. Seidewitz, A. Cuccuru","doi":"10.1145/2660252.2664664","DOIUrl":"https://doi.org/10.1145/2660252.2664664","url":null,"abstract":"Why can it be so hard to extract the \"truth\" from the code, especially on important big-picture, architectural issues in large systems? Models designed for human understanding can display these things much more clearly, but how do you keep the models in sync with the code? Well, suppose the model was the code -- then you could have the best of both worlds! This is, indeed, possible, as is demonstrated using a combination of standard UML graphical class modeling and standard Alf action language programming, all based on a common, standard executable semantic foundation, new capabilities implemented in the Eclipse Papyrus UML tool. The result is a step toward a next generation agile programming environment.","PeriodicalId":194590,"journal":{"name":"ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131374846","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
East meets west: the influences of geography on software production 东方与西方相遇:地理对软件生产的影响
S. Fraser, D. Mancl, A. Namioka, R. Salama, Allen Wirfs-Brock
How do software development practices differ from coast-to-coast? What should practitioners learn about the influences of geography -- and why is it important? Each community of software professionals has its own technical biases: preferred programming languages, software tools, design paradigms, software testing approaches, and techniques for collaboration within a working group. Conferences like SPLASH provide an opportunity to compare notes, to learn from the successes (and failures) of others, to learn about new technologies, and to learn about how other groups communicate and collaborate. This panel will focus on the diversity of software development practices in North America and the broader influences of geography.
东海岸到西海岸的软件开发实践有什么不同?关于地理的影响,从业者应该了解什么?为什么地理很重要?每个软件专业人员社区都有自己的技术偏见:首选的编程语言、软件工具、设计范例、软件测试方法,以及工作组内协作的技术。像SPLASH这样的会议提供了一个比较笔记、从他人的成功(和失败)中学习、学习新技术以及学习其他团队如何沟通和协作的机会。这个小组将集中讨论北美软件开发实践的多样性以及地理的广泛影响。
{"title":"East meets west: the influences of geography on software production","authors":"S. Fraser, D. Mancl, A. Namioka, R. Salama, Allen Wirfs-Brock","doi":"10.1145/2660252.2661293","DOIUrl":"https://doi.org/10.1145/2660252.2661293","url":null,"abstract":"How do software development practices differ from coast-to-coast? What should practitioners learn about the influences of geography -- and why is it important? Each community of software professionals has its own technical biases: preferred programming languages, software tools, design paradigms, software testing approaches, and techniques for collaboration within a working group. Conferences like SPLASH provide an opportunity to compare notes, to learn from the successes (and failures) of others, to learn about new technologies, and to learn about how other groups communicate and collaborate. This panel will focus on the diversity of software development practices in North America and the broader influences of geography.","PeriodicalId":194590,"journal":{"name":"ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127051807","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 5
TD 2014: workshop on technical debt in a world of big data and big teams TD 2014:关于大数据和大团队世界中的技术债务的研讨会
D. Mancl, S. Fraser
Technical debt is an unavoidable part of software development in today's fast-paced market, but it is ignored by many of the people who should care about it most. In large systems, a portion of the accumulating technical debt is just "sloppy design" caused by schedule pressure and other project forces. But the most important part of technical debt is directly related to project size and data complexity. How much technical debt is about large development teams and geographical distribution? How do current "big data" techniques (Hadoop, NoSQL, parallel algorithms, MapReduce) relate to technical debt issues? This workshop explored strategies for understanding the impact of technical debt. If we believe that technical debt is an important issue in long-term software product development, do we have ways to keep the technical debt from causing development gridlock?
在当今快节奏的市场中,技术债务是软件开发中不可避免的一部分,但它却被许多应该最关心它的人所忽视。在大型系统中,累积的技术债务的一部分只是由进度压力和其他项目力量引起的“草率设计”。但是技术债务中最重要的部分与项目规模和数据复杂性直接相关。关于大型开发团队和地理分布的技术债务有多少?当前的“大数据”技术(Hadoop、NoSQL、并行算法、MapReduce)与技术债务问题有什么关系?本次研讨会探讨了理解技术债务影响的策略。如果我们相信技术债务是长期软件产品开发中的一个重要问题,我们是否有办法避免技术债务导致开发僵局?
{"title":"TD 2014: workshop on technical debt in a world of big data and big teams","authors":"D. Mancl, S. Fraser","doi":"10.1145/2660252.2663599","DOIUrl":"https://doi.org/10.1145/2660252.2663599","url":null,"abstract":"Technical debt is an unavoidable part of software development in today's fast-paced market, but it is ignored by many of the people who should care about it most. In large systems, a portion of the accumulating technical debt is just \"sloppy design\" caused by schedule pressure and other project forces. But the most important part of technical debt is directly related to project size and data complexity. How much technical debt is about large development teams and geographical distribution? How do current \"big data\" techniques (Hadoop, NoSQL, parallel algorithms, MapReduce) relate to technical debt issues? This workshop explored strategies for understanding the impact of technical debt. If we believe that technical debt is an important issue in long-term software product development, do we have ways to keep the technical debt from causing development gridlock?","PeriodicalId":194590,"journal":{"name":"ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122080947","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
HJ-Viz: a new tool for visualizing, debugging and optimizing parallel programs HJ-Viz:一个用于可视化、调试和优化并行程序的新工具
Peter Elmers, Hongyu Li, S. Imam, Vivek Sarkar
The proliferation of multicore processors warrants parallelism as the future of computing, increasing the demand to write parallel programs for increased application performance. Previous experience has shown that writing explicitly parallel programs is inherently more difficult than writing sequential programs. Programmers need parallel programming models, constructs, and tools that can simplify writing of parallel programs. In this poster, we present an innovative new tool, HJ-Viz, which generates interactive Computation Graphs (CGs) of parallel programs by analyzing event logs. The visual feedback is valuable for a programmer to efficiently optimize program logic and to eliminate the presence of potential bugs which may otherwise be difficult to detect. For example, in cases of deadlocks, HJ-Viz enables users to visualize and easily diagnose the deadlock scenario. Programmers can use the visualization of the CG by HJ-Viz to pinpoint potential sources of bugs and points of improvement for parallel performance. HJ-Viz highlights the program's critical paths and displays the amount of work performed in each step of computation based on the collected abstract execution metrics. Our event logging infrastructure also maintains precise source code locations for each event, allowing HJ-Viz to display the code involved in the creation of every node in the CG.
多核处理器的激增保证了并行性是计算的未来,增加了编写并行程序以提高应用程序性能的需求。以往的经验表明,编写显式并行程序比编写顺序程序本质上要困难得多。程序员需要能够简化并行程序编写的并行编程模型、结构和工具。在这张海报中,我们展示了一个创新的新工具,HJ-Viz,它通过分析事件日志生成并行程序的交互式计算图(CGs)。视觉反馈对于程序员有效地优化程序逻辑和消除可能难以检测到的潜在错误是有价值的。例如,在死锁的情况下,HJ-Viz使用户能够可视化并轻松地诊断死锁场景。程序员可以使用HJ-Viz的CG可视化来确定潜在的bug来源和并行性能的改进点。HJ-Viz突出显示程序的关键路径,并根据收集的抽象执行度量显示计算的每个步骤中执行的工作量。我们的事件日志基础设施还维护每个事件的精确源代码位置,允许HJ-Viz在CG中显示创建每个节点所涉及的代码。
{"title":"HJ-Viz: a new tool for visualizing, debugging and optimizing parallel programs","authors":"Peter Elmers, Hongyu Li, S. Imam, Vivek Sarkar","doi":"10.1145/2660252.2660395","DOIUrl":"https://doi.org/10.1145/2660252.2660395","url":null,"abstract":"The proliferation of multicore processors warrants parallelism as the future of computing, increasing the demand to write parallel programs for increased application performance. Previous experience has shown that writing explicitly parallel programs is inherently more difficult than writing sequential programs. Programmers need parallel programming models, constructs, and tools that can simplify writing of parallel programs. In this poster, we present an innovative new tool, HJ-Viz, which generates interactive Computation Graphs (CGs) of parallel programs by analyzing event logs. The visual feedback is valuable for a programmer to efficiently optimize program logic and to eliminate the presence of potential bugs which may otherwise be difficult to detect. For example, in cases of deadlocks, HJ-Viz enables users to visualize and easily diagnose the deadlock scenario.\u0000 Programmers can use the visualization of the CG by HJ-Viz to pinpoint potential sources of bugs and points of improvement for parallel performance. HJ-Viz highlights the program's critical paths and displays the amount of work performed in each step of computation based on the collected abstract execution metrics. Our event logging infrastructure also maintains precise source code locations for each event, allowing HJ-Viz to display the code involved in the creation of every node in the CG.","PeriodicalId":194590,"journal":{"name":"ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114949627","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
期刊
ACM SIGPLAN International Conference on Systems, Programming, Languages and Applications: Software for Humanity
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
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