-
公开(公告)号:CN101452379B
公开(公告)日:2012-05-23
申请号:CN200710094330.1
申请日:2007-11-28
Applicant: 无锡江南计算技术研究所
Abstract: 一种内存空间的分析方法和装置、检查点的保留方法和装置,所述内存空间的分析方法包括下述步骤:在程序中设置潜在检查点,所述潜在检查点为分析内存空间的指示;在潜在检查点的作用范围内,分析是否有不需要保留的内存空间;若有不需要保留的内存空间,则标识所述内存空间不需要保留的属性的作用域。所述内存空间的分析方法和检查点的保留方法可以减少透明检查点的保留量和缩短保留恢复时间。
-
公开(公告)号:CN112416539B
公开(公告)日:2022-11-15
申请号:CN201910771643.9
申请日:2019-08-21
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种面向异构众核处理器的多任务并行调度方法,包括以下步骤:S1、创建一个任务队列,用于存储待加速计算的任务;S2、任务运行时,主核将从核上已完成的任务回收,将新任务添加到任务队列的尾部;S3、将从核以适当的粒度进行分组,以组为单位主动从任务队列的头部获取任务;S4、一组从核如果获取了当前任务的一部分计算,则要增加当前任务的已有计算资源的数量;S5、当任务的所需计算资源的数量等于已有计算资源的数量时,则该任务分配完毕。本发明提高了任务调度的效率,实现计算资源的精细管理,还解决了众核处理器计算核心多、而实际应用并行度不够、计算负载不均衡导致的计算资源的浪费问题,提高了资源的利用效率。
-
公开(公告)号:CN112632089B
公开(公告)日:2022-07-12
申请号:CN201910904039.9
申请日:2019-09-24
Applicant: 无锡江南计算技术研究所
IPC: G06F16/23
Abstract: 本发明公开了一种面向异构众核处理器的并行离散更新方法,包括以下步骤:S1、对地址连续的离散更新数据区进行块划分,并将数据块与从核进行映射,使得每个从核负责其中一个数据块的更新;S2、每个从核将指令执行过程中产生的离散更新请求进行分类,分为需从核自己处理的离散更新请求和需其它从核处理的离散更新请求,并在产生离散更新请求的地方插入相应的处理函数;S3、需从核自己处理的离散更新请求按程序段func1的处理流程进行处理;S4、需其它从核处理的离散更新请求按程序段func2的处理流程进行处理。本发明可以实现较高性能的并行离散更新,并可以处理LDM空间装不下的大数据离散更新问题。
-
公开(公告)号:CN112416539A
公开(公告)日:2021-02-26
申请号:CN201910771643.9
申请日:2019-08-21
Applicant: 无锡江南计算技术研究所
Abstract: 本发明公开一种面向异构众核处理器的多任务并行调度方法,包括以下步骤:S1、创建一个任务队列,用于存储待加速计算的任务;S2、任务运行时,主核将从核上已完成的任务回收,将新任务添加到任务队列的尾部;S3、将从核以适当的粒度进行分组,以组为单位主动从任务队列的头部获取任务;S4、一组从核如果获取了当前任务的一部分计算,则要增加当前任务的已有计算资源的数量;S5、当任务的所需计算资源的数量等于已有计算资源的数量时,则该任务分配完毕。本发明提高了任务调度的效率,实现计算资源的精细管理,还解决了众核处理器计算核心多、而实际应用并行度不够、计算负载不均衡导致的计算资源的浪费问题,提高了资源的利用效率。
-
公开(公告)号:CN105242909A
公开(公告)日:2016-01-13
申请号:CN201510829920.9
申请日:2015-11-24
Applicant: 无锡江南计算技术研究所
IPC: G06F9/38
Abstract: 本发明提供了一种基于多版本代码生成的众核循环分块方法,其中众核处理器由控制核心和计算核心阵列组成,其中每个计算核心带有一块高速缓存;而且其中每个计算核心自带的一块高速缓存作为片上存储以存储器直接访问的方式与主存进行数据传输;其特征在于,编译器在对众核循环进行并行变换时,根据编译器指示的值来确定循环分块的粒度,从而生成不同版本的并行代码,同时编译器通过代码插装的方式将片上存储的使用信息在运行时进行反馈以便能够根据反馈的使用信息对编译指示的值进行相应的调整,以使得片上存储的利用率最大化。
-
公开(公告)号:CN102968388B
公开(公告)日:2016-01-13
申请号:CN201210417584.3
申请日:2012-10-26
Applicant: 无锡江南计算技术研究所
IPC: G06F12/0806
Abstract: 本发明提供了一种数据分布方法以及装置,所述方法包括:将第一代码所处理的第一数据块划分成多个第二数据块,其中每一个第二数据块和一个处理器核对应;根据所述第一代码确定每一个第二数据块对应的边界数据;为每一个第二数据块和对应的边界数据在对应的处理器核中申请局部存储空间;以及根据所述第一代码生成与每一个第二数据块对应的第二代码,所述第二代码能在第二数据块对应的处理器核中根据所述第一代码的处理逻辑完成对所述第二数据块的处理。所述方法能够减少访存开销,从而提高处理器的程序执行速度。
-
公开(公告)号: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: 本发明公开一种众核处理器上从核局存空间动态管理方法,主核进程在每个从核上启动一个守护线程,并根据程序执行流程,请求从核守护线程执行指定的从核子函数,包括建立新的数据环境、执行加速段子函数、撤销当前的数据环境,或请求从核线程终止运行。本发明可消除空间申请、释放的管理开销,提高从核局存空间的利用率,避免局存空间碎片化现象,增加从核线程栈可用的空间。
-
公开(公告)号: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。本发明实现了迭代间有先写后读依赖的循环的并行计算,解决了多线程并行时数据的无序竞争访问,能有效提高程序的性能。
-
-
-
-
-
-
-
-
-