-
公开(公告)号:CN105487911A
公开(公告)日:2016-04-13
申请号:CN201510830718.8
申请日:2015-11-24
Applicant: 无锡江南计算技术研究所
IPC: G06F9/45
CPC classification number: G06F8/443 , G06F3/0685
Abstract: 一种基于编译指导的众核数据分片方法,包括:在加速程序段开始处添加编译指导语句,描述原始数组的多个分片特征;编译器识别编译指导语句,记录原始数组的每个分片信息;对原始数组的各个分片信息,计算该分片的大小,并在局存中申请具有相同大小的相应局存数组;扫描整个加速程序段,检查原始数据的每个引用;如果该引用的数据在当前的分片内,则将原始数组的引用转换成对局存数组的引用;如果该引用是读引用,则在原始数组的分片信息上记录读标志;如果该引用是写引用,则在原始数组的分片信息上记录写标志;如果分片有读标志,在加速段开始处插入该分片的数据导入语句;如果分片有写标志,在加速段开始处插入该分片的数据导出语句。
-
公开(公告)号:CN102981839B
公开(公告)日:2015-08-12
申请号:CN201210441329.2
申请日:2012-11-06
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开了一种合并执行大规模并行线程的数据扩展优化方法,包括:在合并执行的并行线程中识别线程不变量;所述线程不变量在每个合并执行的并行线程中保持一致;编译过程中,仅对非线程不变量,进行数据扩展。本发明减少了不必要的线程私有数据扩展,能有效缓解合并后栈空间的剧烈膨胀,提高程序的执行效率。
-
公开(公告)号:CN102946379A
公开(公告)日:2013-02-27
申请号:CN201210394765.9
申请日:2012-10-16
Applicant: 无锡江南计算技术研究所
Abstract: 大规模并行系统下的多层摘要文件生成方法及文件正确性验证方法。多层摘要文件生成方法包括:以原始Hash块大小为单位,将目标文件拆分成多个一级文件;用报文摘要算法为每个一级文件生成一级层间摘要;基于一级层间摘要,至少使用一次报文摘要算法生成总摘要。文件正确性验证方法包括:读取文件对应的多层摘要文件,获取原始Hash块大小;以原始Hash块大小为单位,将文件拆分成多个一级文件;用报文摘要算法为每个一级文件生成一级层间摘要,将一级层间摘要与多层摘要文件中对应的一级层间摘要进行比较,若不一致,则输出错误信息。本发明可在大规模并行系统上快速实现大量文件的正确性检查。
-
公开(公告)号:CN112416825B
公开(公告)日:2022-10-04
申请号:CN201910771644.3
申请日:2019-08-21
Applicant: 无锡江南计算技术研究所
IPC: G06F13/28
Abstract: 本发明公开一种面向异构众核基于空间重排的数据传输方法,包括以下步骤:S1、在编译时,为每个加速区建立一张数据传输信息表,此数据传输信息表中包含当前加速区待传输数据的信息;S2、按照数据的传输模式,将待传输的多个数据进行空间重排;S3、在加速区计算开始之前,启动主存数据到局存缓冲区的DMA数据传输,将加速区计算所需的数据,包括读入的数据和读写的数据,从主存一次传输至局存的缓冲区中;S4、在加速区计算完成之后,启动局存缓冲区到主存的DMA数据传输,将加速区需要传输的要写出的数据,包括读写的数据和写出的数据,从局存缓冲区一次传输至主存中。本发明有效降低众核片上局存和主存之间多次数据传输的开销,提升了程序的访存效率和整体性能。
-
公开(公告)号:CN114218149A
公开(公告)日:2022-03-22
申请号:CN202110480191.6
申请日:2021-04-30
Applicant: 无锡江南计算技术研究所
IPC: G06F15/167 , G06F15/177
Abstract: 本发明公开一种众核处理器上从核局存空间动态管理方法,主核进程在每个从核上启动一个守护线程,并根据程序执行流程,请求从核守护线程执行指定的从核子函数,包括建立新的数据环境、执行加速段子函数、撤销当前的数据环境,或请求从核线程终止运行。本发明可消除空间申请、释放的管理开销,提高从核局存空间的利用率,避免局存空间碎片化现象,增加从核线程栈可用的空间。
-
公开(公告)号:CN114217811A
公开(公告)日:2022-03-22
申请号:CN202110453214.4
申请日:2021-04-26
Applicant: 无锡江南计算技术研究所
IPC: G06F8/41
Abstract: 本发明公开一种面向众核分布式局存的隐式数据动态重用方法,包括以下步骤:S1、根据加速计算中的数据访问模式、数据量、以及加速计算核心本地局存的容量,对数据在加速计算核心本地局存中的存放方式分别进行处理;S2、通过“注册编译指示”标记程序中可能重用的数据变量名或数组偏移;S3、创建重用数据的主存地址和局存地址映射表;S4、通过“重用编译指示”指明需要重用的数据变量名或数组偏移;S6、将“重用编译指示”所标记的代码段中对重用数据主存变量的访问做替换处理。本发明既能动态地申请释放,充分利用有限的局存空间,又能使重用数据尽可能长地驻留在局存中,减少数据传输的开销,提高程序的性能。
-
公开(公告)号:CN112948319A
公开(公告)日:2021-06-11
申请号:CN201911255530.X
申请日:2019-12-10
Applicant: 无锡江南计算技术研究所
IPC: G06F15/177 , G06F8/30 , G06F8/41
Abstract: 本发明公开一种面向异构融合众核架构的数据自动布局方法和装置,包括以下步骤:S1、编译器通过静态分析组件确定可以分布布局到计算核心阵列片上高速缓存的数组;S2、编译器使用代码插装组件对布局到片上高速缓存的数组的有关信息进行注册;S3、编译器根据动态分析组件获取的注册信息和循环索引变量,再根据关系表达式计算得到最佳tile值,并将获得的最佳tile值更新到内部数据库中;S4、编译器根据最佳tile值,对循环进行重新分块划分,并重新生成可执行的众核加速目标码;S5、执行编译生成的可执行的众核加速目标码,使数据布局达到最优。本发明解决了用户需要对同一程序的不同规模的算例手动调整tile值来控制关键数据布局的问题,不需要用户手动干预,实现数据的自动布局。
-
公开(公告)号:CN112445486A
公开(公告)日:2021-03-05
申请号:CN201910800767.5
申请日:2019-08-28
Applicant: 无锡江南计算技术研究所
IPC: G06F8/41
Abstract: 本发明公开一种基于编译指导的有读写依赖循环的多线程并行方法,包括以下步骤:S1、在循环迭代开始处添加编译指导语句;S2、编译器根据编译指导语句生成数据读写状态表;S3、编译器在对程序中依赖数组进行读访问时,增加判断语句;S4、编译器在对程序中依赖数组进行写访问后,增加对数据读写状态表中该数据对应元素的更新操作;S5、当程序多线程运行时,数据读写状态表中所有数据状态均初始化成false;S6、线程x执行对依赖数组中一个数据的写访问后,将数据读写状态表中对应的状态设置为true。本发明实现了迭代间有先写后读依赖的循环的并行计算,解决了多线程并行时数据的无序竞争访问,能有效提高程序的性能。
-
公开(公告)号:CN112416825A
公开(公告)日:2021-02-26
申请号:CN201910771644.3
申请日:2019-08-21
Applicant: 无锡江南计算技术研究所
IPC: G06F13/28
Abstract: 本发明公开一种面向异构众核基于空间重排的数据传输方法,包括以下步骤:S1、在编译时,为每个加速区建立一张数据传输信息表,此数据传输信息表中包含当前加速区待传输数据的信息;S2、按照数据的传输模式,将待传输的多个数据进行空间重排;S3、在加速区计算开始之前,启动主存数据到局存缓冲区的DMA数据传输,将加速区计算所需的数据,包括读入的数据和读写的数据,从主存一次传输至局存的缓冲区中;S4、在加速区计算完成之后,启动局存缓冲区到主存的DMA数据传输,将加速区需要传输的要写出的数据,包括读写的数据和写出的数据,从局存缓冲区一次传输至主存中。本发明有效降低众核片上局存和主存之间多次数据传输的开销,提升了程序的访存效率和整体性能。
-
公开(公告)号:CN102981836A
公开(公告)日:2013-03-20
申请号:CN201210438958.X
申请日:2012-11-06
Applicant: 无锡江南计算技术研究所
Abstract: 一种异构系统的编译方法和编译器,其中,所述的异构系统的编译方法包括:识别系统服务语句,分离计算语句和所述系统服务语句,对所述系统服务语句进行标识;对系统服务语句进行格式解析,收集系统服务信息数据;在从核程序中生成第一语句,将所述系统服务信息数据打包传送到主核端I/O缓冲,并向主核端发送服务请求;在主核程序中生成第二语句,包括从核计算加载服务程序和与所述服务请求相应的系统服务程序;在所述主核程序中生成第三语句,根据所述标识对所述系统服务程序进行轮询处理,并依据所述主核端I/O缓冲中的数据处理所述系统服务程序。本发明的异构系统的编译方法和编译器,在异构系统上实现了用户层同构视角的编程。
-
-
-
-
-
-
-
-
-