A pulse neural network optimization accelerator, device, terminal and storage medium

Through the modular pulse neural network accelerator system, comprehensively analyzes data processing requirements and resource utilization, and intelligent operation status adjustment and verification are carried out, solving the stability and energy consumption problems of existing accelerators when adjusting their operation status, achieving efficient and stable data processing.

CN119272820BActive Publication Date: 2025-03-11FUDAN UNIVERSITY
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411286443.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-13
Publication Date
2025-03-11
Estimated Expiration
2044-09-13

AI Technical Summary

Technical Problem

The existing pulse neural network accelerators ignore resource utilization and network fluctuations when adjusting their operating state, resulting in system stability problems and high energy consumption, affecting long-term operation.

Method used

Design a modular accelerator system that includes data processing requirements analysis, data processing capability analysis, operation adaptation identification, resource utilization saturation analysis, network fluctuation evaluation, operation status adjustment, verification and optimization, and achieve a comprehensive trade-off of the accelerator's operating status through comprehensive analysis and adjustment.

Benefits of technology

Ensure that the accelerator operating status adjustment does not sacrifice system stability, while maximizing the data processing needs, achieving both processing effects and energy consumption, and improving system management efficiency and results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119272820B_ABST
    Figure CN119272820B_ABST
Patent Text Reader

Abstract

The present invention belongs to the field of data processing technology, and specifically discloses a pulse neural network optimization accelerator, device, terminal and storage medium. The present invention analyzes the current data processing capacity by performing a current data demand processing density analysis based on a to-be-processed pulse event sequence of an incoming pulse neural network and processing information of a pulse event sequence processed by the accelerator, and at the same time performs an analysis of the saturation of accelerator resource utilization and network transmission fluctuation, and then combines the above to perform an accelerator operating state adjustment evaluation and adjustment implementation, thereby achieving a comprehensive trade-off adjustment of the accelerator operating state, and then after the accelerator operating state is adjusted, adjustment verification is performed from two dimensions of processing effect and processing energy consumption, thereby achieving a balance between processing effect and processing energy consumption, and being able to timely discover situations where energy consumption is too large and processing effect does not meet standards, thereby providing a reliable remedy for poor adjustment of the accelerator operating state through optimization.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of data processing, and specifically discloses a pulse neural network optimization accelerator, a device, a terminal and a storage medium. Background Art

[0002] A spiking neural network is an artificial neural network model that simulates the working mode of biological nervous systems. Unlike traditional neural network models, the core of a spiking neural network is to imitate the working mode of brain neurons and transmit and process information through pulses or spikes. Although spiking neural networks have shown advantages in simulating biological nervous systems, traditional computing methods may lead to problems of high computational complexity and slow processing speed. Hardware accelerators can significantly improve the data processing efficiency of spiking neural networks.

[0003] Since the spiking neural network relies on the precise time interval and timing relationship between neurons to process information. This requires the accelerator to be able to process data in time, but the timing data transmitted to the spiking neural network is mostly changing, which requires adjusting the running state of the accelerator. These adjustments may include adjusting the operating frequency so as to timely and effectively process dynamic timing input data. However, in the prior art, the running state of the accelerator is adjusted immediately when it is found that the current data processing capacity cannot meet the processing requirements of the timing data, ignoring the impact of the accelerator's resource utilization and network fluctuations on it. Specifically, when the accelerator's resource utilization is relatively saturated, the system itself may already be in a high load state. Any additional load increase may cause system stability problems. At this time, adjusting the running state may aggravate this problem, causing the system to crash or unpredictable behavior. Adjusting the running state in the case of network fluctuations may increase the delay in monitoring and transmitting adjustment commands, which is easy to cause invalid adjustments. It can be seen that simply determining the timing of adjusting the running state of the accelerator based on whether the data processing capacity meets the timing data processing requirements is obviously too one-sided. Not only is there a risk of invalid adjustment, but it also affects the overall stability of the system and makes it difficult to maintain the current running state.

[0004] In addition, in the verification of the effect after the operating status adjustment, we often only focus on whether the adjusted processing speed meets the standard, and lack attention to the processing energy consumption. There is a situation where the system consumes a lot of additional energy while reaching the expected speed. High energy consumption not only increases electricity costs, but may also shorten the life of hardware equipment, which is not conducive to the long-term operation of the system. Summary of the invention

