B. Chapman, Oscar R. Hernandez, Lei Huang, Tien-Hsiung Weng, Zhenying Liu, L. Adhianto, Yi Wen
{"title":"Dragon:一个基于open64的交互式程序分析工具,用于大型应用程序","authors":"B. Chapman, Oscar R. Hernandez, Lei Huang, Tien-Hsiung Weng, Zhenying Liu, L. Adhianto, Yi Wen","doi":"10.1109/PDCAT.2003.1236416","DOIUrl":null,"url":null,"abstract":"A program analysis tool can play an important role in helping users understand and improve large application codes. Dragon is a robust interactive program analysis tool based on the Open64 compiler, which is an Open source C/C++/Fortran77/90 compiler for Intel Itanium systems. We designed and developed the Dragon analysis tool to support manual optimization and parallelization of large applications by exploiting the powerful analyses of the Open64 compiler. Dragon enables users to visualize and print the essential program structure of and obtains information on their large applications. Current features include the call graph, flow graph, and data dependences. Ongoing work extends both Open64 and Dragon by a new call graph construction algorithm and its related interprocedural analysis, global variable definition and usage analysis, and an external interface that can be used by other tools such as profilers and debuggers to share program analysis information. Future work includes supporting the creation and optimization of shared memory parallel programs written using OpenMP.","PeriodicalId":145111,"journal":{"name":"Proceedings of the Fourth International Conference on Parallel and Distributed Computing, Applications and Technologies","volume":"32 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2003-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"14","resultStr":"{\"title\":\"Dragon: an Open64-based interactive program analysis tool for large applications\",\"authors\":\"B. Chapman, Oscar R. Hernandez, Lei Huang, Tien-Hsiung Weng, Zhenying Liu, L. Adhianto, Yi Wen\",\"doi\":\"10.1109/PDCAT.2003.1236416\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"A program analysis tool can play an important role in helping users understand and improve large application codes. Dragon is a robust interactive program analysis tool based on the Open64 compiler, which is an Open source C/C++/Fortran77/90 compiler for Intel Itanium systems. We designed and developed the Dragon analysis tool to support manual optimization and parallelization of large applications by exploiting the powerful analyses of the Open64 compiler. Dragon enables users to visualize and print the essential program structure of and obtains information on their large applications. Current features include the call graph, flow graph, and data dependences. Ongoing work extends both Open64 and Dragon by a new call graph construction algorithm and its related interprocedural analysis, global variable definition and usage analysis, and an external interface that can be used by other tools such as profilers and debuggers to share program analysis information. Future work includes supporting the creation and optimization of shared memory parallel programs written using OpenMP.\",\"PeriodicalId\":145111,\"journal\":{\"name\":\"Proceedings of the Fourth International Conference on Parallel and Distributed Computing, Applications and Technologies\",\"volume\":\"32 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2003-10-20\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"14\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the Fourth International Conference on Parallel and Distributed Computing, Applications and Technologies\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/PDCAT.2003.1236416\",\"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 Fourth International Conference on Parallel and Distributed Computing, Applications and Technologies","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/PDCAT.2003.1236416","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 14
摘要
程序分析工具可以在帮助用户理解和改进大型应用程序代码方面发挥重要作用。Dragon是一个基于Open64编译器的健壮的交互式程序分析工具,Open64编译器是一个面向Intel Itanium系统的开源C/ c++ /Fortran77/90编译器。我们设计并开发了Dragon分析工具,通过利用Open64编译器的强大分析功能来支持大型应用程序的手动优化和并行化。Dragon使用户能够可视化和打印重要的程序结构,并获得有关其大型应用程序的信息。当前的特性包括调用图、流图和数据依赖关系。正在进行的工作通过一个新的调用图构建算法及其相关的过程间分析、全局变量定义和使用分析,以及一个外部接口来扩展Open64和Dragon,该接口可以被分析器和调试器等其他工具使用,以共享程序分析信息。未来的工作包括支持使用OpenMP编写的共享内存并行程序的创建和优化。
Dragon: an Open64-based interactive program analysis tool for large applications
A program analysis tool can play an important role in helping users understand and improve large application codes. Dragon is a robust interactive program analysis tool based on the Open64 compiler, which is an Open source C/C++/Fortran77/90 compiler for Intel Itanium systems. We designed and developed the Dragon analysis tool to support manual optimization and parallelization of large applications by exploiting the powerful analyses of the Open64 compiler. Dragon enables users to visualize and print the essential program structure of and obtains information on their large applications. Current features include the call graph, flow graph, and data dependences. Ongoing work extends both Open64 and Dragon by a new call graph construction algorithm and its related interprocedural analysis, global variable definition and usage analysis, and an external interface that can be used by other tools such as profilers and debuggers to share program analysis information. Future work includes supporting the creation and optimization of shared memory parallel programs written using OpenMP.