CN112463532B - Method for constructing SNN workload automatic mapper and automatic mapper - Google Patents
Method for constructing SNN workload automatic mapper and automatic mapper Download PDFInfo
- Publication number
- CN112463532B CN112463532B CN202011330393.4A CN202011330393A CN112463532B CN 112463532 B CN112463532 B CN 112463532B CN 202011330393 A CN202011330393 A CN 202011330393A CN 112463532 B CN112463532 B CN 112463532B
- Authority
- CN
- China
- Prior art keywords
- mapping
- time
- parameters
- storage
- snn
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3024—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3058—Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
- G06F11/3062—Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种构建SNN工作负载自动映射器的方法及自动映射器,包括:判断计算平台的CPU运算频率和内存是否有变动,若有变动,继续判断是否有存储文件,若有存储文件,则进入下一步;若没有变动,或没有存储文件,则量化设计并将获得的参数以文件的形式进行存储,再进入下一步;编写映射专用脚本,提供映射专用的功能函数接口;对所需映射的SNN案例的网络参数进行自动化采集,获得网络建模参数;对所获得的网络建模参数进行内存与时间的消耗预测;将所获得的内存与时间的消耗预测数据转换为映射结果。本发明可以保证计算平台稳定与高性能地运行。
The invention relates to a method and an automatic mapper for constructing an SNN workload automatic mapper. Then go to the next step; if there is no change or no storage file, quantify the design and store the obtained parameters in the form of a file, and then go to the next step; write a special script for mapping, and provide a special function interface for mapping; The network parameters of the mapped SNN case are automatically collected to obtain network modeling parameters; the memory and time consumption predictions are performed on the obtained network modeling parameters; the obtained memory and time consumption prediction data are converted into mapping results. The present invention can ensure the stable and high-performance operation of the computing platform.
Description
技术领域technical field
本发明涉及SNN工作负载的技术领域,尤其是指一种构建SNN工作负载自动映射器的方法及自动映射器。The present invention relates to the technical field of SNN workload, in particular to a method for constructing an SNN workload automatic mapper and the automatic mapper.
背景技术Background technique
为了满足大规模脉冲神经网络(Spiking Neural Network,简称SNN)的计算需求,类脑计算系统通常需要采用大规模并行计算平台。因此,如何快速为SNN工作负载确定合理的计算节点数(即如何把工作负载合理映射到计算平台上)以获得最佳的性能、功耗等指标就成为类脑计算系统需解决的关键问题之一。In order to meet the computing requirements of a large-scale Spiking Neural Network (SNN), a brain-like computing system usually requires a large-scale parallel computing platform. Therefore, how to quickly determine a reasonable number of computing nodes for the SNN workload (that is, how to reasonably map the workload to the computing platform) to obtain the best performance, power consumption and other indicators has become one of the key issues to be solved by brain-like computing systems. one.
针对SNN工作负载预测与匹配的问题,Kunkel等人的工作通过建模与手动分析的方式,实现了对SNN网络所耗存储的预测。而Schenck等人的工作则通过对建模与采集实测数据集进行LM最小二乘优化算法拟合训练的方式,实现了对仿真时间消耗的预测。这些方式虽然有效地解决了存储与仿真时间预测的问题,但其负载模型针对的案例单一,不具普适性,且对解决映射问题不具优势。这种通过手动采集测量值来拟合模型的方式,无疑是效率低下且代价太高。Aiming at the problem of SNN workload prediction and matching, Kunkel et al.'s work achieves the prediction of the storage consumption of the SNN network through modeling and manual analysis. The work of Schenck et al. realized the prediction of simulation time consumption by fitting and training the LM least squares optimization algorithm on the modeling and collected measured data sets. Although these methods effectively solve the problems of storage and simulation time prediction, their load models target a single case, are not universal, and have no advantage in solving the mapping problem. This way of fitting a model by manually collecting measurements is undoubtedly inefficient and expensive.
对于如何实现SNN大规模仿真的问题,目前业界主流方式是通过布置大规模分布式集群,以并行化的方式实现大规模SNN网络的存储与计算的稀释。但在实际操作时,遇到以下两个负载问题:其一,关于存储,在承载大规模的SNN案例时,基于分布式存储的思想,会出现投入的计算节点规模过小,使得计算平台所提供存储难以支撑案例所需存储的问题,导致计算平台无法稳定运行;其二,关于性能,在具体仿真时,会出现计算平台的性能受到节点规模因素的影响,即计算与通信平衡问题。当节点规模小于/大于平衡点时,会使计算时间大于/小于通信时间,导致计算平台性能的未充分利用/浪费。For the problem of how to realize large-scale simulation of SNN, the current mainstream method in the industry is to deploy large-scale distributed clusters to realize the dilution of storage and calculation of large-scale SNN network in a parallel manner. However, in actual operation, the following two load problems are encountered: First, regarding storage, when carrying large-scale SNN cases, based on the idea of distributed storage, the scale of the invested computing nodes will be too small, making the computing platform It is difficult to provide storage to support the storage required for the case, resulting in the inability of the computing platform to run stably; secondly, regarding performance, in the specific simulation, the performance of the computing platform will be affected by the node scale factor, that is, the balance between computing and communication. When the node scale is smaller/greater than the balance point, the computation time will be larger/smaller than the communication time, resulting in underutilization/waste of computing platform performance.
发明内容SUMMARY OF THE INVENTION
为此,本发明所要解决的技术问题在于克服现有技术中存储与性能问题会造成SNN案例的工作负载与实际计算平台严重不匹配,导致不能稳定高效运行的问题,从而提供一种针对不同的SNN案例与不同的硬件平台,可以快速确定满足最低存储需求与计算通信平衡的节点映射,成为保证平台稳定和高性能地运行的构建SNN工作负载自动映射器的方法及自动映射器。Therefore, the technical problem to be solved by the present invention is to overcome the storage and performance problems in the prior art, which will cause the workload of the SNN case to be seriously mismatched with the actual computing platform, resulting in the problem of inability to run stably and efficiently, thereby providing a solution for different The SNN case and different hardware platforms can quickly determine the node mapping that satisfies the minimum storage requirement and the balance of computing communication, and becomes a method and an automatic mapper for building an SNN workload automatic mapper to ensure the stable and high-performance operation of the platform.
为解决上述技术问题,本发明的一种构建SNN工作负载自动映射器的方法,包括:步骤S1:判断计算平台的CPU运算频率和内存是否有变动,若有变动,继续判断是否有存储文件,若有存储文件,则进入步骤S2;若没有变动,或没有存储文件,则量化设计并将获得的参数以文件的形式进行存储,再进入步骤S2;步骤S2:编写映射专用脚本,提供映射专用的功能函数接口;步骤S3:对所需映射的SNN案例的网络参数进行自动化采集,获得网络建模参数;步骤S4:对所获得的网络建模参数进行内存与时间的消耗预测;步骤S5:将所获得的内存与时间的消耗预测数据转换为映射结果。In order to solve the above-mentioned technical problems, a method for constructing an SNN workload automatic mapper of the present invention includes: Step S1: judging whether the CPU operation frequency and memory of the computing platform have changed, and if there is a change, continue to judge whether there is a storage file, If there is a storage file, go to step S2; if there is no change, or there is no storage file, quantify the design and store the obtained parameters in the form of a file, and then enter step S2; Step S3: Automatically collect the network parameters of the SNN case to be mapped to obtain network modeling parameters; Step S4: Predict the memory and time consumption of the obtained network modeling parameters; Step S5: Convert the obtained memory and time consumption prediction data into mapping results.
在本发明的一个实施例中,所述量化设计包括存储参数的量化以及时间参数的量化。In one embodiment of the present invention, the quantization design includes quantization of storage parameters and quantization of time parameters.
在本发明的一个实施例中,所述存储参数的量化方法为:通过手动分析量化,同时通过NEST仿真器提供的内存工具来勘定与矫正参数。In an embodiment of the present invention, the method for quantifying the stored parameters is: quantifying and quantifying the parameters manually, and at the same time, using the memory tool provided by the NEST simulator to map and correct the parameters.
在本发明的一个实施例中,所述时间参数的量化包括通信时间量化以及设备、神经元、突触模型的时间量化。In one embodiment of the present invention, the quantification of the time parameter includes the time quantification of communication and the time quantification of device, neuron, and synapse models.
在本发明的一个实施例中,所述映射专用脚本包括预测时间模块、网络构建模块和开始预测模块。In one embodiment of the invention, the mapping specific script includes a prediction time module, a network building module and a start prediction module.
在本发明的一个实施例中,对所需映射的SNN案例的网络参数进行自动化采集时,在预测时间模块与开始预测模块之间,进行一系列创建与连接来构建网络,神经元群的Rspike与Tref在创建时输入。In one embodiment of the present invention, when the network parameters of the SNN case to be mapped are automatically collected, a series of creations and connections are performed between the prediction time module and the start prediction module to construct the network. The R of the neuron group spike and T ref are entered at creation time.
在本发明的一个实施例中,对于创建与连接所对应的神经元和突触的规模、出入度等相关参数,由2个一维向量:神经元类型表v_n_type、突触类型表v_s_type和3个二维向量:创建表v_n_create、出度表v_n_out和入度表v_n_in来进行存储。In an embodiment of the present invention, for the related parameters such as the scale, in-and-out degree, etc. of neurons and synapses corresponding to the connection, there are two one-dimensional vectors: neuron type table v_n_type, synapse type table v_s_type and 3 A two-dimensional vector: create table v_n_create, out-degree table v_n_out and in-degree table v_n_in for storage.
在本发明的一个实施例中,对所获得的网络建模参数进行存储与时间消耗预测时,通过设计各个负载模型函数,处理通过量化设计和获得的建模参数数据,以实现在各个节点规模下的预测。In one embodiment of the present invention, when storing and predicting the time consumption of the obtained network modeling parameters, by designing each load model function, the modeling parameter data obtained through quantitative design and obtained is processed, so as to realize the scale of each node. forecast below.
在本发明的一个实施例中,将所获得的内存与时间的消耗预测数据转换为映射结果的方法为:设计映射函数,处理获得预测数据,得到各个节点规模下的映射变量,将存储占用率的映射阈值和性能最优作为映射标准,通过指定函数推导出映射结果。In an embodiment of the present invention, the method for converting the obtained memory and time consumption prediction data into a mapping result is as follows: designing a mapping function, processing the obtained prediction data, obtaining mapping variables under the scale of each node, and converting the storage occupancy rate into The mapping threshold and optimal performance are used as mapping criteria, and the mapping result is derived through the specified function.
本发明提供一种自动映射器,包括:判断模块,用于判断计算平台的CPU运算频率和内存是否有变动,若有变动,继续判断是否有存储文件,若有存储文件,则进入编写模块;若没有变动,或没有存储文件,则量化设计并将获得的参数以文件的形式进行存储,再进入编写模块;编写模块,用于编写映射专用脚本,提供映射专用的功能函数接口;采集模块,用于对所需映射的SNN案例的网络参数进行自动化采集,获得网络建模参数;预测模块,用于对所获得的网络建模参数进行内存与时间的消耗预测;映射模块,用于将所获得的内存与时间的消耗预测数据转换为映射结果。The invention provides an automatic mapper, comprising: a judgment module for judging whether the CPU operation frequency and memory of the computing platform have changed, if there is a change, continue to judge whether there is a storage file, and if there is a storage file, enter the writing module; If there is no change, or no file is stored, quantify the design and store the obtained parameters in the form of a file, and then enter the writing module; the writing module is used to write a special script for mapping and provides a special function interface for mapping; the acquisition module, It is used to automatically collect the network parameters of the SNN cases that need to be mapped to obtain network modeling parameters; the prediction module is used to predict the memory and time consumption of the obtained network modeling parameters; the mapping module is used to The obtained memory and time consumption prediction data are converted into mapping results.
本发明的上述技术方案相比现有技术具有以下优点:The above-mentioned technical scheme of the present invention has the following advantages compared with the prior art:
本发明所述的构建SNN工作负载自动映射器的方法及自动映射器,设计并实现了一种构建SNN工作负载自动映射器(Workload Automatic Mapper for SNN,简称SWAM)的方法,SWAM能够涵盖不同的SNN网络在不同的计算平台上的负载情况;快速有效地推导出整个工作负载在计算平台上的合理映射结果,以保证计算平台稳定与高性能地运行;避免极其耗时的完整工作负载的运行与试探,对研究与优化类脑体系结构具有现实意义。The method for constructing an SNN workload automatic mapper and the automatic mapper described in the present invention design and implement a method for constructing an SNN workload automatic mapper (Workload Automatic Mapper for SNN, SWAM for short), and SWAM can cover different The load situation of the SNN network on different computing platforms; quickly and effectively deduce the reasonable mapping results of the entire workload on the computing platform to ensure the stable and high-performance operation of the computing platform; avoid the extremely time-consuming operation of the complete workload It has practical significance for the research and optimization of the brain-like architecture.
附图说明Description of drawings
为了使本发明的内容更容易被清楚的理解,下面根据本发明的具体实施例并结合附图,对本发明作进一步详细的说明,其中In order to make the content of the present invention easier to understand clearly, the present invention will be described in further detail below according to specific embodiments of the present invention and in conjunction with the accompanying drawings, wherein
图1是本发明构建SNN工作负载自动映射器的方法流程图;Fig. 1 is the method flow chart that the present invention constructs SNN workload automatic mapper;
图2是本发明量化基准网络的结构示意图;Fig. 2 is the structural representation of the quantitative benchmark network of the present invention;
图3是本发明存储与时间参数的量化示意图;Fig. 3 is the quantization schematic diagram of storage and time parameter of the present invention;
图4是本发明采集、预测与映射的示意图;Fig. 4 is the schematic diagram of collection, prediction and mapping of the present invention;
图5a是本发明仿真时间负载模型组成示意图;Fig. 5a is the composition schematic diagram of simulation time load model of the present invention;
图5b是本发明内存与仿真时间模型的组成示意图;Fig. 5b is the composition schematic diagram of memory and simulation time model of the present invention;
图6是本发明tn的细分示意图。FIG. 6 is a schematic diagram of the subdivision of t n in the present invention.
具体实施方式Detailed ways
实施例一Example 1
如图1和图2所示,本实施例提供一种构建SNN工作负载自动映射器的方法,包括:步骤S1:判断计算平台的CPU运算频率和内存是否有变动,若有变动,继续判断是否有存储文件,若有存储文件,则进入步骤S2;若没有变动,或没有存储文件,则量化设计并将获得的参数以文件的形式进行存储,再进入步骤S2;步骤S2:编写映射专用脚本,提供映射专用的功能函数接口;步骤S3:对所需映射的SNN案例的网络参数进行自动化采集,获得网络建模参数;步骤S4:对所获得的网络建模参数进行内存与时间的消耗预测;步骤S5:将所获得的内存与时间的消耗预测数据转换为映射结果。As shown in FIG. 1 and FIG. 2 , this embodiment provides a method for constructing an SNN workload automatic mapper, including: Step S1: Determine whether the CPU operation frequency and memory of the computing platform have changed, and if there are changes, continue to determine whether If there is a storage file, if there is a storage file, go to step S2; if there is no change, or there is no storage file, quantify the design and store the obtained parameters in the form of a file, and then enter step S2; Step S2: write a special script for mapping , providing a dedicated function interface for mapping; Step S3: Automatically collect network parameters of the SNN case to be mapped to obtain network modeling parameters; Step S4: Predict the memory and time consumption of the obtained network modeling parameters ; Step S5: Convert the obtained memory and time consumption prediction data into a mapping result.
本实施例所述构建SNN工作负载自动映射器的方法,所述步骤S1中,判断计算平台的CPU运算频率和内存是否有变动,若有变动,继续判断是否有存储文件,若有存储文件,则进入步骤S2;若没有变动,或没有存储文件,则量化设计并将获得的参数以文件的形式进行存储,再进入步骤S2,由于量化设计获得的参数具有稳定性,因此可以文件的形式进行存储,而且获得的参数也可作为网络建模参数;所述步骤S2中,编写映射专用脚本,是自动化设计的前提,为自动化设计提供了映射专用的功能函数接口;所述步骤S3中,对所需映射的SNN案例的网络参数进行自动化采集,获得网络建模参数,由于无需创建具体突触以造成内存与时间消耗,因此极大地减少了SWAM的时间与空间复杂度;所述步骤S4中,对所获得的网络建模参数进行内存与时间的消耗预测,由于内存与时间参数的可复用性以及自动化设计,用户仅在首次使用时需进行量化操作,后续只需针对所需映射的案例进行映射专用脚本的编写即可完成映射工作;所述步骤S5中,将所获得的内存与时间的消耗预测数据转换为映射结果,快速有效地推导出整个工作负载在计算平台上的合理映射结果,以保证计算平台稳定与高性能地运行;而且可以避免极其耗时的完整工作负载的运行与试探,对研究与优化类脑体系结构具有现实意义。In the method for constructing an SNN workload automatic mapper described in this embodiment, in the step S1, it is judged whether the CPU operation frequency and memory of the computing platform have changed, and if there is a change, continue to judge whether there is a storage file, and if there is a storage file, Then enter step S2; if there is no change, or there is no storage file, then quantify the design and store the obtained parameters in the form of a file, and then enter step S2, because the parameters obtained by the quantitative design have stability, it can be carried out in the form of a file. storage, and the obtained parameters can also be used as network modeling parameters; in the step S2, writing a mapping special script is the premise of the automatic design, and provides a mapping special function function interface for the automatic design; in the step S3, to The network parameters of the SNN cases to be mapped are automatically collected to obtain network modeling parameters. Since there is no need to create specific synapses to cause memory and time consumption, the time and space complexity of SWAM is greatly reduced; in the step S4 , predict the memory and time consumption of the obtained network modeling parameters. Due to the reusability of memory and time parameters and automatic design, the user only needs to perform quantization operations when using it for the first time, and then only needs to map the required mapping. The mapping work can be completed by writing a mapping special script for the case; in the step S5, the obtained memory and time consumption prediction data are converted into mapping results, and the reasonable mapping of the entire workload on the computing platform can be quickly and effectively deduced As a result, to ensure the stable and high-performance operation of the computing platform; and to avoid the extremely time-consuming operation and trial of the complete workload, which is of practical significance for the research and optimization of brain-like architectures.
所述量化设计包括存储参数的量化以及时间参数的量化。The quantization design includes quantization of storage parameters and quantization of time parameters.
存储参数的数值基本不受计算平台与SNN网络的影响,具有稳定性。所述存储参数的量化方法为:通过手动分析量化,同时通过NEST仿真器提供的内存工具来勘定与矫正参数。具体地,存储参数量化的设计思路来源于Kunkel等人的工作,量化方法具体为通过手动分析量化,同时通过NEST仿真器提供的内存工具来勘定与矫正参数。The values of the storage parameters are basically not affected by the computing platform and the SNN network, and are stable. The quantification method of the storage parameters is: through manual analysis and quantification, and at the same time, through the memory tool provided by the NEST emulator to map and correct the parameters. Specifically, the design idea of storage parameter quantization is derived from the work of Kunkel et al. The quantification method is specifically through manual analysis and quantification, and at the same time, the memory tool provided by the NEST simulator is used to map and correct the parameters.
所述时间参数的量化包括通信时间量化以及设备、神经元、突触模型的时间量化。The quantification of the time parameter includes the time quantification of communication and the time quantification of device, neuron, and synapse models.
对于时间参数的量化,时间参数具有鲜明的平台特征,即参数值随着CPU性能的增强而减少。在同一平台的基础上,时间参数的数值基本稳定。因此,面向具体的计算平台,通过MPI量化程序与基准量化网络,对单次通信消耗时间tmpi(sendbuffer,P)以及模型的单次更新消耗时间(ts、tpoisson、tspike、tn_ref和tn_unref)进行独立量化。For the quantization of time parameters, the time parameters have distinct platform characteristics, that is, the parameter value decreases with the enhancement of CPU performance. On the basis of the same platform, the value of the time parameter is basically stable. Therefore, for a specific computing platform, through the MPI quantization program and the benchmark quantization network, the time t mpi (send buffer , P) for a single communication and the time consumption for a single update of the model (t s , t poisson , t spike , t n_ref and t n_unref ) are independently quantized.
通信时间量化:MPI量化程序遵循NEST通信机制,通过设置不同发送任务量与不同节点通信规模进行量化,以探寻不同情况下计算平台的通信时间消耗情况。Communication time quantification: The MPI quantization program follows the NEST communication mechanism, and quantifies the communication time consumption of the computing platform under different conditions by setting the amount of different sending tasks and the communication scale of different nodes.
设备、神经元、突触模型的时间量化:在python脚本中搭建基准量化网络,包含各种类型的设备、神经元与突触模型。以图2的基准量化网络为例,该量化网络可实现对设备(PG和SD),神经元(gif_psc_exp、iaf_psc_alpha、iaf_psc_exp和iaf_psc_exp_ps),突触(stdp_pl_synapse_hom_hpc、stdp_synapse和static,简称spshh、ss和static)进行单次更新消耗时间的量化。PG连接四个神经元群,每个神经元群分别使用spshh、ss和static突触类型进行三次自连接。通过灵活调整PG到神经元群的突触权重和神经元群的Tref,来实现对tspike、tn_ref和tn_unref参数的分类量化。dt设置为0.1,通过更改连接中的delay值,来实现不同dd值对tn_ref和tn_unref产生的影响。Temporal quantification of device, neuron, and synapse models: Build benchmarked quantitative networks in python scripts, including various types of device, neuron, and synapse models. Taking the benchmark quantization network in Figure 2 as an example, the quantization network can realize the quantization of devices (PG and SD), neurons (gif_psc_exp, iaf_psc_alpha, iaf_psc_exp and iaf_psc_exp_ps), synapses (stdp_pl_synapse_hom_hpc, stdp_synapse and static, abbreviated as spshh, ss and static). ) to quantify the time consumed by a single update. PG connects four neuron populations, each of which is self-connected three times using spshh, ss, and static synapse types, respectively. The categorical quantification of t spike , t n_ref and t n_unref parameters is achieved by flexibly adjusting the synaptic weights of PGs to neuron populations and the T ref of neuron populations. d t is set to 0.1, and the effect of different dd values on t n_ref and t n_unref is realized by changing the delay value in the connection.
在NEST内核中,时间统计函数和模型更新次数统计函数分别统计量化基准网络中各种类型的模型对应的总时间消耗与总更新次数,两者相除取平均值。在此基础上进行多次实验取平均值。In the NEST kernel, the time statistics function and the model update number statistics function respectively quantify the total time consumption and the total number of updates corresponding to various types of models in the benchmark network, and divide the two to obtain an average value. On this basis, several experiments were carried out to obtain the average value.
由于存储参数具有稳定性且对于同一平台的时间参数也具有一定的稳定性,因此量化设计所得参数具有可复用性,可通过如图3的文件形式进行存储。Since the storage parameters are stable and the time parameters of the same platform are also stable to a certain extent, the parameters obtained from the quantitative design are reusable and can be stored in the form of files as shown in Figure 3.
所述步骤S2中,编写映射专用脚本时,为了SWAM使用的便捷性和保证自动化设计与原先NEST架构使用的互不冲突,在保留原先NEST的网络构建规则的基础上,开发了映射专用脚本格式,为NEST内核中的自动化设计提供功能函数接口。In the step S2, when writing a mapping special script, in order to facilitate the use of SWAM and ensure that the automatic design does not conflict with the use of the original NEST architecture, a mapping special script format is developed on the basis of retaining the original NEST network construction rules. , which provides a functional interface for automation design in the NEST core.
如图4所示,所述映射专用脚本包括预测时间模块、网络构建模块和开始预测模块。As shown in Figure 4, the mapping-specific script includes a prediction time module, a network building module, and a start prediction module.
所述预测时间模块中,在输入仿真时间信息与存储文件地址的同时,也是调用Auto_Collect模块的标志。In the prediction time module, when the simulation time information and the storage file address are input, it is also a sign to call the Auto_Collect module.
所述网络构建模块中,由于所需采集的网络参数主要分布于SNN网络构建期间,因此SNN网络中的创建(Create)与连接(Connect)表层信息会在NEST内核中由自动收集模块进行网络参数的采集;同时神经元群的脉冲发射率与不应期信息也在Create时输入。In the network construction module, since the network parameters to be collected are mainly distributed during the construction of the SNN network, the surface information of the creation (Create) and the connection (Connect) in the SNN network will be automatically collected in the NEST kernel by the network parameter collection module. At the same time, the pulse firing rate and refractory period information of the neuron group are also input during Create.
所述开始预测模块中,在输入参数的同时,也是网络参数采集完毕以及调用预测步骤、映射步骤的标志。输入的参数包含平台的节点规模、单节点的线程数、单节点提供的硬件内存和存储占用率的映射阈值。In the start prediction module, while inputting parameters, it is also a sign that the network parameter collection is completed and the prediction step and the mapping step are called. The input parameters include the node scale of the platform, the number of threads on a single node, the hardware memory provided by a single node, and the mapping threshold for storage occupancy.
自动化设计整体内嵌于NEST内核之中,由网络参数采集自动化(Auto_Collect)、预测自动化(Auto_Forecast)与映射自动化(Auto_Map)组成。The automation design is embedded in the NEST kernel as a whole, and consists of network parameter collection automation (Auto_Collect), prediction automation (Auto_Forecast) and mapping automation (Auto_Map).
网络参数采集自动化主要针对SNN网络相关参数进行采集。具体地,所述步骤S3中,对所需映射的SNN案例的网络参数进行自动化采集时,在预测时间模块与开始预测模块之间,进行一系列创建与连接来构建网络,神经元群的Rspike与Tref在创建时输入。The network parameter collection automation mainly collects related parameters of the SNN network. Specifically, in the step S3, when automatically collecting the network parameters of the SNN case to be mapped, a series of creations and connections are performed between the prediction time module and the start prediction module to construct the network, and the R of the neuron group spike and T ref are entered at creation time.
如图4所示,对于创建与连接所对应的神经元和突触的规模、出入度等相关参数,由2个一维向量:神经元类型表v_n_type、突触类型表v_s_type和3个二维向量:创建表v_n_create、出度表v_n_out和入度表v_n_in来进行存储。As shown in Figure 4, for the related parameters such as the scale and in-out degree of neurons and synapses corresponding to the creation and connection, there are two one-dimensional vectors: neuron type table v_n_type, synapse type table v_s_type and three two-dimensional vectors. Vector: Create table v_n_create, out-degree table v_n_out and in-degree table v_n_in for storage.
对于v_n_type和v_s_type,每当创建(Create)或连接(Connect)时有新的神经元类型或突触类型时,就进行数据入栈。入栈的数据具体为根据模型类型编号mod_id和dd在存储文件中查询得到的相关数据,如ts、tpoisson、tspike、tn_ref和tn_unref。For v_n_type and v_s_type, data is pushed onto the stack whenever a new neuron type or synapse type is created (Create) or connected (Connect). The data to be pushed into the stack is specifically related data obtained by querying the storage file according to the model type numbers mod_id and dd, such as t s , t poisson , t spike , t n_ref and t n_unref .
对于v_n_create或v_n_out、v_n_in,其第一维分别需要与v_n_type或v_s_type保持一致。每次Create,则进行v_n_create入栈。入栈的数据具体为Nn(i)、Rspike和Tref。每次Connect,则根据源/目标群的神经元GID对v_n_out/v_n_in进行入栈。入栈的数据为本次连接的源/目标群的出入度,且出入度计算方式相似。For v_n_create or v_n_out, v_n_in, the first dimension needs to be consistent with v_n_type or v_s_type respectively. Every time you create, v_n_create is pushed onto the stack. The data pushed into the stack is specifically N n (i), R spike and T ref . Each time Connect, the v_n_out/v_n_in is pushed to the stack according to the neuron GID of the source/target group. The data pushed into the stack is the in-out degree of the source/target group of this connection, and the in-out degree is calculated in a similar way.
所述步骤S4中,对所获得的网络建模参数进行存储与时间消耗预测时,通过设计各个负载模型函数,处理通过量化设计和获得的建模参数数据,以实现在各个节点规模下的预测。In the step S4, when storing and predicting the time consumption of the obtained network modeling parameters, by designing each load model function, the modeling parameter data obtained by quantitative design and obtained is processed to realize the prediction under the scale of each node. .
其中预测自动化模块的预测思想集中体现在对典型SNN负载模型的进一步实例化,包括存储负载模型、计算时间负载模型以及通信时间负载模型。The prediction idea of the prediction automation module is embodied in the further instantiation of the typical SNN load model, including the storage load model, the calculation time load model and the communication time load model.
在存储负载模型方面,SNN的存储M主要由神经元的存储Mneuron与突触的存储Msynapse组成,M计算公式如下:In terms of storage load model, the storage M of SNN is mainly composed of the storage M of neurons and the storage M synapse of synapses. The calculation formula of M is as follows:
M=Mneuron+Msynapse M=M neuron +M synapse
=Nn*mn+Ns*ms (1)=N n *m n +N s *m s (1)
其中,Mneuron由神经元个数Nn与单个神经元存储所耗内存mn决定。而Msynapse由突触个数Ns与单个突触存储所耗内存ms决定,Ns由连接拓扑与Nn决定。Among them, M neuron is determined by the number of neurons N n and the memory mn consumed by the storage of a single neuron. While M synapse is determined by the number of synapses N s and the memory consumed by a single synapse storage m s , N s is determined by the connection topology and N n .
如图5a所示,在公式(1)的基础上,加入NEST系统初始开销Mo,每个进程总存储M变为由三个部分组成:Mneuron、Msynapse和Mo。As shown in Figure 5a, on the basis of formula (1), adding the initial cost M o of the NEST system, the total storage M of each process becomes composed of three parts: M neuron , M synapse and M o .
Mo是一个串行的初始化存储开销,包括NEST运行所需的基本数据结构,比如事件调度和通信。对于固定的计算平台,Mo值为固定值。而对Mneuron与Msynapse公式的实例化体现在加入了神经元与突触基础设施的存储开销。公式如下:M o is a serial initialization storage overhead that includes basic data structures required for NEST to operate, such as event scheduling and communication. For a fixed computing platform, the M o value is a fixed value. The instantiation of the M neuron and M synapse formulas now includes the storage overhead of the neuron and synaptic infrastructure. The formula is as follows:
其中,Nn/P为每个进程分配到的神经元数,且ND是每个线程T所需复制创建的设备数。和分别为每个进程为网络中所有、非本地和本地的每个神经元提供神经元型基础设施的存储开销。同理,和分别为每个进程为网络中所有、非本地目标和本地目标的每个神经元的提供突触型基础设施存储开销;则为在本地没有目标神经元的神经元个数;Avgin为目标神经元对应的入度;i代表着不同的神经元和设备模型类型;z则代表着不同的突触类型;jpost则代表着连接关系中的目标神经元群。Among them, N n /P is the number of neurons allocated to each process, and N D is the number of devices that each thread T needs to replicate and create. and Provides the storage overhead of neuron-type infrastructure for all, non-local, and local neurons in the network, per process, respectively. Similarly, and Provide synaptic infrastructure storage overhead for each neuron of all, non-local targets and local targets in the network separately for each process; is the number of neurons without target neurons locally; Avg in is the in-degree corresponding to the target neuron; i represents different neuron and device model types; z represents different synaptic types; j post is Represents the target group of neurons in the connection.
计算时间负载模型中,SNN的仿真计算时间timecompute主要由神经元计算时间timeneuron突触计算时间timesynapse组成,timecompute计算公式如下:In the computing time load model, the simulation computing time time compute of SNN is mainly composed of neuron computing time time neuron synapse computing time time synapse . The time compute computing formula is as follows:
timecompute=timeneuron+timesynapse time compute =time neuron +time synapse
=Nn*tn*Tdt+Nspike*Avgout*ts (4)=N n *t n *Td t +N spike *Avg out *t s (4)
其中,由于神经元更新模式是时间触发型的,因此Tdt=Tsim/dt决定仿真时间内神经元更新的总次数。Tsim和dt分别为仿真时间和分辨率,tn为神经元单次更新所耗时间。而由于突触更新模式是事件触发型的,所以Nspike*Avgout决定突触更新的次数,ts为突触单次更新所耗时间。Among them, since the neuron update mode is time-triggered, Td t =T sim /d t determines the total number of neuron updates in the simulation time. T sim and d t are the simulation time and resolution, respectively, and t n is the time taken for a single update of the neuron. Since the synaptic update mode is event-triggered, N spike *Avg out determines the number of synaptic updates, and t s is the time taken for a single synapse update.
如图5b所示,在公式(4)的基础上,timecompute计算公式中加入了泊松设备计算时间timepoisson。timecompute变为由三个部分组成:timepoisson、timeneuron和timesynapse。As shown in Figure 5b, on the basis of formula (4), the Poisson device calculation time time poisson is added to the time compute calculation formula. time compute becomes composed of three parts: time poisson , time neuron and time synapse .
泊松设备更新是时间触发型的更新模式,每次泊松更新都需经过所有突触,但对应突触是否进行更新由泊松设定的脉冲频率产生的随机数决定,因此泊松更新的时间消耗主要取决于每次经过突触后的随机数判断。timepoisson计算公式如下:Poisson device update is a time-triggered update mode. Each Poisson update needs to go through all synapses, but whether the corresponding synapse is updated is determined by the random number generated by the pulse frequency set by Poisson. The time consumption mainly depends on the random number judgment after each post-synaptic pass. The time poisson calculation formula is as follows:
其中,Npoisson为泊松设备的数量,tpoisson为泊松设备单次更新所需的单位时间。jpre代表着连接关系中的源设备群。Among them, N poisson is the number of Poisson devices, and t poisson is the unit time required for a single update of Poisson devices. j pre represents the source device group in the connection relationship.
神经元计算时间timeneuron在继承公式(4)的时间触发更新模式的基础上,考虑以下两个因素对神经元单次更新所耗时间tn带来的影响,一是不同神经元类型i,二是单时间片内的更新次数dd。timeneuron计算公式如下:On the basis of inheriting the time-triggered update mode of formula (4), the neuron calculation time time neuron considers the influence of the following two factors on the time t n of a single neuron update, one is the different neuron types i, The second is the number of updates dd in a single time slice. The calculation formula of time neuron is as follows:
其中,将公式(4)中的tn进行细分成三个部分:tn_unref、tn_ref和tspike。如图6所示,tn_ref为在不应期的神经元的一些基本公式计算所耗时间。tn_unref为不在不应期的且无脉冲产生的神经元在tn_ref的基础上加上电压公式的计算所耗时间。tspike为产生脉冲的神经元在tn_unref基础上加上处理脉冲的消耗时间。上述分析可知,tspike的值最大,tn_unref其次,tn_ref最小。因此若脉冲激发次数越多或越小,会导致tn偏大或偏小,进而导致模型预测出现偏差。经过实验证明,进一步的细分操作可以更有效地拟合神经元计算时间负载模型。Wherein, t n in formula (4) is subdivided into three parts: t n_unref , t n_ref and t spike . As shown in Fig. 6, t n_ref is the time taken to calculate some basic formulas of neurons in the refractory period. t n_unref is the time taken to calculate the voltage formula on the basis of t n_ref for neurons that are not in the refractory period and have no pulses. t spike is the neuron that generates the spike plus the time spent processing the spike on the basis of t n_unref . The above analysis shows that the value of t spike is the largest, followed by t n_unref , and the smallest value of t n_ref . Therefore, if the number of pulse excitations is more or less, t n will be too large or too small, which will lead to deviations in the model prediction. Experiments show that further subdivision operations can fit the neuron computational time load model more efficiently.
与之对应,将神经元更新次数td细分为cn_unref、cn_ref和Nspike。cn_ref和cn_unref为整个仿真阶段中在不应期和不在不应期且无脉冲的神经元更新次数,Nspike为脉冲激发次数。计算公式如下所示:Correspondingly, the number of neuron updates td is subdivided into cn_unref , cn_ref and N spike . c n_ref and c n_unref are the update times of neurons in the refractory period and not in the refractory period and without spikes in the whole simulation stage, and N spike is the number of spike excitations. The calculation formula is as follows:
突触计算时间timesynapse在继承公式(4)的事件触发更新模式的基础上,增加了公式的适应性,如不同的突触类型z对ts的影响、根据神经元群jpre和突触类型z对出度Avgout进行划分,以及各个神经元群jpre有各自的脉冲激发次数Nspike。timesynapse计算公式如下:Synapse calculation time time synapse on the basis of inheriting the event-triggered update mode of formula (4), adding the adaptability of the formula, such as the effect of different synapse types z on ts , according to the neuron group j pre and synapse Type z divides the out-degree Avg out , and each neuron group j pre has its own number of spike firings N spike . The time synapse calculation formula is as follows:
值得注意的是,由于NEST的任务分配方式很好地保证了各VP之间的负载均衡。因此,在建模时,这一规则也体现在各条负载模型的公式中。It is worth noting that due to the task distribution method of NEST, the load balancing among the VPs is well guaranteed. Therefore, when modeling, this rule is also reflected in the formula of each load model.
所述通信时间负载模型中,通信所耗时间timempi主要是整个仿真过程中各节点通过MPI传递的脉冲信息所耗的时间,是NEST为实现并行计算所不可避免的时间代价。因此除了timecompute,timempi也是整个仿真所耗时间timesim中的一部分,如图5b所示。In the communication time load model, the communication time time mpi is mainly the time consumed by the pulse information transmitted by each node through MPI in the whole simulation process, which is the inevitable time cost of NEST to realize parallel computing. Therefore, in addition to time compute , time mpi is also a part of the time sim of the entire simulation, as shown in Figure 5b.
影响MPI通信时间的因素众多,比如网络的带宽、通信的节点数等。本文主要考虑发送信息大小、通信进程数和带宽大小三者带来的通讯时延的影响。timempi计算公式如下:There are many factors that affect the MPI communication time, such as the network bandwidth and the number of communicating nodes. This paper mainly considers the influence of the communication delay caused by the size of the sent information, the number of communication processes and the size of the bandwidth. The formula for calculating time mpi is as follows:
timempi=tmpi(sendbuffer,P)*Td+tbandwidth (9)time mpi = t mpi (send buffer , P)*Td+t bandwidth (9)
其中,tmpi(sendbuffer,P)为P规模下单次发送sendbuffer大小的信息所耗的通信时间。tbandwidth为带宽限制带来的时间影响。Among them, t mpi (send buffer , P) is the communication time consumed by a single transmission of information of the size of the send buffer under the scale of P. t bandwidth is the time effect of bandwidth limitation.
所述步骤S5中,将所获得的内存与时间的消耗预测数据转换为映射结果的方法为:设计映射函数,处理获得预测数据,得到各个节点规模下的映射变量,将存储占用率的映射阈值和性能最优作为映射标准,通过指定函数推导出映射结果。In the step S5, the method of converting the obtained memory and time consumption prediction data into a mapping result is as follows: designing a mapping function, processing the obtained prediction data, obtaining the mapping variables under the scale of each node, and storing the mapping threshold of the occupancy rate. And the optimal performance is used as the mapping standard, and the mapping result is deduced by the specified function.
映射思想:在存储映射标准方面,以存储占用率Ratem(P)作为映射变量。Ratem(P)计算公式如下所示:Mapping idea: In terms of storage mapping standard, the storage occupancy Rate (P) is used as the mapping variable. The formula for calculating Rate m (P) is as follows:
Ratem(P)=M(P)/Mhardware (10)Rate m (P)=M(P)/M hardware (10)
其中,M(P)为P节点规模下均摊到的内存,Mhardware为单节点硬件所提供的存储。以存储占用率的映射阈值TMM(Threshold for Mapping Memory)作为映射标准。以存储占用率为TMM的节点规模Pstable作为映射结果。集群的节点规模在Pstable之上则可保证平台稳定运行。TMM以用户输入为准。Among them, M(P) is the memory evenly allocated under the scale of P nodes, and M hardware is the storage provided by the hardware of a single node. The mapping threshold TMM (Threshold for Mapping Memory) of the storage occupancy rate is used as the mapping standard. Take the node scale P stable with storage occupancy rate TMM as the mapping result. The node scale of the cluster is above P stable to ensure the stable operation of the platform. TMM is subject to user input.
在性能映射标准方面,以P节点规模下均摊到的时间timesim(P)作为映射变量。以最小的映射变量timesim作为映射标准。以计算平台性能最优的节点规模Pleast(timesim为最小的节点规模)作为映射结果,使承载具体SNN案例的计算平台高效地运行。具体公式如下:In terms of performance mapping standard, the time sim (P) that is amortized under the scale of P nodes is used as the mapping variable. The minimum mapping variable time sim is used as the mapping criterion. Taking the node scale P least (time sim is the smallest node scale) with the best performance of the computing platform as the mapping result, the computing platform carrying the specific SNN case can run efficiently. The specific formula is as follows:
timesim(Pleast)=min{timesim(P)} (11)time sim (P least )=min{time sim (P)} (11)
具体设计时,如图4中的映射自动化所示,根据公式(10)(11)的映射思想设计映射函数,通过Ratem和timesim函数处理Auto_Forecast模块所得的预测数据,可得到各个节点规模下的映射变量(Ratem(P)与timesim(P))。以存储占用率的映射阈值(TMM)和性能最优(时间最少)作为映射标准,通过TMM和time_min函数推导出映射结果(Pstable与Pleast)。In the specific design, as shown in the mapping automation in Figure 4, the mapping function is designed according to the mapping idea of formulas (10) and (11), and the prediction data obtained by the Auto_Forecast module is processed by the Rate m and time sim functions. mapping variables (Rate m (P) and time sim (P)). Taking the mapping threshold of storage occupancy (TMM) and the optimal performance (minimum time) as the mapping criteria, the mapping results (P stable and P least ) are derived through the TMM and time_min functions.
本发明在SWAM的自动收集模块的连接阶段中,只需采集源群、目标群与连接方式等宏观信息即可满足建模参数条件,无需创建具体突触以造成内存与时间消耗,极大地减少了SWAM的时间与空间复杂度。与复杂繁琐的手动节点试探或手动参数采集相比,SWAM具有绝对的时间代价优势,平均时间代价降低了879倍。In the connection stage of the automatic collection module of SWAM, the present invention only needs to collect macro information such as source groups, target groups and connection methods to meet the modeling parameter conditions, without creating specific synapses to cause memory and time consumption, greatly reducing the time and space complexity of SWAM. Compared with complicated and tedious manual node exploration or manual parameter collection, SWAM has an absolute time cost advantage, and the average time cost is reduced by 879 times.
实施例二Embodiment 2
基于同一发明构思,本实施例提供了自动映射器,其解决问题的原理与所述构建SNN工作负载自动映射器的方法类似,重复之处不再赘述。Based on the same inventive concept, this embodiment provides an automatic mapper, and the principle of solving the problem is similar to the method for constructing the SNN workload automatic mapper, and the repetition will not be repeated.
本实施例提供一种自动映射器,包括:This embodiment provides an automatic mapper, including:
判断模块,用于判断计算平台的CPU运算频率和内存是否有变动,若有变动,继续判断是否有存储文件,若有存储文件,则进入编写模块;若没有变动,或没有存储文件,则量化设计并将获得的参数以文件的形式进行存储,再进入编写模块;The judgment module is used to judge whether the CPU operation frequency and memory of the computing platform have changed. If there is a change, continue to judge whether there is a storage file. If there is a storage file, enter the writing module; if there is no change or no storage file, then quantify Design and store the obtained parameters in the form of files, and then enter the writing module;
编写模块,用于编写映射专用脚本,提供映射专用的功能函数接口;Write a module for writing mapping-specific scripts and providing mapping-specific function interfaces;
采集模块,用于对所需映射的SNN案例的网络参数进行自动化采集,获得网络建模参数;The acquisition module is used to automatically collect the network parameters of the SNN case to be mapped to obtain the network modeling parameters;
预测模块,用于对所获得的网络建模参数进行内存与时间的消耗预测;The prediction module is used to predict the memory and time consumption of the obtained network modeling parameters;
映射模块,用于将所获得的内存与时间的消耗预测数据转换为映射结果。The mapping module is used to convert the obtained memory and time consumption prediction data into mapping results.
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。As will be appreciated by those skilled in the art, the embodiments of the present application may be provided as a method, a system, or a computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the present application. It will be understood that each flow and/or block in the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to the processor of a general purpose computer, special purpose computer, embedded processor or other programmable data processing device to produce a machine such that the instructions executed by the processor of the computer or other programmable data processing device produce Means for implementing the functions specified in a flow or flow of a flowchart and/or a block or blocks of a block diagram.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory result in an article of manufacture comprising instruction means, the instructions The apparatus implements the functions specified in the flow or flow of the flowcharts and/or the block or blocks of the block diagrams.
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded on a computer or other programmable data processing device to cause a series of operational steps to be performed on the computer or other programmable device to produce a computer-implemented process such that The instructions provide steps for implementing the functions specified in the flow or blocks of the flowcharts and/or the block or blocks of the block diagrams.
显然,上述实施例仅仅是为清楚地说明所作的举例,并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。Obviously, the above-mentioned embodiments are only examples for clear description, and are not intended to limit the implementation manner. For those of ordinary skill in the art, other different forms of changes or modifications can also be made on the basis of the above description. There is no need and cannot be exhaustive of all implementations here. And the obvious changes or changes derived from this are still within the protection scope of the present invention.
Claims (8)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202011330393.4A CN112463532B (en) | 2020-11-24 | 2020-11-24 | Method for constructing SNN workload automatic mapper and automatic mapper |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202011330393.4A CN112463532B (en) | 2020-11-24 | 2020-11-24 | Method for constructing SNN workload automatic mapper and automatic mapper |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN112463532A CN112463532A (en) | 2021-03-09 |
| CN112463532B true CN112463532B (en) | 2022-09-09 |
Family
ID=74799666
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202011330393.4A Active CN112463532B (en) | 2020-11-24 | 2020-11-24 | Method for constructing SNN workload automatic mapper and automatic mapper |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN112463532B (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113515468B (en) * | 2021-09-14 | 2021-11-30 | 成都时识科技有限公司 | Data updating method, storage space setting method, device, chip and equipment |
| CN114090261A (en) * | 2021-11-26 | 2022-02-25 | 江南大学 | SNN workload prediction method and system |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107169561A (en) * | 2017-05-09 | 2017-09-15 | 广西师范大学 | Towards the hybrid particle swarm impulsive neural networks mapping method of power consumption |
| CN109324952A (en) * | 2018-09-30 | 2019-02-12 | 武汉斗鱼网络科技有限公司 | A method and device for detecting the number of process instances based on a memory-mapped file |
| CN111639754A (en) * | 2020-06-05 | 2020-09-08 | 四川大学 | Neural network construction, training and recognition method and system, and storage medium |
| CN111882065A (en) * | 2020-08-03 | 2020-11-03 | 中国人民解放军国防科技大学 | Method, system, and medium for mapping a spiking neural network to a brain-like computing platform |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10540384B2 (en) * | 2017-01-06 | 2020-01-21 | Oracle International Corporation | Compression and secure, end-to-end encrypted, ZFS cloud storage |
-
2020
- 2020-11-24 CN CN202011330393.4A patent/CN112463532B/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107169561A (en) * | 2017-05-09 | 2017-09-15 | 广西师范大学 | Towards the hybrid particle swarm impulsive neural networks mapping method of power consumption |
| CN109324952A (en) * | 2018-09-30 | 2019-02-12 | 武汉斗鱼网络科技有限公司 | A method and device for detecting the number of process instances based on a memory-mapped file |
| CN111639754A (en) * | 2020-06-05 | 2020-09-08 | 四川大学 | Neural network construction, training and recognition method and system, and storage medium |
| CN111882065A (en) * | 2020-08-03 | 2020-11-03 | 中国人民解放军国防科技大学 | Method, system, and medium for mapping a spiking neural network to a brain-like computing platform |
Also Published As
| Publication number | Publication date |
|---|---|
| CN112463532A (en) | 2021-03-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN109947567B (en) | A multi-agent reinforcement learning scheduling method, system and electronic device | |
| CN114756383B (en) | Distributed computing method, system, equipment and storage medium | |
| CN115168027B (en) | Computing power resource measurement method based on deep reinforcement learning | |
| WO2021175058A1 (en) | Neural network architecture search method and apparatus, device and medium | |
| CN104408518B (en) | Based on the neural network learning optimization method of particle swarm optimization algorithm | |
| CN117827619B (en) | Time-consuming prediction simulation method, device, equipment, medium and system for heterogeneous calculation force | |
| CN106201651A (en) | The simulator of neuromorphic chip | |
| CN118885291B (en) | Cloud computing platform real-time CPU load balancing method and system based on reinforcement learning | |
| CN117149410A (en) | A training, dispatching, command and monitoring system based on AI intelligent model | |
| CN109165081B (en) | Web application self-adaptive resource allocation method based on machine learning | |
| CN109409746A (en) | A kind of production scheduling method and device | |
| CN112463532B (en) | Method for constructing SNN workload automatic mapper and automatic mapper | |
| CN115543626A (en) | Image Simulation Method of Power Defect Using Load Balanced Scheduling of Heterogeneous Computing Resources | |
| CN118550667A (en) | Cross-domain cloud platform neural network training task scheduling method based on reinforcement learning | |
| CN115794405A (en) | Dynamic resource allocation method of big data processing framework based on SSA-XGboost algorithm | |
| CN113205128A (en) | Distributed deep learning performance guarantee method based on serverless computing | |
| CN117667602B (en) | Cloud computing-based online service computing power optimization method and device | |
| CN120029720B (en) | Multi-target distributed deep learning container scheduling method, system and storage medium | |
| CN119294447B (en) | A resource scheduling method based on spiking neural network | |
| CN119476369A (en) | Event-based parallel online learning neuromorphic computing method and system | |
| CN119721178A (en) | Optimization method and related equipment for deploying hybrid expert models in edge computing environments | |
| CN113222134B (en) | Brain-like computing system, method and computer readable storage medium | |
| Wang et al. | Accelerating RL-Based Scheduler Adaptation with Transfer Learning in Evolving HPC Architectures | |
| CN115952420A (en) | A collaborative configuration method of distributed deep learning task resources and batch size based on public cloud | |
| CN121391187B (en) | Approval business data processing methods, devices, equipment, media and program products |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20230106 Address after: 214000 1800 Lihu Avenue, Binhu District, Wuxi, Jiangsu Patentee after: Chai Zhilei Address before: 214000 1800 Lihu Avenue, Binhu District, Wuxi, Jiangsu Patentee before: Jiangnan University |
|
| TR01 | Transfer of patent right | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20230203 Address after: 214000 Room 204, Building A, southwest of the intersection of Huize Road and Jinxi Road, Phase I, Science and Education Park, Binhu District, Wuxi City, Jiangsu Province Patentee after: High-volume Industrial Intelligent Technology (Wuxi) Co.,Ltd. Address before: 214000 1800 Lihu Avenue, Binhu District, Wuxi, Jiangsu Patentee before: Chai Zhilei |
|
| TR01 | Transfer of patent right | ||
| PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: Method and Automatic Mapper for Building SNN Workload Granted publication date: 20220909 Pledgee: Bank of Nanjing Limited by Share Ltd. Wuxi branch Pledgor: High-volume Industrial Intelligent Technology (Wuxi) Co.,Ltd. Registration number: Y2024980046612 |
|
| PE01 | Entry into force of the registration of the contract for pledge of patent right |











