-
题名面向并发程序中锁机制的智能化推荐方法
被引量:2
- 1
-
-
作者
张杨
董士程
-
机构
河北科技大学信息科学与工程学院
-
出处
《计算机应用》
CSCD
北大核心
2021年第6期1597-1603,共7页
-
基金
国家自然科学基金资助项目(61440012)
河北省教育厅科学研究计划重点项目(ZD2019093)
河北省基础研究计划重点基础专项(18960106D)。
-
文摘
软件开发人员在并发编程中面临着各种Java锁的选择。针对如何选择合适的锁机制进而提高程序性能的问题,提出了一种帮助并发程序开发人员选择锁机制的推荐方法 Lock Rec。首先,采用程序静态分析技术,对并发程序中锁机制的使用进行分析并确定影响程序性能的程序特征属性;然后,使用改进的随机森林算法构建锁机制推荐模型,以帮助开发人员在同步锁、可重入锁、读写锁、邮戳锁这四种锁之中进行选择。分别选取了四种现有的机器学习数据集对Lock Rec进行了实验,所提方法的推荐准确率均值可达95.1%;此外使用真实并发程序对Lock Rec的推荐结果进行分析。实验结果表明Lock Rec可以有效提高并发程序的执行效率。
-
关键词
并发程序
锁机制
随机森林
推荐模型
程序性能
-
Keywords
concurrent program
lock mechanism
random forest
recommendation model
program performance
-
分类号
TP311.53
[自动化与计算机技术—计算机软件与理论]
-
-
题名面向异步机制的自动重构方法研究
被引量:1
- 2
-
-
作者
纪铭涵
齐林
张杨
董士程
李朝帅
-
机构
河北科技大学信息科学与工程学院
-
出处
《河北科技大学学报》
CAS
北大核心
2021年第5期499-507,共9页
-
基金
国家自然科学基金(61440012)
河北省自然科学基金(18960106D)
河北省高等学校科学研究计划重点项目(ZD2019093)。
-
文摘
为了解决并行处理中同步阻塞会浪费系统资源和影响程序性能的问题,提出了一种基于CompletableFuture异步机制的自动重构方法。首先,使用WALA静态程序分析工具进行访问者模式分析、逃逸分析、别名分析以及数据流分析等静态程序分析技术,确定共享变量数据的操作方式;然后,基于CompletableFuture机制设置4种异步重构模式;最后,根据不同模式实现异步机制的自动重构。基于此方法,在Eclipse平台下开发了自动重构工具AsynRef,并对HSQLDB,Jenkins,JGroups和SPECjbb2005等4个大型实际应用程序进行自动重构,从重构个数、改变的代码行数、准确性和重构后程序性能等方面对AsynRef进行评估,对4个程序所包含的919个同步方法共完成387个异步机制转换。结果显示,使用AsynRef进行异步机制重构后,程序执行性能有8%到39%的不同程度的提升。AsynRef可以有效完成代码异步化自动重构,与传统手动重构相比,有效提升了异步化的重构效率。
-
关键词
并行处理
同步机制
异步机制
静态程序分析
自动重构
-
Keywords
concurrent processing
synchronization mechanism
asynchronous mechanism
static program analysis
automatic refactoring
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-