[0005] In view of this, the present invention aims to propose a pulse neural network optimization accelerator, device, terminal and storage medium to effectively solve the problems raised in the above-mentioned background technology.

[0006] The purpose of the present invention can be achieved through the following technical solutions: In one aspect of the present invention, a pulse neural network optimization accelerator is proposed, including the following modules: a data processing demand analysis module, which is used to retrieve the sequence of pulse events to be processed that are input into the pulse neural network in real time, thereby analyzing the current data processing requirements.

[0007] The data processing capacity analysis module is used to extract in real time the processing information of the pulse event sequence processed by the pulse neural network, including the processing speed and processing delay time, so as to analyze the current data processing capacity coefficient.

[0008] The operation adaptation identification module is used to identify whether the operation state of the accelerator is adapted based on the current data processing demand and the current data processing capacity coefficient.

[0009] The resource utilization saturation analysis module is used to monitor the resource utilization parameters of the accelerator in real time, including GPU utilization, memory bandwidth utilization and operating temperature, and use the resource utilization parameters to analyze the resource utilization saturation of the current accelerator.

[0010] The network fluctuation assessment module is used to monitor the network transmission indicators of data transmitted into the pulse neural network in real time, thereby analyzing the current network transmission fluctuation situation.

[0011] The operating state adjustment module is used to adjust the operating state of the accelerator based on the current resource utilization saturation of the accelerator and the current network transmission fluctuation when it is identified that the operating state of the accelerator is not suitable.

[0012] The operation adjustment verification module is used to perform adjustment verification on the operation status of the accelerator after adjustment, specifically including processing effect test and processing energy consumption test.

[0013] The operation adjustment and optimization module is used to optimize the accelerator operation status according to the test results of the processing effect test and the processing energy consumption test.

[0014] In yet another aspect of the present invention, a device is provided, wherein the device comprises the pulse neural network optimization accelerator described in the present invention.

[0015] In yet another aspect of the present invention, a terminal is provided, comprising a processor and a memory for storing execution instructions of the processor, wherein the processor is configured to execute the pulse neural network optimization accelerator described in the present invention.

[0016] In another aspect of the present invention, a storage medium is provided, wherein the storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to implement the pulse neural network optimization accelerator described in the present invention.

[0017] Compared with the prior art, the beneficial effects of the present invention are as follows: 1. The present invention analyzes the current data processing demand based on the sequence of pulse events to be processed of the incoming pulse neural network and the processing information of the sequence of pulse events processed by the pulse neural network, and at the same time analyzes the saturation of accelerator resource utilization and the fluctuation of network transmission, and then combines the above to judge and implement the adjustment of the accelerator operating state, thereby realizing a comprehensive trade-off adjustment of the accelerator operating state, which can ensure that the stability of the system will not be sacrificed when adjusting the accelerator operating state, and can maximize the satisfaction of the current data processing needs.

[0018] 2. After adjusting the accelerator's operating status, the present invention performs adjustment verification from two dimensions: processing effect and processing energy consumption, thereby taking both processing effect and processing energy consumption into consideration and timely discovering situations where energy consumption is too high and processing effect does not meet standards. This real-time recognition capability can ensure that the system will not experience long-term performance degradation or waste of resources during the adjustment process. Finally, by verifying the adjustment effect, the system can establish a mechanism for continuous optimization and improvement, providing reliable remedial measures for poor adjustment of the accelerator's operating status. This experience accumulation and feedback loop will help to more accurately predict and handle problems during similar adjustments in the future, thereby improving the efficiency and results of overall system management. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings required for describing the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying creative work.

[0020] Figure 1 It is a schematic diagram of the connection of each module of the system of the present invention. DETAILED DESCRIPTION

[0021] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0022] Example 1

[0023] See also Figure 1As shown, the present invention proposes a pulse neural network optimization accelerator, including a data processing demand analysis module, a data processing capacity analysis module, an operation adaptation identification module, a resource utilization saturation analysis module, a network fluctuation assessment module, an operation status adjustment module, an operation adjustment verification module and an operation adjustment optimization module.

[0024] The data processing demand analysis module and the data processing capacity analysis module mentioned above are connected to the resource utilization saturation analysis module, the operation adaptation identification module, the resource utilization saturation analysis module and the network fluctuation assessment module are connected to the operation status adjustment module, the operation status adjustment module is connected to the operation adjustment verification module, and the operation adjustment verification module is connected to the operation adjustment optimization module.

