Non-quantitative calculation method and device based on randomized key bits and multi-algorithm scheduling
The method addresses soft errors in non-deterministic computing by using randomized key bit manipulation and multi-algorithm scheduling to optimize performance and reduce power consumption, improving speed and accuracy in AI and big data systems.
Patent Information
- Application Number
- CN202410746760.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-11
- Publication Date
- 2025-07-15
- Estimated Expiration
- 2044-06-11
AI Technical Summary
When the prior art faces soft errors caused by the single-particle effect, there are problems with hardware implementation and power consumption overhead, which affects the accuracy and stability of non-quantitative calculations.
A non-quantitative calculation method based on randomized key bits and multi-algorithm scheduling is adopted. By extracting key bits and performing soft error injections that mimic single-particle effect, combining reinforcement learning algorithms to optimize the key bit positions, dynamic scheduling and weight overlapping are used to optimize the performance indicators of non-quantitative calculations.
It improves the speed, accuracy and energy efficiency of non-quantitative calculations, reduces the cost of hardware implementation, and enhances the robustness and applicability of the system.
Smart Images

Figure CN118536443B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of non - quantitative computing, and particularly relates to a non - quantitative computing method and device based on randomized critical bits and multi - algorithm scheduling. Background Art
[0002] With the continuous progress of semiconductor technology, the process size has been continuously reduced, which has greatly increased the density of integrated circuits, reduced power consumption, and significantly improved performance. However, this has also brought some new challenges. Due to the reduction in size, arithmetic chips and memory chips are more vulnerable to external radiation. When these chips are irradiated by high - energy particles, data bit flips may occur in internal registers, caches, or memory arrays. This single - event effect can cause data errors and lead to the occurrence of so - called soft errors. A soft error refers to a non - permanent fault caused by a temporary charge change. Once this fault occurs, it may cause the calculation result of the system to be incorrect and even lead to system crashes. This is a very serious problem for systems that need to run stably for a long time. In the general trend of software and hardware system design with increasing computational intensity, this single - event effect will have a greater impact on the performance of software and hardware systems.
[0003] In recent years, non - quantitative computing such as artificial intelligence and big data analysis has developed rapidly, and the requirements for computing systems have been continuously improved. The single - event effect can cause errors in computing instructions and computing data, resulting in reduced accuracy of non - quantitative computing, increased running time, increased redundant storage space occupation, and even functional errors or program crashes. Existing anti - single - event effect hardening schemes include redundant circuit design, error detection and correction codes (EDC), etc., but this method has problems such as increased hardware implementation and power consumption overhead. Summary of the Invention
[0004] In order to overcome the deficiencies of the above - mentioned prior art, the purpose of the present invention is to provide a non - quantitative computing method and device based on randomized critical bits and multi - algorithm scheduling. This method and device utilize the positive effects of the single - event effect and the multi - algorithm scheduling strategy, and can effectively improve the speed, accuracy, and applicability of non - quantitative computing, and reduce power consumption and hardware implementation costs.
[0005] In order to achieve the above purpose, the technical solution adopted by the present invention is as follows:
[0006] A non - quantitative computing method based on randomized critical bits and multi - algorithm scheduling, comprising the following steps;
[0007] S1: Extract the parameters and data of the non - quantitative calculations that need to be optimized, and store them as the first data binary bitstream file; that is, extract the instructions and data parts in the binary executable file compiled from the non - quantitative calculations or the data files loaded during operation, and store them as the first data binary bitstream file;
[0008] S2: Perform key - bit searching on the extracted first data binary bitstream file; randomly select one or more key bits for soft error injection of the single - event effect to obtain the second data binary bitstream file; S3: Evaluate the second data binary bitstream file, including speed, required computing power, accuracy, applicable scenarios, hardware implementation cost, etc.; and combine with the reinforcement learning algorithm to learn between the randomized positions and effects, and give speculations, and continuously iterate until the indicators meet the set expected range; S4: Sort the various indicators of all the second data binary bitstream files obtained after optimization in S3 according to the performance indicators of performance, accuracy, energy efficiency, and applicable scenarios, balance various performances and losses, and store them in the form of a data table to obtain a data loading table; S5: According to the content of the data loading table, load the calculation weights and calculation data of the third data binary bitstream file applicable to the current deployment scenario and operating state into the loading module;
[0009] S6: During operation, the central control model assigns tasks to the second data binary bitstream files of multiple non - quantitative algorithms in the loading module under different scenarios or different inputs and operating states, changes their input and output weights, and the system adds the results of each sub - algorithm and then outputs the result;
[0010] S7: Store the second data binary bitstream file output by the optimization module, the loading table under specific indicators generated by the loading module, and the task assignment and weight parameter tables of the central control module under different operating states, inputs, and scenarios.
[0011] In the above - mentioned S1, key - bit searching operations will be performed on the algorithms and data of the non - quantitative calculations, that is, by analyzing the data, mark the data bits that may have a greater impact on the effect, and then extract and save these key bits as the first data binary bitstream file to complete the operation of extracting parameters and data;
[0012] Among them, the algorithms and data for non-quantitative calculations include neural network model algorithms and model parameters, data fitting algorithms, and big data analysis algorithms; the first data binary bitstream file is the binary executable file compiled from non-quantitative calculations or the instruction and data parts in the data file loaded during operation. In step S2, the key bits refer to the important key parameters and data positions in the first data binary bitstream file, corresponding to the binary numbers at these positions in the first data binary bitstream file. Performing a one-bit or multi-bit flipping operation on the binary numbers at these positions brings randomness to the weight parameters of the first data binary bitstream file;
[0013] When performing a one-bit optimization operation, the binary data of the key bits will be flipped, that is, the negation operation. For example, 1 bit changes from "0" to "1" or from "1" to "0". When performing an n-bit optimization operation, the binary data of the key bits will be flipped by n bits. For example, "00110010" changes to "11001101". In step S3, reinforcement learning means that at each time step, it will select key bits for optimization, use the reward function composed of index changes to update its parameters, and obtain the globally optimal random key bits after multiple iterations; the first step of using reinforcement learning requires setting the initial key bits and randomization strategy, as well as defining the evaluation reward function; the second step is that the reinforcement learning algorithm operates on the current state to obtain a single-step result; the third step is to execute the data file after the operation to obtain different change effects; the fourth step is to obtain the new state and reward according to the evaluation reward function; the fifth step is to adjust the operation strategy according to the state and reward; repeat steps two to five to obtain the globally optimal random key bits.
[0014] The evaluation metrics include speed, required computing power, accuracy, and applicable scenarios.
[0015] In step S4, since step S3 will generate multiple second data binary bitstream files, and the optimized metrics of each file are different, effects such as high speed and high power consumption, high accuracy and high power consumption, and different applicable scenarios may occur;
[0016] Store these second data binary bitstream files and the corresponding change effects to obtain a data loading table. This loading table stores information on the performance, accuracy, energy efficiency, and applicable scenarios of each second data file, performs a search operation from high to low according to different items, and enables each performance item to be sorted and searched with a certain priority.
[0017] In S5, the loading module selects and loads the corresponding second data binary file according to the loading table obtained in step S4 and the current task scenario, that is, solves the combination of second data binary files with different performance metrics to meet or exceed the set expected performance and requirements. For example, in the low-power scenario, the low-power performance has the highest priority. The loading module will preferentially load the combination of second data binary files with low power consumption and good metrics such as accuracy and speed to participate in the task processing. For the different remaining performance metrics under the same low power consumption, the central control module can balance the accuracy and speed to achieve the best system performance.
[0018] In S6, the role of the central control model is to determine which part of the second data files and algorithms should be activated according to the input data; uniformly schedule the sub-algorithms with different random key bits through the central control model and output them with different weights superimposed;
[0019] First, the loading module selects and loads multiple non-quantitative calculation algorithms with different speeds, precisions, computing power requirements, and applicable scenarios. The calculation algorithms can be the same algorithm or different algorithms. Then, the central control model redistributes the weights and the input data flow. Finally, the output weights after redistribution are added up for output to obtain better comprehensive performance. The optimization device for the non-quantitative calculation method based on randomized key bits and multi-algorithm scheduling includes:
[0020] An extraction module extracts important calculation parameters or calculation data from each non-quantitative calculation to be optimized, and saves them as the first data binary bitstream file before optimization;
[0021] An optimization module performs randomized bit operations on each important parameter bit to obtain second data binary bitstream files of calculation parameters or data with different speeds, precisions, and applicable scenarios; and learns and analyzes the effects of the key bits through a reinforcement learning algorithm to further find the globally optimal random positions of the key bits;
[0022] A loading module sorts the various metrics of the second data files in combination with the calibration of relevant performance metrics during runtime, balances various performances and losses, and then loads the calculation weights and calculation data of the applicable second data files;
[0023] A central control module allocates tasks to multiple second data files in the loading module under different scenarios or different input and running states. According to the different running states and inputs, each second data file will receive inputs and change according to its characteristics and applicable scenarios, and its output will also be assigned different weights and then added up to form the total output of the system;
[0024] A storage module stores the second data file output by the optimization module, the loading table under specific metrics generated by the loading module, and the task assignment and weight parameter tables of the central control module under different operating states, inputs, and scenarios, avoiding the reloading and configuration of the loading module and the central control module during the startup initialization process for the same configuration and scenario.
[0025] The method is used for artificial intelligence, big data processing, and non-quantitative calculation and analysis.
[0026] Advantages of the present invention:
[0027] The present invention extracts the first data file after non-quantitative calculation, and then performs soft error injection of single-event effects in the manual by finding the key bits and using the method of reinforcement learning to obtain the second data file. During operation, the optimization algorithm will continuously iterate to find the optimal randomized key bits. These random key bits can be superimposed to obtain better performance metrics. To prevent overfitting, a central control model is introduced for unified scheduling and superimposing outputs with different weights. These non-quantitative calculation algorithms and data applicable to different scenarios all come from the second data file with various performance metrics after random key bits.
[0028] The extraction module in the present invention extracts important calculation parameters or data from the non-quantitative calculation to be optimized as the first data file. The optimization module performs randomized bit operations on the important parameter bits, and learns and analyzes the effects of the key bits through a reinforcement learning algorithm to obtain the second data file. The loading module calibrates the relevant performance metrics during operation, sorts the various metrics, balances the various performances, and then loads the applicable calculation weights and calculation data. The central control module assigns tasks to multiple configuration data files in the loading module under different scenarios or different inputs and operating states. The storage module stores the configuration data file output by the optimization module, the loading table under specific metrics generated by the loading module, and the task assignment and weight parameter tables of the central control module under the corresponding operating states, inputs, and scenarios.
[0029] Due to the introduction of the central control model, the present invention can run and schedule non-quantitative calculations of multiple algorithms and models on the premise of limited computing power of the hardware device, such as various industrial large models, language large models, and more complex and higher-precision machine vision models. It has strong robustness to various calibration metrics, operating states, and applicable scenarios, and by storing part of the loading preset, it also speeds up the optimization and initial loading. By comprehensively using the above optimization methods, the overall system effectively improves the calculation speed, accuracy, and energy efficiency. Description of the Drawings
[0030] Figure 1 It is a flowchart of the non-quantitative calculation method provided by an embodiment of the present invention.
[0031] Figure 2 It is a schematic structural diagram of a non - quantitative calculation device provided by an embodiment of the present invention.
[0032] Figure 3 It is a schematic structural diagram of an electronic device provided by an embodiment of the present invention. Detailed implementation manners
[0033] The present invention will be further described in detail below with reference to the accompanying drawings.
[0034] With the progress of semiconductor technology, the density of integrated circuits has increased and the performance has been improved, but new challenges have also emerged. For example, due to the reduction in size, arithmetic chips and memory chips are more vulnerable to external radiation, which may cause data bit flips and lead to soft errors. This is a serious problem for systems that need to run stably for a long time. The latest research has found that single - particle effects may have a certain positive impact on non - quantitative calculations because they may introduce some randomness that helps to find better solutions. In addition, by analyzing and optimizing the randomization of critical bits through reinforcement learning, the central control model dynamically schedules tasks and output weights for multiple non - quantitative calculation parameters and data with different performance indicators, which can improve the overall performance of the non - quantitative calculation system.
[0035] Therefore, the present invention provides a non - quantitative calculation method and device based on randomized critical bits and multi - algorithm scheduling.
[0036] Figure 1 It is a flowchart of the non - quantitative calculation method provided by an embodiment of the present invention. As Figure 1 shown, the non - quantitative calculation method based on randomized critical bits and multi - algorithm scheduling provided by an embodiment of the present invention includes:
[0037] S1. Extract the parameters and data of non - quantitative calculations that need to be optimized and store them as a first data binary bit - stream file.
[0038] S2. Perform key - bit search processing on the extracted first data binary bit - stream file. Inject soft errors imitating single - particle effects into the main critical parameter bits to obtain a second data binary bit - stream file with corresponding randomized critical bits.
[0039] S3. Evaluate the second data binary bit - stream file with randomized critical bits, including evaluation indicators such as speed, required computing power, accuracy, and applicable scenarios. Combine with the reinforcement learning algorithm to learn between the randomized positions and effects, and give inferences. Continuously repeat the processes of S2 and S3 to make it iterate until the indicators meet the set expected range.
[0040] S4. Sort the indicators of the optimized multiple second data files respectively, balance various performances and losses, and store them in the form of a data table to obtain a data loading table;
[0041] S5. Load the computing weights and computing data of the second data binary bitstream file applicable to the current deployment scenario and operating state into the loading module.
[0042] S6. During operation, the central control model assigns tasks to the second data binary bitstream files of multiple non-quantitative algorithms in the loading module under different scenarios or different inputs and operating states, and changes their input and output weights. The system sums up the sub-algorithms and outputs the result.
[0043] S7. Store the second data binary bitstream file output by the optimization module, the loading table under specific metrics generated by the loading module, and the task assignment and weight parameter table of the central control module under different operating states, inputs, and scenarios.
[0044] The non-quantitative calculation in S6 can be a big data algorithm, an artificial intelligence algorithm, a large prediction model, etc. Correspondingly, the first data file can be the algorithm data of big data calculation and the neural network model weight parameters of artificial intelligence algorithms, etc. The first data file is a binary bitstream, and the key bits represent the key binary data bits in the first data file that affect the performance metrics of non-quantitative calculation. The second data file represents the non-quantitative calculation data and weight parameter file after randomly optimizing the key bits of the first data file.
[0045] The key bit refers to the important key data parameter weight position in the first data file. This position is a binary number. Random operations are performed on one or more bits at this position, which brings a certain degree of randomness to the important key weight parameters of the first data file. When performing a one-bit optimization operation, the binary data of the key bit will be flipped, that is, from "0" to "1" and from "1" to "0". When performing an n-bit optimization operation, the binary bits of the key bit will be randomly transformed by 1 to n bits or fixed at n bits.
[0046] The performance metrics refer to the computing speed, computing accuracy, computing power requirement, and energy efficiency before and after non-quantitative calculation optimization.
[0047] In the above S3 step, to specifically implement reinforcement learning, the operating performance metrics of the second data file need to be converted into a reward function to evaluate the behavior of the model. When the model performs a random key bit operation and enters a new state, it will receive a reward. If the metric change is good, the reward is positive; if the metric change is bad, the reward is negative. The model continuously selects key bits for transformation and learns based on the rewards. At each time step, the model will select key bits for optimization. The model uses the reward function composed of metric changes to update its parameters, and then performs step S2 according to the predicted key bit positions of the new parameters. After multiple iterations, the globally optimal random key bits are obtained.
[0048] In the above step S4, since multiple second data binary bitstream files are generated in step S3, and the metrics optimized for each file are different, there may be changes in effects such as high speed and high power consumption, high accuracy and high power consumption, and different applicable scenarios. Store these second data binary bitstream files and the corresponding changed effects to obtain a data loading table. This table stores information such as the performance, accuracy, energy efficiency, and applicable scenarios of each second data file, and performs a search operation from high to low according to different items, and enables each performance item to be sorted and searched with a certain priority. For example, under the premise of performance priority, sort and search according to energy efficiency, or search for the second data binary file that best meets the screening conditions according to the sorting method of low power consumption under the premise of high accuracy.
[0049] It should be noted that after optimizing the first key bit of the first data file, a performance improvement is brought, and the second key bit, the third key bit, etc. that may improve the performance will continue to be searched for. Separate non-quantitative calculations can obtain improvements in different performance indicators by optimizing different key bits. Specifically, after changing the first key bit, the accuracy is improved, and continuing to optimize and change the second key bit can obtain a change in the applicable scenario. In actual use, it will be determined which key bits need to be optimized according to the calibrated performance indicators. However, usually, optimizing multiple key bits will lead to a decrease in the overall performance improvement. The present invention combines a multi-algorithm scheduling method to achieve better overall performance improvement by loading multiple non-quantitative calculations with better different indicators and through dynamic scheduling.
[0050] In the above step S6, second data files with non-quantitative calculation methods for different performance indicators or functions are required. Then, a central control model network needs to be defined, and its function is to determine which second data file and algorithm should be activated according to the input data. During the process of training the central control model, first, determine which sub-non-quantitative calculation algorithm should be activated through the central control model. Then, pass the input data to the activated algorithm and calculate the output. Finally, calculate the loss according to the output and the true label, and use the backpropagation algorithm to update the model parameters. Usually, the central control model has universality and only needs to be trained once and can be used in subsequent operations. And during operation, the sub-non-quantitative calculation algorithms and second data files to be activated for scheduling need to be selected most appropriately using a pre-loading table or according to the deployment scenario and performance indicators. The central control model mainly makes a speculative dynamic allocation of tasks to the sub-non-quantitative calculation algorithms according to the system input, including adjusting the input and output weights, operation processes, and data parts, etc.
[0051] Figure 2 It is a schematic structural diagram of a design optimization device provided by an embodiment of the present invention, including the following modules:
[0052] The extraction module 201 is responsible for extracting important calculation parameters or calculation data from various non - quantitative calculations that need to be optimized. These parameters and data are the basis of the optimization process, and they are saved as the first data binary bitstream file before optimization for subsequent processing and analysis.
[0053] The optimization module 202 performs randomized bit operations on each important parameter bit to generate a second data binary bitstream file of calculation parameters or data with different speeds, precisions, and applicable scenarios. This module uses reinforcement learning algorithms to learn and analyze the effects of key bits to find the globally optimal random positions of key bits.
[0054] The loading module 203 sorts each index of the second data file in combination with the calibration of relevant performance metrics during runtime. After balancing various performances and losses, it loads the calculation weights and calculation data of multiple applicable second data files. The goal of this module is to ensure that the system can achieve optimal performance during runtime.
[0055] The central control module 204 assigns tasks to multiple second data files in the operation module under different scenarios or different input and operation states. Depending on the different operation states and inputs, each second data file will change according to its characteristics and applicable scenarios when receiving an input, and its output will also be assigned different weights and then summed to form the total output of the system. The goal of this module is to ensure that the system can flexibly adjust its behavior according to different scenarios and requirements.
[0056] The storage module 205 is responsible for storing the second data files output by the optimization module, the loading tables under specific metrics generated by the loading module, as well as the task assignment and weight parameter tables of the central control module under different operation states, inputs, and scenarios. The goal of this module is to avoid re - loading and configuring the operation module and the central control module during the startup initialization process under the same configuration and scenario, thereby improving the efficiency of the system.
[0057] The device of the present invention is a highly modular system, mainly including an extraction module, an optimization module, a loading module, a central control module, and a storage module. The extraction module extracts important calculation parameters or data from non - quantitative calculations that need to be optimized as the first data file. The optimization module performs randomized bit operations on important parameter bits and obtains the second data file by learning and analyzing the effects of key bits through reinforcement learning algorithms. The loading module sorts each index in combination with the calibration of relevant performance metrics during runtime, balances various performances, and then loads the applicable calculation weights and calculation data. The central control module assigns tasks to multiple configuration data files in the loading module under different scenarios or different input and operation states. The storage module stores the configuration data files output by the optimization module, the loading tables under specific metrics generated by the loading module, as well as the task assignment and weight parameter tables of the central control module under the corresponding operation states, inputs, and scenarios.
[0058] As Figure 3 shown, an embodiment of the present invention provides an electronic device, including a processor 301, a computing accelerator 302, a memory 303, a communication bus 304, and a communication interface 305.
[0059] The processor 301 mainly completes steps S1 and S2 of the above method. Extract the first data binary bitstream file and search for key bits and optimize the extracted first data file.
[0060] The computing accelerator 302 will complete the processes of steps S3, S4, S5, and S6 of the above method together with the processor 301, run the reinforcement learning algorithm, and continuously iterate the second data file; search according to the calibrated performance index and give the loading scheme for the applicable scenario and run the calculation to give the result.
[0061] The memory 303 will store the optimized second data file and the data file and combination method according to the scenario requirements to accelerate the loading time of subsequent repeated calls.
[0062] The communication bus 304 is used for the communication of the above electronic device. It includes but is not limited to the off-chip PCIE (peripheral component interconnect express) bus, the on-chip AXI (Advanced eXtensible Interface) bus, etc. For the convenience of representation, only a thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0063] The communication interface 305 is used for the communication between the above device and other external modules. It includes but is not limited to optical fiber interfaces, USB interfaces, network cable interfaces, etc.
[0064] It should be noted that the above computing accelerator can be a heterogeneous processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a neural network processing unit (NPU), a graphics processing unit (GPU), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0065] In a specific embodiment, the system is implemented using a Rockchip RK3588 development board in cooperation with an AI computing card with a PCIE bus interface. The Rockchip RK3588 development board mainly includes an RK3588 SoC chip. The CPU, as the processor 301, can mainly complete steps S1 and S2 of the above method; the GPU, NPU, and AI computing card, as the computing accelerators 302, together complete the processes of steps S3, S4, S5, and S6 of the above method; the on-board DDR memory and Flash serve as the memory 303; the PCIE interface serves as the communication bus 304; the on-board USB interface and network interface serve as the communication interfaces 305. This system can implement the object detection function based on YOLO, and improve and optimize performance indicators such as recognition accuracy and energy efficiency through the above method.
[0066] The technical solution described in the embodiment of the present invention is applicable to various electronic devices. Specifically, these electronic devices may include, but are not limited to: desktop computers, laptops, smart mobile devices, servers, etc. There is no specific limitation here, and all electronic devices capable of implementing the present invention are within the protection scope of the present invention.
Claims
1. A non - quantitative calculation method based on randomized key bits and multi - algorithm scheduling, characterized in that, It includes the following steps; S1: Extract the parameters and data of non-quantitative calculations that need to be optimized and store them as the first data binary bitstream file; That is, extract the instructions and data parts from the compiled binary executable file or the data file loaded during operation of the non-quantitative calculation and store them as the first data binary bitstream file; S2: Perform key bit search processing on the extracted first data binary bitstream file; randomly select one or more key bits for soft error injection of single-event effects to obtain the second data binary bitstream file; S3: Evaluate the second data binary bitstream file; Including speed, required computing power, accuracy, applicable scenarios, and hardware implementation cost; and combine with the reinforcement learning algorithm to learn between the randomized positions and effects, and give inferences, and continuously iterate until the indicators meet the set expected range; S4: Sort the various indicators of all the multiple second data binary bitstream files obtained in S3 according to the performance indicators of performance, accuracy, energy efficiency, and applicable scenarios, balance various performances and losses, and store the sorted multiple second data binary bitstream files in the form of a data table to obtain a data loading table; S5: According to the content of the loading table, load the calculation weights and calculation data of the second data binary bitstream file applicable to the current deployment scenario and operating state into the loading module, and the loading module generates a second data loading table; S6: During operation, the central control model assigns tasks to the second data binary bitstream files of multiple non-quantitative algorithms in the loading module under different scenarios, different inputs, and operating states, and changes their input and output weights; S7: Store the sorted multiple second data binary bitstream files in S4, the second data loading table generated by the loading module, and the task assignment and weight parameter tables of the central control module under different operating states, inputs, and scenarios.
2. The non-quantitative calculation method based on randomized key bits and multi-algorithm scheduling according to claim 1, wherein In S1, key bit search operations will be performed on the algorithms and data of non-quantitative calculations, that is, by analyzing the data, mark the data bits that have a greater impact on the effect, and then extract and save these key bits as the first data binary bitstream file to complete the operation of extracting parameters and data; Among them, the algorithms and data of non-quantitative calculations include neural network model algorithms and model parameters, data fitting algorithms, and big data analysis algorithms; the first data binary bitstream file is the instruction and data parts in the compiled binary executable file or the data file loaded during operation of the non-quantitative calculation.
3. The non - quantitative calculation method based on randomized key bits and multi - algorithm scheduling according to claim 1, characterized in that In S2, the key bit refers to the important key parameter and data position in the first data binary bitstream file, corresponding to the binary number at this position in the first data binary bitstream file. Perform a flip operation on one or more bits of the binary number at this position, and this operation brings randomness to the important key weight parameters of the first data binary bitstream file; When performing a single-bit optimization operation, the binary data of the key bit will be flipped, that is, the negation operation, 1 bit changes from "0" to "1" or from "1" to "0". When performing an n-bit optimization operation, the binary data of the key bit will be flipped by n bits.
4. The non - quantitative calculation method based on randomized key bits and multi - algorithm scheduling according to claim 1, wherein In S3, reinforcement learning means that at each time step, it will select key bits for optimization, use the reward function composed of metric changes to update its parameters, and obtain the globally optimal random key bits after multiple iterations; The first step of using reinforcement learning is to set the initial key bits and randomization strategy, and define the evaluation reward function; the second step is that the reinforcement learning algorithm operates on the current state to obtain a single-step result; the third step is to execute the data file after the operation to obtain different change effects; the fourth step is to obtain a new state and reward according to the evaluation reward function, and the fifth step is to adjust the operation strategy according to the state and reward; repeat steps two to five to obtain the globally optimal random key bits.
5. The non - quantitative calculation method based on randomized key bits and multi - algorithm scheduling according to claim 4, wherein In S4, since multiple second data binary bitstream files are generated in S3, and the metrics optimized for each file are different, Store these second data binary bitstream files and the corresponding change effects to obtain a data loading table. This loading table stores information on the performance, accuracy, energy efficiency, and applicable scenarios of each second data binary bitstream file, performs a search operation from high to low according to different items, and enables each performance item to be sorted and searched with a certain priority.
6. The non-quantitative calculation method based on randomized key bits and multi-algorithm scheduling according to claim 5, characterized in that In S5, the loading module selects and loads the corresponding second data binary files according to the loading table obtained in S4 and the current task scenario, that is, solves the combination of second data binary files with different performance metrics to meet or exceed the set expected performance and requirements.
7. The non - quantitative calculation method based on randomized key bits and multi - algorithm scheduling according to claim 6, characterized in that, In S6, the central control model determines which part of the second data binary bitstream files and algorithms should be activated according to the input data; the sub-algorithms of each different random key bit are uniformly scheduled and output by superimposing different weights through the central control model; First, the loading module selects and loads multiple non-quantitative calculation algorithms with different speeds, precisions, computing power requirements, and applicable scenarios. The calculation algorithms can be the same or different. Then, the central control model redistributes the weights and the input data flow direction. Finally, the output weights after redistribution are added up for output to obtain better comprehensive performance.
8. An optimization device for a non-quantitative calculation method based on randomized key bits and multi-algorithm scheduling for implementing the method according to any one of claims 1-7, characterized in that, Including: An extraction module that extracts important calculation parameters or calculation data from each non-quantitative calculation to be optimized, and saves them as the first data binary bitstream file before optimization; An optimization module that performs random bit operations on each important parameter bit to obtain second data binary bitstream files of calculation parameters or data with different speeds, precisions, and applicable scenarios; And uses the reinforcement learning algorithm to learn and analyze the effects of the key bits to further find the globally optimal random position of the key bits; A loading module that sorts the various metrics of the second data binary bitstream files in combination with the calibration of relevant performance metrics during runtime, balances various performances and losses, and loads the calculation weights and calculation data of the applicable second data binary bitstream files; generates a second data loading table; The central control module assigns tasks to multiple second data binary bitstream files in the loading module under different scenarios, different inputs, and operating states. Depending on the different operating states and inputs, each second profile will change according to its characteristics and applicable scenarios when receiving an input, and its output will also be assigned different weights and then summed up to form the total output of the system; The storage module stores multiple sorted second data binary bitstream files, the second data loading table generated by the loading module, and the task assignment and weight parameter tables of the central control module under different operating states, inputs, and scenarios, to avoid reloading and configuring the loading module and the central control module during the startup initialization process under the same configuration and scenario.
Citation Information
Patent Citations
Zero-overhead switching multithread processor and thread switching method thereof
CN101763285A
Non-quantitative calculation design optimization method and device
CN116976247A