1.一种构建SNN工作负载自动映射器的方法,其特征在于,包括:
步骤S1:判断计算平台的CPU运算频率和内存是否有变动,若有变动,继续判断是否有存储文件,若有存储文件,则进入步骤S2;若没有变动,或没有存储文件,则量化设计并将获得的参数以文件的形式进行存储,再进入步骤S2,所述量化设计包括存储参数的量化以及时间参数的量化;
步骤S2:编写映射专用脚本,提供映射专用的功能函数接口,所述映射专用脚本包括预测时间模块、网络构建模块和开始预测模块;
步骤S3:对所需映射的SNN案例的网络参数进行自动化采集,获得网络建模参数;
步骤S4:对所获得的网络建模参数进行内存与时间的消耗预测;
步骤S5:将所获得的内存与时间的消耗预测数据转换为映射结果,将所获得的内存与时间的消耗预测数据转换为映射结果的方法为:设计映射函数,处理获得预测数据,得到各个节点规模下的映射变量,将存储占用率的映射阈值和性能最优作为映射标准,通过指定函数推导出映射结果,映射思想为:在存储映射标准方面,以存储占用率Ratem(P)作为映射变量,Ratem(P)计算公式如下所示:Ratem(P)=M(P)/Mhardware
其中,M(P)为P节点规模下均摊到的内存,Mhardware为单节点硬件所提供的存储,以存储占用率的映射阈值TMM作为映射标准,以存储占用率为TMM的节点规模Pstable作为映射结果,集群的节点规模在Pstable之上则可保证平台稳定运行,TMM以用户输入为准。
2.根据权利要求1所述的构建SNN工作负载自动映射器的方法,其特征在于:所述存储参数的量化方法为:通过手动分析量化,同时通过NEST仿真器提供的内存工具来勘定与矫正参数。
3.根据权利要求1所述的构建SNN工作负载自动映射器的方法,其特征在于:所述时间参数的量化包括通信时间量化以及设备、神经元、突触模型的时间量化。
4.根据权利要求1所述的构建SNN工作负载自动映射器的方法,其特征在于:对所需映射的SNN案例的网络参数进行自动化采集时,在预测时间模块与开始预测模块之间,进行一系列创建与连接来构建网络,神经元群的Rspike与Tref在创建时输入。
5.根据权利要求4所述的构建SNN工作负载自动映射器的方法,其特征在于:对于创建与连接所对应的神经元和突触的规模、出入度等相关参数,由2个一维向量:神经元类型表v_n_type、突触类型表v_s_type和3个二维向量:创建表v_n_create、出度表v_n_out和入度表v_n_in来进行存储。
6.根据权利要求1所述的构建SNN工作负载自动映射器的方法,其特征在于:对所获得的网络建模参数进行存储与时间消耗预测时,通过设计各个负载模型函数,处理通过量化设计和获得的建模参数数据,以实现在各个节点规模下的预测。
7.根据权利要求1所述的构建SNN工作负载自动映射器的方法,其特征在于:将所获得的内存与时间的消耗预测数据转换为映射结果的方法为:设计映射函数,处理获得预测数据,得到各个节点规模下的映射变量,将存储占用率的映射阈值和性能最优作为映射标准,通过指定函数推导出映射结果。
8.一种自动映射器,其特征在于,包括:
判断模块,用于判断计算平台的CPU运算频率和内存是否有变动,若有变动,继续判断是否有存储文件,若有存储文件,则进入编写模块;若没有变动,或没有存储文件,则量化设计并将获得的参数以文件的形式进行存储,再进入编写模块,所述量化设计包括存储参数的量化以及时间参数的量化;
编写模块,用于编写映射专用脚本,提供映射专用的功能函数接口,所述映射专用脚本包括预测时间模块、网络构建模块和开始预测模块;
采集模块,用于对所需映射的SNN案例的网络参数进行自动化采集,获得网络建模参数;
预测模块,用于对所获得的网络建模参数进行内存与时间的消耗预测;
映射模块,用于将所获得的内存与时间的消耗预测数据转换为映射结果,将所获得的内存与时间的消耗预测数据转换为映射结果的方法为:设计映射函数,处理获得预测数据,得到各个节点规模下的映射变量,将存储占用率的映射阈值和性能最优作为映射标准,通过指定函数推导出映射结果,映射思想为:在存储映射标准方面,以存储占用率Ratem(P)作为映射变量,Ratem(P)计算公式如下所示:Ratem(P)=M(P)/Mhardware
其中,M(P)为P节点规模下均摊到的内存,Mhardware为单节点硬件所提供的存储,以存储占用率的映射阈值TMM作为映射标准,以存储占用率为TMM的节点规模Pstable作为映射结果,集群的节点规模在Pstable之上则可保证平台稳定运行,TMM以用户输入为准。