[0025] The data processing demand analysis module is used to retrieve the sequence of pulse events to be processed that are input into the pulse neural network in real time, thereby analyzing the current data processing demand.

[0026] It is important to know that since pulse neural networks are often used in visual and auditory processing tasks, such as real-time target recognition, audio processing, and sound recognition, it is necessary to obtain real-time data from sensors, such as visual sensors (cameras), sound sensors (microphones), and tactile sensors. One of the characteristics of pulse neural networks is the event-driven operation mode, that is, calculations are performed only when pulses are received. After the data is collected by the sensor, it needs to be converted into a form suitable for the pulse neural network input, usually in the form of a pulse sequence, thereby forming a pulse event sequence.

[0027] The spike event sequence received by the spiking neural network usually contains multiple events. Each event represents a data point to be processed, with its own timestamp and possible other attributes. This timestamp refers to the time when the data was collected.

[0028] Spiking neural networks simulate and process dynamic, real-time input data by processing these pulse event sequences. Unlike traditional neural networks, spiking neural networks perform calculations in an event-driven manner, which is closer to the working mode of biological neural systems and can effectively process and utilize time information, thereby improving processing efficiency and real-time performance.

[0029] It is further important to know that before the data collected by the sensor is passed into the spiking neural network, some preprocessing steps are usually required, such as noise removal, feature extraction, data normalization, etc. These preprocessing steps help improve the spiking neural network's ability to understand and analyze the input data.

[0030] In the preferred implementation of the above scheme, the current data processing requirements are analyzed by referring to the following process: the total number of events to be processed is counted from the pulse event sequence, and the timestamp of the first event and the timestamp of the end event are extracted from the pulse event sequence, thereby forming a time window.

[0031] The total number of events to be processed is divided by the length of the time window to obtain the event density, which is used as the current data processing demand.

[0032] It should be noted that the event density mentioned above usually refers to the distribution of events within a time range, which directly reflects the frequency or density of data occurrence within a given time period. A higher event density usually means that more data needs to be processed. At the same time, the event density not only tells us the amount of data, but also indicates the timing of processing this data. A high event density indicates that the system needs to process a large amount of data quickly in a short period of time, while a low event density may mean that slower processing can be performed over a longer period of time. Therefore, it can represent data processing requirements. When the event density in the pulse event sequence increases, it means that the data processing demand increases, and the system needs higher processing speed and capabilities to cope with it.

[0033] The data processing capability analysis module is used to extract in real time the processing information of the pulse event sequence processed by the accelerator, specifically including the processing speed and the processing delay duration, thereby analyzing the current data processing capability coefficient.

[0034] The processing delay mentioned above refers to the time between the pulse neural network receiving the input pulse event sequence and starting to process these pulse events. The delay in the pulse neural network in processing the input event pulse sequence will affect its real-time performance. Higher delays will cause the pulse neural network to be unable to process input events within the required time, thereby reducing real-time response capabilities.

[0035] It should be added that the processed pulse event sequence mentioned in the above scheme is the pulse time sequence that has just been processed. Since the generation and processing of data are usually dynamic, the long-processed pulse event sequence cannot reflect the current data processing capability. This is because the long-term pulse event sequence may no longer accurately reflect the challenges and demands faced by the current system.

[0036] Furthermore, the processing speed, processing delay time and energy efficiency are selected to analyze the current data processing capacity because they are important indicators for evaluating the processing performance of spiking neural networks. The processing speed directly reflects the amount of data that the spiking neural network can process per unit time, the processing delay time indicates the timeliness of the spiking neural network processing requests, and the energy efficiency is related to the utilization efficiency of system resources. These indicators can comprehensively consider the efficiency and cost of the spiking neural network in processing data, and help system managers to have a more comprehensive understanding of the processing capabilities of the spiking neural network.

