-
公开(公告)号:CN105279004A
公开(公告)日:2016-01-27
申请号:CN201510830299.8
申请日:2015-11-24
Applicant: 无锡江南计算技术研究所
IPC: G06F9/445 , G06F12/0802
Abstract: 本发明提供了一种基于采样剖析的轻量级程序代码重排方法,包括:编译链接程序,其中预留一段代码空间;加载器读入目标程序;使得目标程序运行一遍,加载器收集目标程序运行时运行信息;利用收集到的运行信息指导代码重排;对代码执行垫塞优化;将垫塞优化后的代码写进新的目标程序。
-
公开(公告)号:CN102541727B
公开(公告)日:2015-07-08
申请号:CN201010594006.8
申请日:2010-12-17
Applicant: 无锡江南计算技术研究所
IPC: G06F11/36
Abstract: 本发明公开了一种程序调试方法及系统,能够将针对尚未研制成功的CPU芯片的程序转换为针对已研制成功并可靠性高的CPU芯片体系结构上的程序,并使用标准的调试器进行调试,对程序的正确性和性能进行分析和评估,从而避免了使用体系结构模拟器进行模拟所带来的处理速度慢、可靠性低的缺点。由于使用了已有的硬件资源和标准的调试器,所以处理速度较快,并且可靠性较高。
-
公开(公告)号:CN102981837A
公开(公告)日:2013-03-20
申请号:CN201210439950.5
申请日:2012-11-06
Applicant: 无锡江南计算技术研究所
IPC: G06F9/44
Abstract: 本发明提供了一种指针别名关系判断方法和代码多版本优化方法。所述指针别名关系判断方法包括:判断第一循环体在执行一次循环操作时所述第一循环体内的第一指针所指向的第一地址段偏移和第二循环体在执行相同次循环操作时第二循环体内的第二指针所指向的第二地址段偏移是否重合,所述第一循环体和第二循环体是根据待优化循环体生成的两个不同版本;判断所述第一循环体在结束上一次循环操作转入下一次循环操作时所述第一指针指向的第一地址段跨步和所述第二循环体在结束上一次循环操作转入下一次循环操作时所述第二指针指向的第二地址段跨步是否相等;以及如果上述两个判断步骤结果均为是,则确定所述第一指针和所述第二指针互为指针别名关系。
-
公开(公告)号:CN105279004B
公开(公告)日:2018-06-26
申请号:CN201510830299.8
申请日:2015-11-24
Applicant: 无锡江南计算技术研究所
IPC: G06F8/41 , G06F9/445 , G06F12/0802
Abstract: 本发明提供了一种基于采样剖析的轻量级程序代码重排方法,包括:编译链接程序,其中预留一段代码空间;加载器读入目标程序;使得目标程序运行一遍,加载器收集目标程序运行时运行信息;利用收集到的运行信息指导代码重排;对代码执行垫塞优化;将垫塞优化后的代码写进新的目标程序。
-
公开(公告)号:CN102541611B
公开(公告)日:2014-09-03
申请号:CN201010597808.4
申请日:2010-12-21
Applicant: 无锡江南计算技术研究所
IPC: G06F9/45
CPC classification number: Y02D10/41
Abstract: 一种指令翻译装置和方法、指令处理装置和处理器,所述指令处理装置包括,拆分单元,将逻辑运算指令拆分为多条单逻辑运算指令;转换单元,将所述单逻辑运算指令转换成具有预定格式的中间指令,所述预定格式包含逻辑值、源操作数和目标操作数;合并单元,合并预定指令及其定值点指令生成具有所述预定格式的合并指令;所述预定指令是指源操作数具有定值点指令的中间指令,所述预定指令的定值点指令是指对该预定指令的源操作数进行赋值的中间指令;所述合并指令的逻辑值通过数组索引所述预定指令及其定值点指令的逻辑值生成。本发明的指令翻译装置和方法、指令处理装置和处理器,提高了处理器处理逻辑运算的效率,降低了处理器的功耗。
-
公开(公告)号:CN102455897B
公开(公告)日:2013-11-27
申请号:CN201010523297.1
申请日:2010-10-27
Applicant: 无锡江南计算技术研究所
IPC: G06F9/44
Abstract: 一种基于实例的迭代编译方法及装置。所述编译方法包括:根据编译操作参数对待编译目标程序进行更新操作或应用操作;所述更新操作通过在迭代编译目标程序后形成新实例,并以实例库中的实例对新实例预测的结果确定是否将新实例添加至实例库中;所述应用操作在编译目标程序时,从实例库中获取与目标程序中特征值最相似的多个实例,以所获得的多个实例确定所述特征值的分类,并以此对目标程序进行编译。所述编译方法结合了迭代编译技术和机器学习方法,使得编译器既可以在优化空间中搜索最优参数,进行自动调优,提高编译器的性能;又可以充分利用历史积累数据,从实例库中学习,预测最优或者较优的参数,在提高性能同时尽可能降低编译所需的时间。
-
公开(公告)号:CN101452394B
公开(公告)日:2012-05-23
申请号:CN200710094327.X
申请日:2007-11-28
Applicant: 无锡江南计算技术研究所
Abstract: 一种编译方法和编译器。所述编译方法包括:识别包含第一指令的循环,所述循环在执行过程中有确定的控制参数,所述循环不包含转移指令,且所有的第一指令不存在迭代间的相关性;统计所述循环中第一指令和第二指令的指令数,并根据第一指令执行部件和第二指令执行部件的执行能力计算循环展开次数和第一指令转换成第二指令的循环次数;若所述循环展开次数不等于1,对所述循环进行循环展开,并根据所述第一指令转换成第二指令的循环次数将所述循环展开中的第一指令转换成对应的第二指令。所述编译方法和编译器可以充分利用处理器中的指令执行部件的并行性,提高程序的执行效率,减轻用户的编程负担。
-
公开(公告)号:CN102455897A
公开(公告)日:2012-05-16
申请号:CN201010523297.1
申请日:2010-10-27
Applicant: 无锡江南计算技术研究所
IPC: G06F9/44
Abstract: 一种基于实例的迭代编译方法及装置。所述编译方法包括:根据编译操作参数对待编译目标程序进行更新操作或应用操作;所述更新操作通过在迭代编译目标程序后形成新实例,并以实例库中的实例对新实例预测的结果确定是否将新实例添加至实例库中;所述应用操作在编译目标程序时,从实例库中获取与目标程序中特征值最相似的多个实例,以所获得的多个实例确定所述特征值的分类,并以此对目标程序进行编译。所述编译方法结合了迭代编译技术和机器学习方法,使得编译器既可以在优化空间中搜索最优参数,进行自动调优,提高编译器的性能;又可以充分利用历史积累数据,从实例库中学习,预测最优或者较优的参数,在提高性能同时尽可能降低编译所需的时间。
-
公开(公告)号:CN102541611A
公开(公告)日:2012-07-04
申请号:CN201010597808.4
申请日:2010-12-21
Applicant: 无锡江南计算技术研究所
IPC: G06F9/45
CPC classification number: Y02D10/41
Abstract: 一种指令翻译装置和方法、指令处理装置和处理器,所述指令处理装置包括,拆分单元,将逻辑运算指令拆分为多条单逻辑运算指令;转换单元,将所述单逻辑运算指令转换成具有预定格式的中间指令,所述预定格式包含逻辑值、源操作数和目标操作数;合并单元,合并预定指令及其定值点指令生成具有所述预定格式的合并指令;所述预定指令是指源操作数具有定值点指令的中间指令,所述预定指令的定值点指令是指对该预定指令的源操作数进行赋值的中间指令;所述合并指令的逻辑值通过数组索引所述预定指令及其定值点指令的逻辑值生成。本发明的指令翻译装置和方法、指令处理装置和处理器,提高了处理器处理逻辑运算的效率,降低了处理器的功耗。
-
公开(公告)号:CN105242962A
公开(公告)日:2016-01-13
申请号:CN201510828182.6
申请日:2015-11-24
Applicant: 无锡江南计算技术研究所
Abstract: 本发明提供了一种基于异构众核的轻量级线程快速触发方法,包括:在轻量级线程库中编写异构众核的多线程程序,其中多线程程序在轻量级线程库中的创建和回收以显式的接口来调用,然后完成多线程程序代码的编译,生成一个异构融合的可执行代码;运行该可执行码;其中,首先执行在主处理器上运行的程序加载器,再将可执行代码作为参数传入给程序加载器;程序加载器将整个当做一个文件读入,然后解析出符合ELF格式的段信息,并将其写入内存的相应位置,并完成程序执行环境变量的配置。
-
-
-
-
-
-
-
-
-