基于数据压缩存储的细粒度并行查表方法

    公开(公告)号:CN112636765A

    公开(公告)日:2021-04-09

    申请号:CN201910903873.6

    申请日:2019-09-24

    Abstract: 本发明公开了一种基于数据压缩存储的细粒度并行查表方法,包括以下步骤,原始数据压缩,将原细元素粒度的表按照其粒度压缩存储为int类型的表X;根据原表元素粒度生成不同的掩码表Y;根据原表元素粒度对原查表偏移进行处理,得到偏移量为A和B;按查表偏移A按int类型并行查表X,得到查表结果X1;按查表偏移B按int类型并行查表Y,得到查表结果Y1;对X1和Y1进行逻辑运算及移位操作得到最终查表结果。本发明是对用户原始细粒度表元素合并压缩存储,通过增加简单逻辑运算及移位运算实现细粒度的并行查表功能,有效避免以int为单位进行查表导致的空间膨胀,大大提升了具有细粒度查表类课题的向量并行优化的可能性。

    异构众核架构下的异步并行I/O编程框架方法

    公开(公告)号:CN112579090A

    公开(公告)日:2021-03-30

    申请号:CN201910927243.2

    申请日:2019-09-27

    Abstract: 本发明公开了异构众核架构下的异步并行I/O编程框架方法,在控制核心函数中注册运算核心代理写文件函数;控制核心函数中异步调用运算核心函数;运算核心函数在执行工作时,判断运算核心的上次写文件是否完成,如写文件完成,运算核心向控制核心发送写文件中断信号;如写文件未完成,运算核心将要执行写文件内容作为参数,向控制核心发送写文件中断信号;控制核心在执行工作时,如收到运算核心发出写文件中断信号,则保留当前工作状态,执行代理写文件函数,实现控制核心对运算核心写文件的异步代理功能。本发明运算核心使用发送信号的方式通知控制核心完成异步代理写文件功能,从而提高控制核心的执行效率。

    面向分布式共享SPM的批量数据传输方法

    公开(公告)号:CN112565474A

    公开(公告)日:2021-03-26

    申请号:CN201910910495.4

    申请日:2019-09-25

    Abstract: 本发明公开一种面向分布式共享SPM的批量数据传输方法,传输前读取SPM可用空间大小,若SPM的可用空间足够,执行下一步;将共享SPM起始目的地址转换为SPM局部地址,根据分布式共享SPM地址编址方法计算得到对应的物理SPM号和SPM内的局部地址;根据SPM局部地址计算对应物理SPM的可传输数据量,由所述SPM号对应线程发起批量数据传输,将批量数据从主存传输至物理SPM,传输的数据量spm_tran_len为spm_size_free_local和spm_size_free_total之间的最小值;数据传输完成后,更新下一轮传输的起始地址spm_addr_start=spm_addr_start+spm_tran_len,以及剩余总传输数据量spm_size_free_total=spm_size_free_total‑spm_tran_len;将在下一轮传输的中计算;当spm_size_free_total

    用户透明的运算核并行打印保序代理方法

    公开(公告)号:CN112486424A

    公开(公告)日:2021-03-12

    申请号:CN201910861483.7

    申请日:2019-09-12

    Abstract: 本发明公开了一种用户透明的运算核并行打印保序代理方法,对运算核上的打印输出语句进行扩展替换,将打印输出语句变换成调用运行时系统中的线程打印处理函数;对线程打印处理函数进行参数解析,申请数据转存缓冲区,根据参数类型进行数据转存;运算核请求控制核进行打印保序代理,将申请的数据转存缓冲区首地址传送给控制核;控制核接到中断信号,转入中断处理,根据数据转存缓冲的参数类型执行嵌汇编指令装填打印函数参数,调用printf代理实现运算核打印输出。本发明采用编译器和运行时相结合,自动完成所有运算核的并行有序输出;对用户透明且不需要对运算核的打印输出进行额外管理;只需要运算核的基础编译器对运算核程序进行简单的程序变换即可。

    面向SPM存储层次的数据缓存实现方法

    公开(公告)号:CN112433965A

    公开(公告)日:2021-03-02

    申请号:CN201910788897.1

    申请日:2019-08-26

    Abstract: 本发明公开一种面向SPM存储层次的数据缓存实现方法,包括以下步骤:S1、建立数据缓存的编程描述;S2、编译器分析编译指示,确定循环分块参数LoopBlockKey;S3、编译器根据S2中获得的循环分块参数,计算每一个循环块的计算、访存开销与数据传送开销的比值,得到并行隐藏参数Hkey;S4、根据S3得到的并行隐藏参数,反馈修正,得到最终的循环分块参数;S5、根据循环分块参数和并行隐藏参数,选择循环重构策略进行循环重构。本发明有效提升了编译器的上下文分析精确度和应用的访存效率,且可以做到计算与不同存储层次间的数据传送并行进行,有效利用处理器的各个存储层次,更进一步提升程序性能。

    一种自适应任务调度方法
    17.
    发明授权

    公开(公告)号:CN114327808B

    公开(公告)日:2025-01-28

    申请号:CN202110425774.9

    申请日:2021-04-20

    Abstract: 本发明公开一种自适应任务调度方法,包括在课题开始运行后运行时系统对计算资源进行初始化,初始化节点类型,划分区域,选取节点类型,初始化任务池;课题正式运行时进行任务分配与调度,随着叶子计算节点完成任务后动态生成新任务并进行调度,当叶子计算节点完成某一任务计算且动态产生新的任务时,叶子节点选择第一个新任务继续进行计算,并通过消息回报其余新产生任务(如果存在)给区域主节点,全局主节点采用消息对各区域任务池进行探测,当某一区域任务显著高于其余区域时,对该区域任务进行回收,进入动态子任务任务池。本发明可避免课题运算过程中动态生成的任务导致负载不均衡的现象,提升计算资源的利用率和课题解算效率。

    用户透明的运算核并行打印保序代理方法

    公开(公告)号:CN112486424B

    公开(公告)日:2022-10-04

    申请号:CN201910861483.7

    申请日:2019-09-12

    Abstract: 本发明公开了一种用户透明的运算核并行打印保序代理方法,对运算核上的打印输出语句进行扩展替换,将打印输出语句变换成调用运行时系统中的线程打印处理函数;对线程打印处理函数进行参数解析,申请数据转存缓冲区,根据参数类型进行数据转存;运算核请求控制核进行打印保序代理,将申请的数据转存缓冲区首地址传送给控制核;控制核接到中断信号,转入中断处理,根据数据转存缓冲的参数类型执行嵌汇编指令装填打印函数参数,调用printf代理实现运算核打印输出。本发明采用编译器和运行时相结合,自动完成所有运算核的并行有序输出;对用户透明且不需要对运算核的打印输出进行额外管理;只需要运算核的基础编译器对运算核程序进行简单的程序变换即可。

    基于RMA的众核分布式共享SPM实现方法

    公开(公告)号:CN112631593A

    公开(公告)日:2021-04-09

    申请号:CN201910904073.6

    申请日:2019-09-24

    Abstract: 本发明公开了一种基于RMA的众核分布式共享SPM实现方法,语言级共享SPM空间描述方法,由编程人员显示申明共享SPM数据;编译器对程序中的共享SPM数据的访问转换为RMA消息,根据访问特征生成对应的高效RMA操作;运行时提供高效RMA支持。本发明为用户提供分布式共享SPM变量的描述机制,并通过运行时RMA实现众核核心SPM的逻辑共享,简化众核核心间的通信,增大众核核心能够访问的高速缓存的空间;同时,充分利用众核处理器SPM和RMA的优势,简化在众核处理器上的编程,提高众核处理器的好用性、易用性,提升众核系统的可编程性。

    一种GOT表写保护的保护方法

    公开(公告)号:CN105279429B

    公开(公告)日:2018-01-19

    申请号:CN201510826917.1

    申请日:2015-11-24

    Abstract: 本发明提供了一种GOT表写保护的保护方法,包括:并且将初始化后的GOT表的读写操作属性设置为只读;在第一次调用GOT表中包含的函数相关表格项所对应的函数时,进行地址解析,以得到入口地址;先将GOT表的读写操作属性设置为读写,然后将解析后得到的所述入口地址写入所述函数相关表格项中;在将解析后得到的所述入口地址写入所述函数相关表格项中之后,将所述GOT表的读写操作属性再次设置为只读。

Patent Agency Ranking