[0037] Specifically, the analysis process of the current data processing capacity coefficient is as follows: Substitute the processing information of the pulse event sequence processed by the pulse neural network into the formula Calculate the current data processing capacity coefficient DC, where V and T represent the processing speed and processing delay time of the pulse event sequence processed by the pulse neural network, respectively, V0 represents the reference processing speed, T0 represents the reference processing delay time, and e represents the natural constant. From this formula, it can be seen that the faster the processing speed, the shorter the processing delay time, the greater the energy efficiency, and the greater the current data processing capacity coefficient. The reference processing speed and the reference processing delay time are the initial settings of the system. The purpose of the setting is to assist in the quantitative calculation of the current data processing capacity coefficient. For example, the reference processing speed is 2ms / mb, and the reference processing delay time is 5ms. For another example, the average processing speed and average processing delay time in the historical processing record of the pulse neural network can be used as a reference.

[0038] The operation adaptation identification module is used to identify whether the operation state of the accelerator is adapted based on the current data processing demand and the current data processing capacity coefficient. The specific operation is as follows: establishing an adaptation correspondence relationship between the data processing demand and the data processing capacity coefficient.

[0039] In the example implementation of the above scheme, the historical processing records of the spike neural network on the spike event sequence can be retrieved, and the event density and data processing capacity coefficient of each processing record can be extracted from it, and then the collected information can be used through statistical analysis or data mining methods to find the matching pattern or association between the event density and the data processing capacity coefficient. This may involve using correlation analysis, regression analysis or other data analysis techniques to determine the relationship between them.

[0040] The current data processing demand is obtained from the adaptation corresponding relationship to obtain the adaptation data processing capacity coefficient corresponding to the current data processing demand.

[0041] The current data processing capacity coefficient is compared with the adapted data processing capacity coefficient corresponding to the current data processing demand to obtain the comparison difference, and the adaptation proximity is calculated by taking the absolute value of the comparison difference as the exponent after taking three quarters as the base and taking the percentage.

[0042] The adapted proximity is compared with the configured effective proximity. Exemplarily, the effective proximity is 90%. If the adapted proximity is less than the effective proximity, it is recognized that the operating state of the accelerator is not adapted. Otherwise, it is recognized that the operating state of the accelerator is adapted.

[0043] It should be noted that the purpose of configuring the effective proximity above is to take into account that it is too idealistic to identify the operating status by comparing the current data processing capability coefficient with the adapted data processing capability coefficient corresponding to the current data processing demand. There may be situations where they are different but with small differences. By configuring the effective proximity, situations with small differences can also be accommodated, making the accelerator operating status adaptation identification more reasonable and in line with actual needs.

[0044] The resource utilization saturation analysis module is used to monitor the resource utilization parameters of the accelerator in real time, specifically including GPU utilization, memory bandwidth utilization and operating temperature, and use the resource utilization parameters to analyze the resource utilization saturation of the current accelerator.

[0045] It should be added that the reason for using GPU utilization, memory bandwidth utilization and operating temperature as accelerator resource utilization parameters is that GPU utilization indicates the proportion of computing tasks actually performed by the GPU. High GPU utilization usually means that the system can more effectively utilize the computing resources of the GPU. Memory bandwidth utilization reflects the degree of utilization of memory bandwidth by the GPU or accelerator when processing data. High memory bandwidth utilization means that the system can effectively process large amounts of data. Accelerators usually consume a lot of electrical energy when running, and this energy is mainly converted into heat during computing and data processing. Therefore, high resource utilization will lead to reduced energy conversion efficiency inside the accelerator, and more energy will be converted into heat, which will cause the temperature to rise. Therefore, the operating temperature can reflect the level of resource utilization inside the accelerator. Therefore, using GPU utilization, memory bandwidth utilization and operating temperature as accelerator resource utilization parameters can comprehensively measure the resource utilization of the accelerator from both software and hardware dimensions.

[0046] In the optimization implementation of the above scheme, the resource utilization parameters of the accelerator are compared with the limit resource utilization parameters that the accelerator can bear, and the resource utilization saturation of the current accelerator is calculated. The specific calculation formula is:

[0047] Wherein GU, MR, and OT represent the GPU utilization, memory bandwidth utilization, and operating temperature of the accelerator, respectively; GU0, MR0, and OT0 represent the limit GPU utilization, limit memory bandwidth utilization, and limit operating temperature that the accelerator can withstand, respectively; D represents a set constant, and D>1. For example, D=4. From this formula, it can be seen that the closer the resource utilization of the accelerator is to the limit, the more saturated the resource utilization is.

