检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:陆申明 左志强 王林章[1] LU Shen-Ming;ZUO Zhi-Qiang;WANG Lin-Zhang(State Key Laboratory for Novel Software Technology(Nanjing University),Nanjing 210023,China)
机构地区:[1]计算机软件新技术国家重点实验室(南京大学),江苏南京210023
出 处:《软件学报》2020年第5期1243-1254,共12页Journal of Software
基 金:国家自然科学基金(61802168);江苏省自然科学基金(BK20191247)。
摘 要:静态程序分析发展至今,已在多个方面取得了长足的进步,应用于软件开发的众多方面.但对现代大规模复杂软件系统(如千万行代码规模的Linux操作系统、分布式大数据处理系统Hadoop等)进行高精度的静态分析,因其极大规模数据量的计算,仍有一定难度.精度、效率和可扩展性相互制约,是静态分析技术在工业界应用的主要障碍.对此,近年来,随着多核、众核架构的兴起,研究人员提出了静态分析的各种并行化解决方案.首先梳理了静态分析的发展历程,然后针对当前静态分析面临的挑战,在分析了传统算法优化研究的不足后,对利用硬件资源进行并行优化的方法进行了充分讨论,包括单机的CPU并行、分布式和GPU实现这3个方面;在此基础上,对一些使用较为广泛的支持并行的静态分析工具进行了评估;最后,对未来如何从算法和算力角度对静态分析进行并行优化作了讨论和展望.After years of research, static program analysis has made great progress in many aspects. However, performing sophisticated program analysis over large-scale software systems(such as Linux kernel, Hadoop, etc.) is still challenging due to its high complexity. To address the poor scalability of static analysis, with the rise of multi-core computation architectures, researchers have proposed various parallel static analysis techniques. This paper first introduces the basic concepts of static analysis, the key techniques, and the challenges. Then the traditional optimization approaches are discussed followed by the studies in parallelizing static analysis in three categories-CPU parallelism, distributed and GPU implementation, and the representative parallel static analysis tools. Finally, the potential research trend in parallelizing static analysis is described.
关 键 词:静态程序分析 软件质量保障 并行计算 分布式处理 GPU加速
分 类 号:TP311[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.7