EDA工具中高效多线程解析器的方法

Prakash Shanbhag, C. Gopalakrishnan, Saibal Ghosh
{"title":"EDA工具中高效多线程解析器的方法","authors":"Prakash Shanbhag, C. Gopalakrishnan, Saibal Ghosh","doi":"10.1109/ISVLSI.2012.77","DOIUrl":null,"url":null,"abstract":"Parsing of large text files has always been a challenge in commercial EDA tools. These files, typically multiple gigabytes in size, are the channels of communication of intermediate data between point-tools working on different parts of the chip design flow. With the advent of multi-core processors, the core algorithms of the EDA tools have been improving in performance by utilizing this parallelism that is now available. With the performance of the core algorithms improving, the contribution of the time taken to parsing the intermediate data files becomes significant. Hence there is a need to improve the performance of these parsers. We have identified multi-threading as one of the methods to achieve this. The methodology in this paper focuses on identifying and implementing data parallelism. We outline the key ingredients required to implement such parsers and a method to predict the parser runtime even before implementation. Recently, we enhanced two parsers using this methodology and achieved significant performance improvements of 4X on 8-core machines with less than 5% memory degradation.","PeriodicalId":398850,"journal":{"name":"2012 IEEE Computer Society Annual Symposium on VLSI","volume":"84 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2012-08-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":"{\"title\":\"Methodology for Efficient Multi-threading of Parsers in EDA Tools\",\"authors\":\"Prakash Shanbhag, C. Gopalakrishnan, Saibal Ghosh\",\"doi\":\"10.1109/ISVLSI.2012.77\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Parsing of large text files has always been a challenge in commercial EDA tools. These files, typically multiple gigabytes in size, are the channels of communication of intermediate data between point-tools working on different parts of the chip design flow. With the advent of multi-core processors, the core algorithms of the EDA tools have been improving in performance by utilizing this parallelism that is now available. With the performance of the core algorithms improving, the contribution of the time taken to parsing the intermediate data files becomes significant. Hence there is a need to improve the performance of these parsers. We have identified multi-threading as one of the methods to achieve this. The methodology in this paper focuses on identifying and implementing data parallelism. We outline the key ingredients required to implement such parsers and a method to predict the parser runtime even before implementation. Recently, we enhanced two parsers using this methodology and achieved significant performance improvements of 4X on 8-core machines with less than 5% memory degradation.\",\"PeriodicalId\":398850,\"journal\":{\"name\":\"2012 IEEE Computer Society Annual Symposium on VLSI\",\"volume\":\"84 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2012-08-19\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"2\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2012 IEEE Computer Society Annual Symposium on VLSI\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ISVLSI.2012.77\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2012 IEEE Computer Society Annual Symposium on VLSI","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISVLSI.2012.77","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2

摘要

在商业EDA工具中,大文本文件的解析一直是一个挑战。这些文件的大小通常为几千兆字节,是在芯片设计流程的不同部分工作的点工具之间进行中间数据通信的通道。随着多核处理器的出现,EDA工具的核心算法已经通过利用现在可用的这种并行性提高了性能。随着核心算法性能的提高,中间数据文件解析所花费的时间也越来越多。因此,有必要改进这些解析器的性能。我们已经确定多线程是实现这一目标的方法之一。本文的方法侧重于识别和实现数据并行性。我们概述了实现这种解析器所需的关键成分,以及在实现之前预测解析器运行时的方法。最近,我们使用这种方法增强了两个解析器,并在8核机器上实现了4倍的显著性能改进,内存退化不到5%。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Methodology for Efficient Multi-threading of Parsers in EDA Tools
Parsing of large text files has always been a challenge in commercial EDA tools. These files, typically multiple gigabytes in size, are the channels of communication of intermediate data between point-tools working on different parts of the chip design flow. With the advent of multi-core processors, the core algorithms of the EDA tools have been improving in performance by utilizing this parallelism that is now available. With the performance of the core algorithms improving, the contribution of the time taken to parsing the intermediate data files becomes significant. Hence there is a need to improve the performance of these parsers. We have identified multi-threading as one of the methods to achieve this. The methodology in this paper focuses on identifying and implementing data parallelism. We outline the key ingredients required to implement such parsers and a method to predict the parser runtime even before implementation. Recently, we enhanced two parsers using this methodology and achieved significant performance improvements of 4X on 8-core machines with less than 5% memory degradation.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
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学术文献互助群
群 号:604180095
Book学术官方微信