[0048] It should be understood that accelerators are usually set with extreme resource utilization parameters due to the limitations of their design and manufacturing capabilities. This is to ensure that they can operate within a safe and effective range during design and use. The extreme resource utilization parameters that the accelerator can withstand can be obtained from its instructions for use.

[0049] The network fluctuation assessment module is used to monitor the network transmission indicators of data transmitted into the pulse neural network in real time. Specifically, the network transmission indicators include but are not limited to network transmission speed, packet loss rate, transmission delay duration, etc., thereby analyzing the current network transmission fluctuation situation. The specific analysis is as follows: the network transmission indicator at the current monitoring moment is compared with the network transmission indicator at the previous monitoring moment to obtain the contrast difference of each network transmission indicator, and then the current network transmission fluctuation is obtained by subtracting 1 from the calculation result with four fifths as the base and the sum of the absolute values ​​of the contrast differences of each network transmission indicator as the exponent.

[0050] The operation state adjustment module is used to adjust the operation state of the accelerator based on the current accelerator resource utilization saturation and the current network transmission fluctuation when the operation state of the accelerator is not suitable. The specific adjustment is as follows: (1) Substitute the current accelerator resource utilization saturation and the current network transmission fluctuation into the formula The impact of the operating environment is calculated, where NF represents the current network transmission fluctuation. The greater the resource utilization saturation, the greater the current network transmission fluctuation, and the greater the impact on the accelerator's operating status adjustment.

[0051] (2) Compare the current data processing capacity coefficient with the adapted data processing capacity coefficient corresponding to the current data processing demand. If the current data processing capacity coefficient is higher than the adapted data processing capacity coefficient corresponding to the current data processing demand, it indicates that the current data processing capacity is sufficient and can be slowed down to reduce the operating frequency or power of the accelerator to save energy or reduce heat generation while maintaining sufficient performance to meet the current workload requirements. In this case, the operating state of the accelerator is determined to be speed reduction adjustment. Otherwise, it indicates that the current data processing capacity is insufficient and cannot fully meet the actual demand. In this case, the operating state of the accelerator is determined to be acceleration adjustment.

[0052] (3) When the accelerator's operating state is adjusted in the direction of speed reduction, the required speed reduction operating indication is obtained according to the adapted data processing capacity coefficient corresponding to the current data processing demand, where the operating indication refers to the operating frequency of the accelerator. The required speed reduction operating indication can be obtained by establishing a corresponding relationship between the accelerator's operating indication and the data processing capacity coefficient, that is, the data processing capacity that the accelerator can achieve at different operating frequencies. This corresponding relationship can be obtained from the accelerator's technical documentation, which usually provides performance data at different operating frequencies. The accelerator can also be performance tested. When the accelerator is used to process actual workloads, different The processing capacity under the frequency is then adjusted according to the required speed reduction running indicator. When the operating state adjustment direction of the accelerator is acceleration adjustment, the operating environment impact is compared with the set threshold. For example, the threshold is set to 0.7. If the operating environment impact is less than the set threshold, the required acceleration running indicator is obtained according to the adaptive data processing capacity coefficient corresponding to the current data processing demand. The difference between 1 and the operating environment impact is multiplied by the required acceleration running indicator to obtain the appropriate acceleration running indicator, and then the acceleration adjustment is performed according to the appropriate acceleration running indicator. Conversely, when the operating environment impact is greater than the set threshold, the operating state adjustment is not performed.

[0053] It should be understood that when the accelerator needs to be slowed down, it indicates that the data processing capacity is sufficient. In this case, maintaining the status quo without making adjustments may lead to excessive energy consumption or excessive response to network fluctuations. Therefore, even if the accelerator resource utilization is relatively saturated and the network fluctuations are large, the accelerator's operating frequency can be reduced. This can alleviate the accelerator's resource utilization and optimize the overall system's energy efficiency and long-term stability while maintaining reasonable performance.

[0054] It is further understood that when the accelerator needs to be accelerated and adjusted, it indicates a lack of data processing capabilities. In this case, based on the impact of the operating environment caused by the saturated resource utilization and network fluctuations, acceleration when the impact of the operating environment is large will face more unstable factors, affecting the stability and reliability of the system. Therefore, by setting a threshold, when the impact of the operating environment is greater than the set threshold, no operation adjustment is performed, and the status quo is maintained. This can maximize the stability of the current system. When the impact of the operating environment does not exceed the threshold, acceleration is limited based on the impact of the operating environment, that is, the accelerated operating frequency is not set too high. In this way, certain processing requirements can be met while avoiding adjusting the frequency too high, thereby achieving the goal of improving the system's data processing capabilities to a certain extent while maintaining the stability and reliability of the system under limited resources.

