2020 IEEE/ACM 4th International Workshop on Software Correctness for HPC Applications (Correctness)最新文献

筛选
英文 中文
Correctness-preserving Compression of Datasets and Neural Network Models 数据集和神经网络模型的保持正确性压缩
Vinu Joseph, N. Chalapathi, Aditya Bhaskara, Ganesh Gopalakrishnan, P. Panchekha, Mu Zhang
{"title":"Correctness-preserving Compression of Datasets and Neural Network Models","authors":"Vinu Joseph, N. Chalapathi, Aditya Bhaskara, Ganesh Gopalakrishnan, P. Panchekha, Mu Zhang","doi":"10.1109/Correctness51934.2020.00006","DOIUrl":"https://doi.org/10.1109/Correctness51934.2020.00006","url":null,"abstract":"Neural networks deployed on edge devices must be efficient both in terms of their model size and the amount of data movement they cause when classifying inputs. These efficiencies are typically achieved through model compression: pruning a fully trained network model by zeroing out the weights. Given the overall challenge of neural network correctness, we argue that focusing on correctness preservation may allow the community to make measurable progress. We present a state-of-the-art model compression framework called Condensa around which we have launched correctness preservation studies. After presenting Condensa, we describe our initial efforts at understanding the effect of model compression in semantic terms, going beyond the top n% accuracy that Condensa is currently based on. We also take up the relatively unexplored direction of data compression that may help reduce data movement. We report preliminary results of learning from decompressed data to understand the effects of compression artifacts. Learning without decompressing input data also holds promise in terms of boosting efficiency, and we also report preliminary results in this regard. Our experiments centered around a state-of-the-art model compression framework called Condensa and two data compression algorithms, namely JPEG and ZFP, demonstrate the potential for employing model-and dataset compression without adversely affecting correctness.","PeriodicalId":412609,"journal":{"name":"2020 IEEE/ACM 4th International Workshop on Software Correctness for HPC Applications (Correctness)","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132476315","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
PARCOACH Extension for Static MPI Nonblocking and Persistent Communication Validation 用于静态MPI非阻塞和持久通信验证的PARCOACH扩展
V. M. Nguyen, Emmanuelle Saillard, Julien Jaeger, Denis Barthou, Patrick Carribault
{"title":"PARCOACH Extension for Static MPI Nonblocking and Persistent Communication Validation","authors":"V. M. Nguyen, Emmanuelle Saillard, Julien Jaeger, Denis Barthou, Patrick Carribault","doi":"10.1109/Correctness51934.2020.00009","DOIUrl":"https://doi.org/10.1109/Correctness51934.2020.00009","url":null,"abstract":"The Message Passing Interface (MPI) is a parallel programming model used to exchange data between working units in different nodes of a supercomputer. While MPI blocking operations return when the communication is complete, non-blocking and persistent operations return before the communication is complete, enabling a developer to hide communication latency. However the usage of these latter comes with additional rules the user has to abide to. This is error prone, which makes verification tools valuable for MPI program writers. PARCOACH is a framework that detects MPI collective errors using a static/dynamic analysis. In this paper we present an extension of PARCOACH static analysis to detect misuse of MPI nonblocking and persistent communications. Our new analysis adds the detection of four new error classes related to these types of communications. Its implementation was tested on several MPI micro-benchmarks, and on some CORAL or Mantevo benchmarks on which we observed an acceptable overhead at compile-time.","PeriodicalId":412609,"journal":{"name":"2020 IEEE/ACM 4th International Workshop on Software Correctness for HPC Applications (Correctness)","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124280803","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
Enhancing DataRaceBench for Evaluating Data Race Detection Tools 增强DataRaceBench评估数据竞争检测工具
Gaurav Verma, Yaying Shi, C. Liao, B. Chapman, Yonghong Yan
{"title":"Enhancing DataRaceBench for Evaluating Data Race Detection Tools","authors":"Gaurav Verma, Yaying Shi, C. Liao, B. Chapman, Yonghong Yan","doi":"10.1109/Correctness51934.2020.00008","DOIUrl":"https://doi.org/10.1109/Correctness51934.2020.00008","url":null,"abstract":"DataRaceBench is a dedicated benchmark suite to evaluate tools aimed to find data race bugs in OpenMP programs. Since its initial release in 2017, DataRaceBench has been widely used by tool developers to find the strengths and limitations of their tools. The results also provide an apple-to-apple comparison of the state-of-the-art of data race detection tools. In this paper, we discuss our latest efforts to enhance DataRaceBench. In particular, we have added support for Fortran language and some of the newest OpenMP 5.0 language features. We have also added new kernels representing new patterns from literature and other benchmarks (e.g., NAS Parallel Benchmark). To reduce duplicated code patterns in the benchmark suite, we have designed a distance-based code similarity analysis, combining both static and dynamic code features. Finally, we dockerize tools and streamline the entire benchmarking process to quickly generate a dashboard showing the state-of-the-art of data race detection of OpenMP programs. The enhanced DataRaceBench is released as v 1.3.0, with 222 newly added benchmarks. 56 of them are in C, and the remaining 166 are in Fortran, reproducing the C programs’ nature. Our experiments show that this new version can spot more limitations of the current data race detection tools, with significantly reduced user efforts needed to run experiments.","PeriodicalId":412609,"journal":{"name":"2020 IEEE/ACM 4th International Workshop on Software Correctness for HPC Applications (Correctness)","volume":"64 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126453663","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}
引用次数: 7
A Statistical Analysis of Error in MPI Reduction Operations MPI约简运算误差的统计分析
Samuel D. Pollard, B. Norris
{"title":"A Statistical Analysis of Error in MPI Reduction Operations","authors":"Samuel D. Pollard, B. Norris","doi":"10.1109/Correctness51934.2020.00011","DOIUrl":"https://doi.org/10.1109/Correctness51934.2020.00011","url":null,"abstract":"This work explores the effects of nonassociativity of floating-point addition on Message Passing Interface (MPI) reduction operations. Previous work indicates floating-point summation error is comprised of two independent factors: error based on the summation algorithm and error based on the summands themselves. We find evidence to suggest, for MPI reductions, the error based on summands has a much greater effect than the error based on the summation algorithm. We begin by sampling from the state space of all possible summation orders for MPI reduction algorithms. Next, we show the effect of different random number distributions on summation error, taking a 1000-digit precision floating-point accumulator as ground truth. Our results show empirical error bounds that are much tighter than existing analytical bounds. Last, we simulate different allreduce algorithms on the high performance computing (HPC) proxy application Nekbone and find that the error is relatively stable across algorithms. Our approach provides HPC application developers with more realistic error bounds of MPI reduction operations. Quantifying the small—but nonzero—discrepancies between reduction algorithms can help developers ensure correctness and aid reproducibility across MPI implementations and cluster topologies.","PeriodicalId":412609,"journal":{"name":"2020 IEEE/ACM 4th International Workshop on Software Correctness for HPC Applications (Correctness)","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126716036","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
Order Matters: A Case Study on Reducing Floating Point Error in Sums Via Ordering and Grouping 顺序问题:通过排序和分组减少和的浮点误差的案例研究
Vanessa Job, T. Grové, S. Fogerty, C. Mauney, B. Neuman, Laura Monroe, R. Robey
{"title":"Order Matters: A Case Study on Reducing Floating Point Error in Sums Via Ordering and Grouping","authors":"Vanessa Job, T. Grové, S. Fogerty, C. Mauney, B. Neuman, Laura Monroe, R. Robey","doi":"10.1109/Correctness51934.2020.00007","DOIUrl":"https://doi.org/10.1109/Correctness51934.2020.00007","url":null,"abstract":"Due to accumulated round-off error, mathematically equivalent floating-point summations can yield different computational results. Errors propagated across timesteps can be substantial and can lead to significant inaccuracy in the final results.We focus on sums in an adaptive mesh refinement hydrocode. We reduce error in a moderate length equation by generating proper ordering and grouping of the terms and verify this on a typical numerical simulation. Our techniques show equivalent accuracy to classic methodology like Kahan without the extra overhead.The heuristics presented here could improve accuracy in single and double precision for many codes. With some knowledge and minimal effort, researchers can apply these techniques and see improvement in the accuracy of code at no cost in performance. The same approach may facilitate reduced precision computation.","PeriodicalId":412609,"journal":{"name":"2020 IEEE/ACM 4th International Workshop on Software Correctness for HPC Applications (Correctness)","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127498272","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
[Copyright notice] (版权)
{"title":"[Copyright notice]","authors":"","doi":"10.1109/correctness51934.2020.00002","DOIUrl":"https://doi.org/10.1109/correctness51934.2020.00002","url":null,"abstract":"","PeriodicalId":412609,"journal":{"name":"2020 IEEE/ACM 4th International Workshop on Software Correctness for HPC Applications (Correctness)","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126174784","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
Towards compiler-aided correctness checking of adjoint MPI applications 伴随MPI应用程序的编译器辅助正确性检查
Alexander Hück, Joachim Protze, Jan-Patrick Lehr, C. Terboven, C. Bischof, Matthias S. Müller
{"title":"Towards compiler-aided correctness checking of adjoint MPI applications","authors":"Alexander Hück, Joachim Protze, Jan-Patrick Lehr, C. Terboven, C. Bischof, Matthias S. Müller","doi":"10.1109/Correctness51934.2020.00010","DOIUrl":"https://doi.org/10.1109/Correctness51934.2020.00010","url":null,"abstract":"Algorithmic Differentiation (AD) is a set of techniques to calculate derivatives of a computer program. In C++, AD typically requires (i) a type change of the built-in double, and (ii) a replacement of all MPI calls with AD-specific implementations. This poses challenges on MPI correctness tools, such as MUST, a dynamic checker, and TypeART, its memory sanitizer extension. In particular, AD impacts (i) memory layouts of the whole code, (ii) requires more memory allocations tracking by TypeART, and (iii) approximately doubles the MPI type checks of MUST due to an AD-specific communication reversal. To address these challenges, we propose a new callback interface for MUST to reduce the number of intercepted MPI calls, and, also, improve the filtering capabilities of TypeART to reduce tracking of temporary allocations for the derivative computation. We evaluate our approach on an AD-enhanced version of CORAL LULESH. In particular, we reduce stack variable tracking from 32 million to 13 thousand. MUST with TypeART and the callback interface reduces the runtime overhead to that of vanilla MUST.","PeriodicalId":412609,"journal":{"name":"2020 IEEE/ACM 4th International Workshop on Software Correctness for HPC Applications (Correctness)","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132305911","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
Message from the Workshop Chairs 来自研讨会主席的信息
Richard Li, Yong Liu
{"title":"Message from the Workshop Chairs","authors":"Richard Li, Yong Liu","doi":"10.1109/correctness51934.2020.00004","DOIUrl":"https://doi.org/10.1109/correctness51934.2020.00004","url":null,"abstract":"","PeriodicalId":412609,"journal":{"name":"2020 IEEE/ACM 4th International Workshop on Software Correctness for HPC Applications (Correctness)","volume":"59 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-08-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121333222","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
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信
小红书