张杨
- 作品数:36 被引量:53H指数:4
- 供职机构:河北科技大学更多>>
- 发文基金:国家自然科学基金河北省自然科学基金河北省高等学校科学技术研究指导项目更多>>
- 相关领域:自动化与计算机技术文化科学石油与天然气工程建筑科学更多>>
- 基于深度学习的代码重构后性能预测方法
- 本发明涉及一种基于深度学习的代码重构后性能预测方法,采用如下步骤:一.对重构前后的Java开源项目进行参数处理及特征提取;二.对重构前后的Java开源项目进行性能测试,得到平均执行时间;三.利用主成分分析PCA剔除跟标签...
- 张杨路一帆
- 一种面向细粒度读写锁的软件自动重构方法及装置
- 本发明公开一种面向细粒度读写锁的软件自动重构方法,特别涉及升级锁、降级锁、写锁、读锁、优化读锁的自动重构方法,其包括:采用别名分析、访问者模式分析和可重入分析等程序分析技术对重构前置条件进行检验;采用负面效应分析对代码块...
- 张杨
- 并行程序中同步瓶颈的检测和优化方法
- 2022年
- 针对并发程序中锁的不当使用可能导致性能瓶颈的问题,提出检测和优化并发程序中同步瓶颈的方法IdeSync。IdeSync使用静态分析方法获取同步方法和同步块,构建静态同步依赖图,采用基于执行路径的动态分析技术进行同步依赖关系分析,构建同步依赖图。为了暴露性能瓶颈,在同步依赖图上通过增加程序工作负载的方式,监测临界区的性能变化,并针对检测到的同步瓶颈给出优化建议。在实验中通过HSQLDB、SPECjbb2005和RxJava等12个大型实际应用程序对IdeSync的有效性进行验证,共检测到72个同步瓶颈,根据优化建议进行优化后程序性能均有所提升。实验表明,IdeSync能够有效地检测和优化同步瓶颈。
- 张杨李柳旭
- 面向方面软件体系结构建模研究被引量:1
- 2008年
- 用面向方面编程思想研究软件体系结构,提取体系结构中的横切属性,并以方面连接件的形式对其进行建模,然后提出基于UML的面向方面体系结构元模型,最后通过图书管理系统实例说明具体建模过程,对传统体系结构模型和面向方面体系结构模型进行比较分析,结果表明了面向方面软件体系结构模型具有更高的实际应用价值。
- 张京军李福荣李慧张杨
- 关键词:面向方面编程
- 一种面向结构化并发的软件自动重构方法
- 本发明涉及一种面向结构化并发的软件自动重构方法,采用如下步骤:一.在重构之前进行前置条件检查,二.采用数据流分析、控制流分析、变量范围分析、方法依赖分析和线程依赖分析,对于不同的重构场景进行分析;三.在源程序抽象语法树上...
- 张杨申高洁
- 软件体系结构失配研究
- 2007年
- 本文用面向方面方法研究软件体系结构,提出使用方面连接件来解决体系结构失配的方法,并给出相应的体系结构的描述,最后用一个实例对本文方法进行验证,结果显示了本文方法有更高的实际和应用价值。
- 李福荣张京军张杨李慧
- 关键词:面向方面编程体系结构描述语言
- 面向Java锁机制的字节码自动重构框架
- Java语言提供了同步锁、可重入锁和读写锁等几种锁机制,在并行程序设计中不同的数据结构使用这几种锁机制时获得的性能通常是不同的.为了在不同的锁机制之间进行自动转换,进而帮助程序员了解程序的性能,本文提出了一种面向Java...
- 张杨张冬雯仇晶
- 关键词:字节码自动转换
- 文献传递
- 基于上下文敏感分析的数据竞争检测方法
- 2020年
- 为了提高数据竞争检测过程的准确性,提出了一种基于上下文敏感分析的数据竞争检测方法。使用控制流分析构建上下文敏感的调用图,采用逃逸分析查找出可能发生数据竞争的线程逃逸对象,进行上下文敏感的别名分析以减少误报和漏报,通过发生序关系判断消除由于忽略线程交互而导致的误报。依据该方法,在WALA软件分析框架实现了一个数据竞争检测工具ConRacer,并将该工具与现有的检测工具SRD和RVPredict进行了比较。结果表明,与SRD和RVPredict相比,ConRacer的检测准确度最高,不仅可以有效地检测数据竞争,而且可以降低检测过程中的误报和漏报。通过结合上下文敏感分析技术与传统的静态检测技术,ConRacer提高了检测过程的准确性,对发现并发错误和优化软件性能有一定的参考价值。
- 张杨刘欢张冬雯
- 关键词:并行处理并发程序数据竞争上下文敏感
- 面向异步机制的自动重构方法研究被引量:1
- 2021年
- 为了解决并行处理中同步阻塞会浪费系统资源和影响程序性能的问题,提出了一种基于CompletableFuture异步机制的自动重构方法。首先,使用WALA静态程序分析工具进行访问者模式分析、逃逸分析、别名分析以及数据流分析等静态程序分析技术,确定共享变量数据的操作方式;然后,基于CompletableFuture机制设置4种异步重构模式;最后,根据不同模式实现异步机制的自动重构。基于此方法,在Eclipse平台下开发了自动重构工具AsynRef,并对HSQLDB,Jenkins,JGroups和SPECjbb2005等4个大型实际应用程序进行自动重构,从重构个数、改变的代码行数、准确性和重构后程序性能等方面对AsynRef进行评估,对4个程序所包含的919个同步方法共完成387个异步机制转换。结果显示,使用AsynRef进行异步机制重构后,程序执行性能有8%到39%的不同程度的提升。AsynRef可以有效完成代码异步化自动重构,与传统手动重构相比,有效提升了异步化的重构效率。
- 纪铭涵齐林张杨董士程李朝帅
- 关键词:并行处理
- 并行环境下Java哈希机制的对比及重构被引量:3
- 2017年
- 针对并行环境下出现的非线程安全问题,以哈希机制的Hashtable和ConcurrentHashMap的线程安全问题为切入点,设计了可改变线程总数和读写线程数的测试程序,分析了线程安全的ConcurrentHashMap和Hashtable的性能差异。根据性能差异,设计了从Hashtable到ConcurrentHashMap的程序自动重构插件,进而在Hashtable封装数据的情况下,通过对比传统多线程处理方式和Java8中的并行流处理方式的性能差异,分析了流处理方式相对普通多线程处理方式的高效性。对比结果显示,ConcurrentHashMap在并行程序中的性能要优于Hashtable。研究结果为多线程程序开发提出了解决非线程安全提供了较为可行的新思路,对于并行编程具有借鉴意义。
- 郑雅洁张冬雯张杨郭松梁亚楠魏萌萌于欣
- 关键词:线程安全