[0055] The operation adjustment verification module is used to perform adjustment verification on the operation state of the accelerator after adjustment, specifically including processing effect test and processing energy consumption test. The specific test operation is as follows:

[0056] After the operating state is adjusted, a set time period is selected, wherein the set time period can be set according to the number of events in the pulse event sequence to be processed. When the number of events is small, the set time period is shorter, and when the number of events is large, the set time period can be longer, exemplarily 10s. The purpose of setting the time period is to test the processing effect of the pulse event sequence to be processed after the working state is adjusted, and to detect and calculate the data processing capacity coefficient of the pulse event sequence to be processed within the time period. The calculation of the data processing capacity coefficient is similarly referred to the calculation method in the data processing capacity analysis module.

[0057] Based on the corresponding relationship between the accelerator operation indicator and the data processing capacity coefficient, the adapted data processing capacity coefficient corresponding to the actual adjusted accelerator operation indicator can be obtained, and then the data processing capacity coefficient of the pulse event sequence to be processed is compared with the adapted data processing capacity coefficient to calculate the processing effect coefficient. The specific calculation formula is: Where DC 调整 The data processing capacity coefficient of the pulse event sequence to be processed, DC 适配 Indicates the adaptation data processing capability coefficient corresponding to the actual adjusted accelerator operation indicator.

[0058] Check the energy efficiency of the accelerator within a set time period.

[0059] It should be noted that the energy efficiency mentioned above refers to the relationship between the energy consumed when the pulse neural network completes the pulse event sequence processing and the completion quality or efficiency. In specific calculations, it can be calculated by measuring the energy utilization rate of the network when completing the pulse event sequence processing, that is, the ratio of the actual energy used to the total energy consumed. The higher the energy efficiency, the less energy is consumed when completing the same pulse event sequence processing. This usually reflects the optimization degree and effectiveness of the system in energy utilization.

[0060] Based on the adjusted accelerator operation indicator, the normal energy efficiency corresponding to the operation indicator is obtained, which can be obtained from the accelerator's technical manual, and then the energy efficiency compliance coefficient is calculated by comparing the adjusted energy efficiency with the normal energy efficiency corresponding to the operation indicator. The specific calculation formula is:

[0061] It should be pointed out that the above verification after the adjustment of the accelerator's operating status is mainly for the verification after the accelerator's acceleration adjustment. This is because after the accelerator's acceleration adjustment, the actual acceleration result may fail to meet the processing requirements, while the deceleration adjustment itself has abundant data processing capabilities and will not fail to meet the processing requirements.

[0062] The operation adjustment and optimization module is used to optimize the accelerator operation state according to the test results of the processing effect test and the processing energy consumption test. The specific implementation is as follows: the adjusted processing effect coefficient is compared with the set standard processing effect coefficient, and the energy efficiency compliance coefficient is compared with the set standard energy efficiency compliance coefficient. For example, the standard processing effect coefficient and the standard energy efficiency compliance coefficient can be set to 0.8. If the adjusted processing effect coefficient is greater than or equal to the standard processing effect coefficient and the energy efficiency compliance coefficient is greater than or equal to the standard energy efficiency compliance coefficient, the operation state optimization is not performed. On the contrary, the optimization model is used. In the model They represent the treatment effect coefficient and energy efficiency compliance coefficient respectively. They respectively represent the standard-reaching treatment effect coefficient and the standard-reaching energy consumption efficiency compliance coefficient. ∧ and ∨ respectively represent and and or. The purpose of setting the standard-reaching treatment effect coefficient and the standard-reaching energy consumption efficiency compliance coefficient is to assist in the evaluation and implementation of whether optimization is needed after the operating status is adjusted.

[0063] After determining the optimization direction, the operating state of the accelerator is optimized after a set time period.

[0064] It should be noted that the above-mentioned adjusted operating status optimization is carried out on the basis of adjustments.

[0065] Example 2

[0066] The present invention proposes a device, which includes the pulse neural network optimization accelerator described in the present invention.

