期刊文献+
共找到2篇文章
< 1 >
每页显示 20 50 100
基于核外计算的Datalog引擎设计与实现
1
作者 张奕裕 王归航 +1 位作者 左志强 李宣东 《软件学报》 EI CSCD 北大核心 2023年第8期3587-3604,共18页
随着新兴技术的迅速发展,领域软件对开发效率提出了新的要求.Datalog语言作为一门具有简洁语法和良好语义的声明式编程语言,能帮助开发人员快速开发和解决问题,近年来越来越受到重视与欢迎.但解决真实场景问题时,现有的单机Datalog引擎... 随着新兴技术的迅速发展,领域软件对开发效率提出了新的要求.Datalog语言作为一门具有简洁语法和良好语义的声明式编程语言,能帮助开发人员快速开发和解决问题,近年来越来越受到重视与欢迎.但解决真实场景问题时,现有的单机Datalog引擎计算规模往往受限于内存容量大小,不具有可扩展性.为解决上述问题,设计并实现基于核外计算的Datalog引擎.方法首先设计一系列计算Datalog程序所需的支持核外计算的操作算子,然后将Datalog程序转换合成带核外计算算子的C++程序,接着方法设计基于Hash的分区策略和基于搜索树剪枝的最少置换调度策略,将相应的分区文件调度执行计算并得到最终结果.基于该方法,实现原型工具DDL(disk-based Datalog engine),并选取广泛应用的真实Datalog程序,在合成数据集以及真实数据集上进行实验,实验结果体现了DDL良好性能以及高可扩展性. 展开更多
关键词 datalog引擎 核外计算 操作算子 分区策略 调度策略
下载PDF
DDoop:基于差分式Datalog求解的增量指针分析框架
2
作者 沈天琪 王熙灶 +1 位作者 宾向荣 卜磊 《软件学报》 EI CSCD 北大核心 2024年第6期2608-2630,共23页
指针分析是对软件进行编译优化、错误检测的核心基础技术之一.现有经典指针分析框架,如Doop,会将待分析程序和分析算法转化成Datalog评估问题并进行求解,如程序规模较大,单次求解分析时间开销较大.在程序频繁变更发布的情况下,相关程序... 指针分析是对软件进行编译优化、错误检测的核心基础技术之一.现有经典指针分析框架,如Doop,会将待分析程序和分析算法转化成Datalog评估问题并进行求解,如程序规模较大,单次求解分析时间开销较大.在程序频繁变更发布的情况下,相关程序分析的开销更是难以负担.近年来,增量分析作为一种在代码频繁变更场景下有效复用已有分析结果提升分析效率的技术受到了越来越多的关注.然而,目前的增量指针分析技术通常针对特定算法设计,支持的指针分析选项有限,其可用性也受到较大限制.针对上述问题,设计并实现一种基于差分式Datalog求解的增量指针分析框架DDoop(Differential Doop).DDoop实现增量输入事实生成技术与增量分析规则自动化重写技术,将多版本程序增量分析问题表达为差分Datalog评估问题,从而可以充分利用成熟的差分式Datalog求解引擎,如DDlog,来实现端到端的增量指针分析,并最大化兼容复用Doop中已有的指针分析实现,提供透明的增量化支持.在广泛应用的真实世界程序上对DDoop进行实验评估,实验结果显示DDoop相较于非增量的Doop框架具有显著的性能优势,同时高度兼容Doop中已有的各种指针分析规则. 展开更多
关键词 指针分析 增量分析 datalog引擎 增量计算 差分式datalog
下载PDF
上一页 1 下一页 到第
使用帮助 返回顶部