-
公开(公告)号:CN114217808B
公开(公告)日:2024-04-30
申请号:CN202110398337.2
申请日:2021-04-14
Applicant: 无锡江南计算技术研究所
IPC: G06F8/41
Abstract: 本发明公开一种编程语言指针类型Cache属性扩展方法,基于以下配置:扩展指针类型的Cache属性,Cache属性具有cached和uncached两个值,Cache属性初始化,允许在指针变量申明时为指针变量的Cache属性设置初始值;Cache属性设置,允许在程序语句中动态设置和修改指针变量的Cache属性值;Cache写暗示段子属性设置,指示对指定地址空间将马上进行写操作;Cache私有段子属性设置,作用域为其后的for、while、do‑while、if语句或{}括起来的复合语句,指示对指定地址空间的访问是私有的。本发明方便编程人员提高程序访存效率和降低Cache部件功耗。
-
公开(公告)号:CN112738142B
公开(公告)日:2022-11-25
申请号:CN201910974455.6
申请日:2019-10-14
Applicant: 无锡江南计算技术研究所
IPC: H04L67/1097 , H04L67/568
Abstract: 本发明公开了一种面向众核多层次存储系统的数据高效传输支持方法,包括典型访存通信模式性能库和运行时最优模式选择模块,所述典型访存通信模式性能库是通过以下步骤构建形成的,总结科学计算程序中的典型通信访存模式;对每种典型通信访存模式,用多种通信访存方案具体实现;对每种实现通信访存方案,测试在不同数据规模下的性能以及需要的缓冲空间的大小,构建典型访存通信模式性库;所述运行时最优模式选择模块则根据用户程序的访存通信模式、访存数据量、可用缓冲空间大小信息,搜索典型访存通信模式性库,选择最优实现方案。本发明减轻编程人员负担的同时,提供高效的实现方案,对于不了解存储系统细节的编程人员,也能很好的利用系统特性。
-
公开(公告)号:CN112579059B
公开(公告)日:2022-10-04
申请号:CN201910927244.7
申请日:2019-09-27
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种支持有限域数据类型和运算符的编译方法,在GCC编译器中新增对__field关键字的支持,用于对有限域上数据类型的描述,所述__field是有限域上的数据类型,此__field类型中包含固定的两个常量成员,此两个常量成员的名字是固定的,用户通过指定此两个常量成员的值,定义一个具体的有限域类型,再使用定义的有限域类型,声明有限域上的变量;在GCC编译器中新增有限域数据类型关键字__field,扩展GCC编译器前端,增加对有限域数据类型关键字__field的支持,扩展GCC编译器前端,增加对有限域数据类型关键字表达式的语法分析和语义分析操作,使得编译器为有限域数据类型关键字相关的初始化表达式、赋值表达式、运算表达式、打印语句进行正确的分析。本发明提高用户程序中有限域运算的效率。
-
公开(公告)号:CN114218137A
公开(公告)日:2022-03-22
申请号:CN202110478519.0
申请日:2021-04-30
Applicant: 无锡江南计算技术研究所
IPC: G06F12/123
Abstract: 本发明公开一种冗余cache淘汰操作消除方法,包括以下步骤:S1、分析程序代码,直至找到第一个cache淘汰操作;S2、继续分析程序代码,若发现函数调用语句,则执行S3,否则执行S4;S3、依次分析并记录子函数调用链中语句的操作;S4、若找到第二个cache淘汰操作,则将其与第一个cache淘汰操作共同组成cache淘汰操作组;S5、判断是否可对该cache淘汰操作组进行优化,若是则执行S6,否则执行S7;S6、对cache淘汰操作进行优化,并将优化后的cache淘汰操作作为第一个cache淘汰操作,返回S2继续执行。本发明能够实现更优的冗余同步消除,进一步提升优化后程序的运行时性能。
-
公开(公告)号:CN112579088A
公开(公告)日:2021-03-30
申请号:CN201910920675.0
申请日:2019-09-27
Applicant: 无锡江南计算技术研究所
IPC: G06F8/41
Abstract: 本发明公开了一种面向异构混合编程的一站式程序编译方法,编译器总控增加包括扩展关键字和制导语句,在运算核心变量前添加关键字,在运算核心的函数声明及定义点前添加一个编译指示,在控制核心调用运算核心函数的调用点前添加编译指示;经过前端编译,自动分离控制核心与运算核心的变量与函数;编译器中端对分离出的控制核心上与运算核心上的变量和函数分别进行编译和优化,生成控制核心上程序的中间表示和运算核心上程序的中间表示;将控制核心上和运算核心编译和优化的结果编译成异构众核目标代码。本发明通过在一个编译器内一站式完成控制核心和运算核心代码的分离编译和融合编译,能够解决源到源方式实现复杂、调试困难、可扩展性差的问题。
-
公开(公告)号:CN103106097B
公开(公告)日:2016-02-10
申请号:CN201310078151.4
申请日:2013-03-12
Applicant: 无锡江南计算技术研究所
Abstract: 本发明提供了一种即时编译系统中的栈运算优化方法。采用向量寄存器构成的全局操作数栈,剔除了栈帧中的局部操作数栈,节省了相关开销。为执行引擎的模板表引入了一个新维度,用于指示操作数栈栈顶在向量寄存器文件中位置;分配一个寄存器用来指示溢出区操作数栈的栈顶地址;在每个Java线程初始化时,为溢出区操作数栈分配一个页面存放溢出数据,并且将溢出页面尾地址记录在线程局部缓存中。
-
公开(公告)号:CN103106097A
公开(公告)日:2013-05-15
申请号:CN201310078151.4
申请日:2013-03-12
Applicant: 无锡江南计算技术研究所
Abstract: 本发明提供了一种即时编译系统中的栈运算优化方法。采用向量寄存器构成的全局操作数栈,剔除了栈帧中的局部操作数栈,节省了相关开销。为执行引擎的模板表引入了一个新维度,用于指示操作数栈栈顶在向量寄存器文件中位置;分配一个寄存器用来指示溢出区操作数栈的栈顶地址;在每个Java线程初始化时,为溢出区操作数栈分配一个页面存放溢出数据,并且将溢出页面尾地址记录在线程局部缓存中。
-
公开(公告)号:CN112565474B
公开(公告)日:2024-02-06
申请号:CN201910910495.4
申请日:2019-09-25
Applicant: 无锡江南计算技术研究所
IPC: H04L61/2596 , H04L67/1097
Abstract: 本发明公开一种面向分布式共享SPM的批量数据传输方法,传输前读取SPM可用空间大小,若SPM的可用空间足够,执行下一步;将共享SPM起始目的地址转换为SPM局部地址,根据分布式共享SPM地址编址方法计算得到对应的物理SPM号和SPM内的局部地址;根据SPM局部地址计算对应物理SPM的可传输数据量,由所述SPM号对应线程发起批量数据传输,将批量数据从主存传输至物理SPM;数据传输完成后,更新下一轮传输的起始地址,以及剩余总传输数据量;将在下一轮传输的中计算;当spm_size_free_total
-
公开(公告)号:CN112631593B
公开(公告)日:2022-10-04
申请号:CN201910904073.6
申请日:2019-09-24
Applicant: 无锡江南计算技术研究所
IPC: G06F8/41
Abstract: 本发明公开了一种基于RMA的众核分布式共享SPM实现方法,语言级共享SPM空间描述方法,由编程人员显示申明共享SPM数据;编译器对程序中的共享SPM数据的访问转换为RMA消息,根据访问特征生成对应的高效RMA操作;运行时提供高效RMA支持。本发明为用户提供分布式共享SPM变量的描述机制,并通过运行时RMA实现众核核心SPM的逻辑共享,简化众核核心间的通信,增大众核核心能够访问的高速缓存的空间;同时,充分利用众核处理器SPM和RMA的优势,简化在众核处理器上的编程,提高众核处理器的好用性、易用性,提升众核系统的可编程性。
-
公开(公告)号:CN112416313B
公开(公告)日:2022-07-12
申请号:CN201910782836.4
申请日:2019-08-23
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开了一种支持大整数数据类型和运算符的编译方法,基于GCC编译器,包括以下步骤:对GCC编译器做如下配置:扩展GCC编译器内部预定义宏,增加大整数数据类型的预定义宏;扩展GCC编译器的关键字,增加大整数数据类型关键字ccc_bint,并利用编译器的attribute机制来设置大整数类型属性;扩展GCC编译器前端,增加对大整数数据类型关键字ccc_bint的识别,使得编译器在词法分析阶段可以通过大整数数据类型相关程序的词法分析;扩展GCC编译器前端,增加对大整数数据类型关键字表达式的语法分析操作,使得编译器为大整数数据类型关键字相关的赋值表达式、运算表达式、初始化表达式等进行正确的语法分析。本发明既大大提高了运算的进度,又提高了对计算机系统资源利用的效率,改善了计算机运行的性能。
-
-
-
-
-
-
-
-
-