[0067] Example 3

[0068] The present invention proposes a terminal, comprising a processor and a memory for storing execution instructions of the processor, wherein the processor is configured to execute the pulse neural network optimization accelerator described in the present invention.

[0069] Example 4

[0070] The present invention proposes a storage medium, which stores one or more programs. The one or more programs can be executed by one or more processors to implement the pulse neural network optimization accelerator described in the present invention.

[0071] The above contents are merely examples and explanations of the concept of the present invention. Those skilled in the art may make various modifications or additions to the specific embodiments described or replace them in a similar manner. As long as they do not deviate from the concept of the invention or exceed the scope defined by the present invention, they shall all fall within the protection scope of the present invention.

Claims

1. A pulse neural network optimization accelerator, characterized in that , including the following modules: The data processing demand analysis module is used to retrieve the sequence of pulse events to be processed that are input into the spiking neural network in real time, thereby analyzing the current data processing demand; The data processing capability analysis module is used to extract the processing information of the pulse event sequence processed by the pulse neural network in real time, including the processing speed and processing delay time, so as to analyze the current data processing capability coefficient; An operation adaptation identification module is used to identify whether the operation state of the accelerator is adapted based on the current data processing demand and the current data processing capacity coefficient; The resource utilization saturation analysis module is used to monitor the resource utilization parameters of the accelerator in real time, including GPU utilization, memory bandwidth utilization and operating temperature, and use the resource utilization parameters to analyze the resource utilization saturation of the current accelerator; The network fluctuation assessment module is used to monitor the network transmission indicators of data transmitted into the spiking neural network in real time, thereby analyzing the current network transmission fluctuation situation; An operation state adjustment module, used for adjusting the operation state of the accelerator based on the current resource utilization saturation of the accelerator and the current network transmission fluctuation when identifying that the operation state of the accelerator is not suitable; The operation adjustment verification module is used to verify the operation status of the accelerator after adjustment, including processing effect test and processing energy consumption test; The operation adjustment and optimization module is used to optimize the accelerator operation status according to the test results of the processing effect test and the processing energy consumption test.

2. A pulse neural network optimization accelerator as claimed in claim 1, characterized in that: The analysis of current data processing requirements is described in the following process: The total number of events to be processed is counted from the pulse event sequence, and the timestamp of the head event and the timestamp of the end event are extracted from the pulse event sequence, thereby forming a time window; The total number of events to be processed is divided by the length of the time window to obtain the event density, which is used as the current data processing demand.

3. A pulse neural network optimization accelerator as claimed in claim 1, characterized in that: The analysis process of the current data processing capacity coefficient is as follows: Substitute the processing information of the pulse event sequence processed by the spiking neural network into the formula Calculate the current data processing capacity coefficient DC, where V and T represent the processing speed and processing delay time of the pulse event sequence processed by the pulse neural network, V0 represents the reference processing speed, T0 represents the reference delay time, and e represents a natural constant.

4. A pulse neural network optimization accelerator as claimed in claim 1, characterized in that: The identification accelerator's operating state is adapted to the following operations: Establish the adaptive correspondence between data processing requirements and data processing capacity coefficients; Obtaining the adaptation data processing capability coefficient corresponding to the current data processing demand from the adaptation correspondence relationship; The current data processing capacity coefficient is compared with the adapted data processing capacity coefficient corresponding to the current data processing demand to obtain a comparison difference, and the adaptation proximity is calculated by taking the absolute value of the comparison difference as an exponent with three quarters as the base and then taking the percentage; The adapted proximity is compared with the configured effective proximity. If the adapted proximity is less than the effective proximity, the operating state of the identification accelerator is not adapted. Otherwise, the operating state of the identification accelerator is adapted.

5. The pulse neural network optimization accelerator according to claim 1, characterized in that: The use of resource utilization parameters to analyze the current accelerator's resource utilization saturation is implemented as follows: Compare the resource utilization parameters of the accelerator with the limit resource utilization parameters that the accelerator can withstand, and calculate the current resource utilization saturation of the accelerator. The specific calculation formula is: Where GU, MR, and OT represent the GPU utilization, memory bandwidth utilization, and operating temperature of the accelerator, respectively; GU0, MR0, and OT0 represent the maximum GPU utilization, maximum memory bandwidth utilization, and maximum operating temperature that the accelerator can withstand, respectively; D represents a set constant, and D>1; The current network transmission fluctuation situation is analyzed as follows: The network transmission index at the current monitoring moment is compared with the network transmission index at the previous monitoring moment to obtain the comparison difference of each network transmission index, and then the current network transmission fluctuation is obtained by subtracting 1 from the calculation result with four fifths as the base and the sum of the absolute values ​​of the comparison differences of each network transmission index as the exponent.

