Mike Johnson, T. May, S. R. Thornton, S. Boyd, Brent Merle
{"title":"利用免费和开源工具改进战术波形软件的性能","authors":"Mike Johnson, T. May, S. R. Thornton, S. Boyd, Brent Merle","doi":"10.1109/MILCOM47813.2019.9020859","DOIUrl":null,"url":null,"abstract":"Tactical waveform software applications tend to suffer from inefficient implementations despite the availability of free and open source software (FOSS) profiling tools. It has been the overwhelming experience of the authors that tactical waveform developers rely too heavily on the optimization power of the compiler rather than on sound, high-performance software engineering practices including performance profiling. The suite of FOSS profiling tools is mature, vast, and growing. Valgrind, gprof, and perf are tools used to identify software deficiencies that diminish the performance and reliability of tactical waveforms and the radios that host them. These deficiencies can be categorized as application-level and microarchitectural deficiencies. Inefficient input/output (I/O), memory leaks, uninitialized variables, race conditions, and improperly prioritized threads are examples of application-level deficiencies. Inefficient instruction and data cache utilization, and severe branch prediction misses are examples of microarchitectural deficiencies. This paper presents a methodology to apply FOSS tools and techniques to improve the performance posture in both the application and microarchitectural domain. Furthermore, results of the approach are presented in a case study involving application of the proposed techniques against a real Department of Defense (DoD) tactical waveform application.","PeriodicalId":371812,"journal":{"name":"MILCOM 2019 - 2019 IEEE Military Communications Conference (MILCOM)","volume":"04 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Improving the Performance of Tactical Waveform Software using Free and Open-Source Tools\",\"authors\":\"Mike Johnson, T. May, S. R. Thornton, S. Boyd, Brent Merle\",\"doi\":\"10.1109/MILCOM47813.2019.9020859\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Tactical waveform software applications tend to suffer from inefficient implementations despite the availability of free and open source software (FOSS) profiling tools. It has been the overwhelming experience of the authors that tactical waveform developers rely too heavily on the optimization power of the compiler rather than on sound, high-performance software engineering practices including performance profiling. The suite of FOSS profiling tools is mature, vast, and growing. Valgrind, gprof, and perf are tools used to identify software deficiencies that diminish the performance and reliability of tactical waveforms and the radios that host them. These deficiencies can be categorized as application-level and microarchitectural deficiencies. Inefficient input/output (I/O), memory leaks, uninitialized variables, race conditions, and improperly prioritized threads are examples of application-level deficiencies. Inefficient instruction and data cache utilization, and severe branch prediction misses are examples of microarchitectural deficiencies. This paper presents a methodology to apply FOSS tools and techniques to improve the performance posture in both the application and microarchitectural domain. Furthermore, results of the approach are presented in a case study involving application of the proposed techniques against a real Department of Defense (DoD) tactical waveform application.\",\"PeriodicalId\":371812,\"journal\":{\"name\":\"MILCOM 2019 - 2019 IEEE Military Communications Conference (MILCOM)\",\"volume\":\"04 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2019-11-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"MILCOM 2019 - 2019 IEEE Military Communications Conference (MILCOM)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/MILCOM47813.2019.9020859\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"MILCOM 2019 - 2019 IEEE Military Communications Conference (MILCOM)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/MILCOM47813.2019.9020859","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Improving the Performance of Tactical Waveform Software using Free and Open-Source Tools
Tactical waveform software applications tend to suffer from inefficient implementations despite the availability of free and open source software (FOSS) profiling tools. It has been the overwhelming experience of the authors that tactical waveform developers rely too heavily on the optimization power of the compiler rather than on sound, high-performance software engineering practices including performance profiling. The suite of FOSS profiling tools is mature, vast, and growing. Valgrind, gprof, and perf are tools used to identify software deficiencies that diminish the performance and reliability of tactical waveforms and the radios that host them. These deficiencies can be categorized as application-level and microarchitectural deficiencies. Inefficient input/output (I/O), memory leaks, uninitialized variables, race conditions, and improperly prioritized threads are examples of application-level deficiencies. Inefficient instruction and data cache utilization, and severe branch prediction misses are examples of microarchitectural deficiencies. This paper presents a methodology to apply FOSS tools and techniques to improve the performance posture in both the application and microarchitectural domain. Furthermore, results of the approach are presented in a case study involving application of the proposed techniques against a real Department of Defense (DoD) tactical waveform application.