6. A pulse neural network optimization accelerator as claimed in claim 5, characterized in that: The process of adjusting the running state of the accelerator based on the current accelerator resource utilization saturation and the current network transmission fluctuation is as follows: (1) Substitute the current accelerator resource utilization saturation and the current network transmission fluctuation into the formula Calculate the impact of the operating environment, where NF represents the current network transmission fluctuation; (2) comparing the current data processing capability coefficient with the adapted data processing capability coefficient corresponding to the current data processing demand; if the current data processing capability coefficient is higher than the adapted data processing capability coefficient corresponding to the current data processing demand, determining that the operation state of the accelerator is a speed reduction adjustment; otherwise, determining that the operation state of the accelerator is a speed increase adjustment; (3) When the accelerator's operating state is adjusted in the direction of speed reduction, the required speed reduction operation indicator is obtained according to the adaptive data processing capacity coefficient corresponding to the current data processing demand, and then the speed reduction adjustment is performed accordingly. When the accelerator's operating state is adjusted in the direction of acceleration, the operating environment impact is compared with the set threshold. If the operating environment impact is less than the set threshold, the required acceleration operation indicator is obtained according to the adaptive data processing capacity coefficient corresponding to the current data processing demand. The difference between 1 and the operating environment impact is multiplied by the required acceleration operation indicator to obtain the appropriate acceleration operation indicator, and then the acceleration adjustment is performed according to the appropriate acceleration operation indicator. Otherwise, when the operating environment impact is greater than the set threshold, the operating state adjustment is not performed.

7. A pulse neural network optimization accelerator as claimed in claim 3, characterized in that: The processing effect test and processing energy consumption test are performed as follows: After the operation state is adjusted, a set time period is selected, and within the time period, a data processing capacity coefficient of the pulse event sequence to be processed is detected and calculated; Based on the adjusted accelerator operation indication, an adapted data processing capability coefficient corresponding to the operation indication is obtained, and then the data processing capability coefficient of the pulse event sequence to be processed is compared with the adapted data processing capability coefficient corresponding to the operation indication to calculate a processing effect coefficient; Detect the energy efficiency of the accelerator within a set time period; Based on the adjusted accelerator operation indicator, a normal energy consumption efficiency corresponding to the operation indicator is obtained, and then the energy consumption efficiency after adjustment is compared with the normal energy consumption efficiency corresponding to the operation indicator to calculate an energy consumption efficiency compliance coefficient; The accelerator operation state optimization is performed based on the test results of the processing effect test and the processing energy consumption test, and is specifically implemented as follows: The adjusted treatment effect coefficient is compared with the set standard treatment effect coefficient, and the energy efficiency compliance coefficient is compared with the set standard energy efficiency compliance coefficient. If the adjusted treatment effect coefficient is greater than or equal to the standard treatment effect coefficient and the energy efficiency compliance coefficient is greater than or equal to the standard energy efficiency compliance coefficient, the operation state optimization is not performed, otherwise the optimization model is used. In the model They represent the treatment effect coefficient and energy efficiency compliance coefficient respectively. They represent the treatment effect coefficient and the energy efficiency compliance coefficient respectively, and ∧ and ∨ represent and and or respectively; After determining the optimization direction, the operating state of the accelerator is optimized after a set time period.

8. A device, characterized in that: The device comprises the pulse neural network optimization accelerator described in any one of claims 1-7.

9. A terminal, characterized in that: It comprises a processor and a memory for storing execution instructions of the processor, wherein the processor is configured to execute the pulse neural network optimization accelerator described in any one of claims 1-7.

10. A storage medium, characterized in that: The storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to implement the pulse neural network optimization accelerator as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Pulse neural network acceleration method and event-driven accelerator of pulse neural network

    CN114139695A

  • Operation module, accelerator based on spiking neural network and method

    CN117057403A