Operator precision verification method and device, chip, equipment, medium and product

By building programmable and standard computing unit IP in general computing chips and self-checking of accuracy in actual user computing scenarios, the problem of low operator accuracy verification coverage in the existing technology is solved, and wider and more effective verification is achieved, improving chip reliability.

CN119669030APending Publication Date: 2025-03-21SUIYUAN INTELLIGENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411736622.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-29
Publication Date
2025-03-21

AI Technical Summary

Technical Problem

In the prior art, the application scenarios of operator accuracy verification have low coverage, poor breadth, low effectiveness and low chip reliability.

Method used

The programmable computing unit IP and standard computing unit IP are built in the general computing chip, and the user operator library and standard operator library are pre-configured. By loading user computing tasks in the target computing scenario, real-time task data is extracted, and based on this data, the programmable computing unit IP and standard computing unit IP are called in the target interface to obtain the accuracy self-checking result of the user operator.

Benefits of technology

The comprehensive accuracy verification of user operators is realized, the broadness and effectiveness of operator accuracy verification is improved, and the reliability of general computing chips is enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119669030A_ABST
    Figure CN119669030A_ABST
Patent Text Reader

Abstract

The invention discloses an operator precision verification method and device, a general-purpose computing chip, equipment and a medium. The method comprises the steps that a user computing task instruction in a computing scene is loaded and executed; when a calling instruction for a target interface of a target user operator in the user operator library is executed, real-time task data are extracted, and the target interface is called; based on the real-time task data, obtaining a precision self-checking result according to a first execution result of the programmable computing unit IP on the target user operator and a second execution result of the standard computing unit IP on the target standard operator; and returning the first execution result and the precision self-checking result, and continuing to execute the next task instruction. According to the method, the correctness of the user operator is verified based on user input by synchronously executing the standard operator through the standard calculation unit IP, so that the test process fully covers any user scene, the identification of potential problems is realized, the universality and effectiveness of operator precision verification are improved, and the reliability of a chip is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of artificial intelligence chip technology, and in particular to a method and device for verifying operator precision, a general-purpose computing chip, an electronic device, a computer-readable storage medium, and a computer program product. Background Art

[0002] In the field of artificial intelligence chips, chips are programmable, and developers implement various operators based on the instruction set provided by the chip to achieve various computing functions (also known as operator semantics). In order to ensure the correctness of instructions, chip design execution, or operator functions, it is usually necessary to compare the calculation results of the implemented operators with the true value to verify the operator accuracy.

[0003] In the prior art, the verification methods of operator accuracy can be divided into: operator-level accuracy verification and framework-level accuracy verification. Both provide the same input to the operator interface or the operator interface and the true value interface of the framework, obtain the operator output and the true value result, and compare the correctness of the two.

[0004] However, both accuracy verification methods have the following limitations: the test cases cannot fully cover any user scenario, may trigger problems during the user use phase of the chip, and cannot complete the accuracy verification of user data in advance. In addition, the framework-level accuracy verification method also has the disadvantages of large adaptation workload and long time consumption. Summary of the invention

[0005] The present invention provides a method and device for verifying operator precision, a general-purpose computing chip, an electronic device, a computer-readable storage medium, and a computer program product to solve the problems of low coverage of application scenarios of operator precision verification, poor extensiveness, low effectiveness, and low chip reliability.

[0006] According to one aspect of an embodiment of the present invention, a method for checking operator precision is provided, which is applied to a general computing chip, wherein a programmable computing unit IP (Intellectual Property Core) and a standard computing unit IP are built in the general computing chip, and a user operator library adapted to the programmable computing unit IP and a standard operator library adapted to the standard computing unit IP are pre-configured in the general computing chip, and the method comprises:

[0007] Load the user computing tasks under the target computing scenario and execute various task instructions matching the user computing tasks;

[0008] When executing a call instruction to a target interface of a target user operator in a user operator library, extracting real-time task data in the call instruction, and calling the target interface based on the real-time task data;

[0009] In the target interface, according to a first execution result of the target user operator by the programmable computing unit IP based on the real-time task data, and a second execution result of the target standard operator matching the target user operator by the standard computing unit IP based on the real-time task data, a precision self-check result of the target user operator is obtained;

[0010] The first execution result and the precision self-check result are returned through the target interface, and the next task instruction in the user computing task is continued to be executed.

[0011] According to another aspect of an embodiment of the present invention, there is also provided an operator precision verification device, which is applied to a general computing chip, wherein a programmable computing unit IP and a standard computing unit IP are built in the general computing chip, and a user operator library adapted to the programmable computing unit IP and a standard operator library adapted to the standard computing unit IP are pre-configured in the general computing chip, and the device comprises:

[0012] A loading execution module is used to load the user computing task in the target computing scenario and execute various task instructions matching the user computing task;

[0013] The interface and calling module is used to extract the real-time task data in the calling instruction when executing the calling instruction of the target interface of the target user operator in the user operator library, and call the target interface based on the real-time task data;

[0014] An automatic verification module is used to obtain a precision self-verification result of the target user operator in the target interface according to a first execution result of the target user operator by the programmable computing unit IP based on the real-time task data and a second execution result of the target standard operator matched with the target user operator by the standard computing unit IP based on the real-time task data;

[0015] The verification result returning module is used to return the first execution result and the precision self-verification result through the target interface, and continue to execute the next task instruction in the user computing task.

[0016] According to another aspect of an embodiment of the present invention, there is also provided a general computing chip, comprising a scheduling executor, a programmable computing unit intellectual property core IP, and a standard computing unit IP;

[0017] Among them, a user operator library adapted to the programmable computing unit IP and a standard operator library adapted to the standard computing unit IP are pre-configured in the general computing chip;

[0018] The programmable computing unit IP is used to execute operator implementation of user operators in the user operator library;

[0019] The standard computing unit IP is used to execute the operator implementation of the standard operator in the standard operator library;

[0020] The scheduling executor is used to execute the operator precision verification method described in any embodiment of the present invention.

[0021] According to another aspect of the embodiments of the present invention, an electronic device is provided, and the electronic device includes: a general-purpose computing chip as described in any embodiment of the present invention.

[0022] According to another aspect of an embodiment of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the method for checking the operator precision described in any embodiment of the present invention when executing the computer instructions.

[0023] According to another aspect of an embodiment of the present invention, a computer program product is provided, including a computer program, which, when executed by a processor, implements the steps of the method for verifying the operator precision as described in any embodiment of the present invention.

[0024] The technical solution of the embodiment of the present invention is to load the user computing task in the target computing scenario and execute various task instructions matching the user computing task; when executing the call instruction of the target interface of the target user operator in the user operator library, extract the real-time task data in the call instruction, and call the target interface based on the real-time task data; in the target interface, according to the first execution result of the target user operator by the programmable computing unit IP based on the real-time task data, and the second execution result of the target standard operator matching the target user operator by the standard computing unit IP based on the real-time task data, obtain the precision self-check result of the target user operator; return the first execution result and the precision self-check result through the target interface, and continue to execute the next task instruction in the user computing task. By creatively adding standard computing unit IP to general-purpose computing chips, in actual user computing scenarios where programmable computing unit IP is called to execute user operators, the standard computing unit IP can be synchronously called based on the same user input to execute standard operators and verify the correctness of user operators. This allows the testing process to fully cover any user scenario, efficiently realizes the detection of user operators and the identification of potential problems in general-purpose computing chips, improves the breadth and effectiveness of operator precision verification, and can improve the reliability of general-purpose computing chips to a certain extent.

[0025] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0027] Figure 1 This is a flow chart of a method for checking operator accuracy provided according to Embodiment 1 of the present invention;

[0028] Figure 2 is a flowchart of another method for checking operator accuracy provided according to Embodiment 2 of the present invention;

[0029] Figure 3 This is a self-checking flow chart of operator accuracy applicable to the embodiment of the present invention;

[0030] Figure 4 It is a schematic diagram of the interaction between software and hardware of an operator precision self-checking applicable to an embodiment of the present invention;

[0031] Figure 5 2 is a schematic diagram of the structure of an operator precision verification device provided according to Embodiment 3 of the present invention;

[0032] Figure 6 is a schematic diagram of the structure of a general computing chip provided according to Embodiment 4 of the present invention;

[0033] Figure 7 It is a structural schematic diagram of an electronic device for implementing the operator precision verification method of an embodiment of the present invention. DETAILED DESCRIPTION

[0034] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings 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 should fall within the scope of protection of the present invention.

[0035] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0036] Embodiment 1

[0037] Figure 1 This is a flow chart of a method for checking operator precision provided in the first embodiment of the present invention. This embodiment can be applied to the situation where a general-purpose computing chip performs synchronous operator precision checking on various user operators involved in a computing task during the execution of the user's actual computing task. The method can be executed by an operator precision checking device, which can be implemented in the form of hardware and / or software and can generally be configured in a general-purpose computing chip. Specifically, a programmable computing unit IP and a standard computing unit IP are built in the general-purpose computing chip, and a user operator library adapted to the programmable computing unit IP and a standard operator library adapted to the standard computing unit IP are pre-configured in the general-purpose computing chip.

[0038] Correspondingly, such as Figure 1 As shown, the method includes:

[0039] S110: Load the user computing task in the target computing scenario, and execute various task instructions matching the user computing task.

[0040] In the embodiments of the present invention, the target computing scenario can be specifically understood as a specific application scenario in which the user currently uses a general computing chip, such as the Internet of Things, high-performance computing, mobile computing, and industrial automation. In these target computing scenarios, the chip processes complex user computing tasks by executing matching task instructions, such as data preparation, computing configuration, resource management, monitoring and debugging, result processing, and data storage.

[0041] In other words, the operator precision verification method of the embodiment of the present invention occurs in the process of the general computing chip being shipped and configured by the actual user to perform the set computing task. Among them, the user computing task can be understood as a set binary executable file, which contains various task instructions. Each task instruction is used to implement a set function, such as data reading, function calling, or data storage.

[0042] S120 . When executing a call instruction to a target interface of a target user operator in a user operator library, extract the real-time task data in the call instruction, and call the target interface based on the real-time task data.

[0043] In the embodiment of the present invention, the operator can be specifically understood as: a code (such as an interface or an implementation corresponding to an interface) or a compiled machine code for implementing a computing function (operator semantics). The user operator library can be specifically understood as: a library containing a set of user-defined operators, and the user-defined operators are written to meet specific computing needs. The user operator library allows users to implement new operators or adjust existing operators through programming according to actual application scenarios to adapt to specific computing tasks. For example, in a deep learning framework, a user operator library may contain a customized neural network layer or activation function. The target user operator can be specifically understood as: an operator in the user operator library that matches the user computing task in the target computing scenario. The target interface can be specifically understood as: a standardized calling interface provided by the chip to the outside, which is a standard protocol or specification followed when the operator interacts with the chip IP, and is used to ensure compatibility and interaction between different hardware or software components.

[0044] That is, when developers write user computing tasks, they can use the various user operators in the user operator library to implement corresponding user operator functions. The specific usage method is to call the operator interface (API, Application Programming Interface) that matches the required user operator in the task instruction.

[0045] In a specific example, the general computing chip executes the task instructions contained in the user computing task in sequence. If the currently executed task instruction is a call instruction to interface B of user operator A, then user operator A is the target user operator and interface B is the target interface.

[0046] The actual task data can be understood as the input data that needs to be passed to the target user operator to perform the calculation. For example, if the target user operator is a matrix multiplication operator, the actual task data can be the left operand matrix and the right operand matrix used to perform the matrix multiplication calculation. Among them, the actual task data can be fixed data directly written into the call instruction, or it can be the result data obtained after the execution of the previous task instruction, or it can also be a combination of fixed data and result data, etc., and this embodiment does not limit this.

[0047] S130. In the target interface, according to a first execution result of the target user operator by the programmable computing unit IP based on the real-time task data, and a second execution result of the target standard operator matching the target user operator by the standard computing unit IP based on the real-time task data, obtain an accuracy self-verification result of the target user operator.

[0048] In the embodiment of the present invention, IP refers to a pre-designed circuit module with specific functions. The programmable computing unit IP can be specifically understood as: an IP that allows users to customize and modify hardware functions according to their own needs, that is, a programmable circuit that verifies the accuracy of the design by verifying the operator accuracy of the user operator in each embodiment of the present invention. The first execution result can be specifically understood as: the execution result calculated by calling the target user operator based on real-time task data in the programmable computing unit IP. The standard computing unit IP can be specifically understood as: a standardized computing unit with correct hardware design and correct hardware execution instruction process, which is equivalent to the standard computing unit IP used to generate true values ​​in the operator testing stage before the general computing chip leaves the factory, for example, some ideal state CPU (Central Processing Unit, central processing unit) IPs widely used in the field of operator testing.

[0049] The standard operators in the standard operator library can be specifically understood as: operators with correct software design that can be correctly executed by the standard computing unit. Furthermore, the target standard operator can be understood as a standard operator stored in the standard computing library, whose implemented functions are consistent with the target user operator. Among them, the standard operator library contains a library of standard operator sets. The second execution result can be specifically understood as: the execution result calculated by calling the target standard operator based on real-time task data in the standard computing unit IP.

[0050] Correspondingly, the first execution result can be understood as the test result obtained by calling the target user operator for calculation with the real-time task data as the current input, and the second execution result can be understood as the true value that the target user operator should output under the current input. By comparing the difference value between the first execution result and the second execution result, the precision self-verification result of the target user operator can be obtained. For example, by calculating the difference or ratio between the two and comparing it with the preset threshold, it can be determined whether the precision of the user operator meets the standard, and the detection of the user operator and the identification of potential problems of the programmable computing unit IP in the general computing chip can be realized. For example, the target user operator can be a custom convolutional neural network (CNN) operator implemented on the programmable computing unit IP, and the target standard operator can be an operator for realizing the same CNN operator function that runs correctly on a theoretically correct standard computing unit IP. Based on the real-time task data with the same input, the output difference of the two operators is calculated and compared with the set threshold. If the output difference is within the threshold range, it can be considered that the implementation of the target user operator and the design of the programmable computing unit IP are verified to be correct under the test based on the real-time task data.

[0051] In this embodiment, the process of obtaining the first execution result and the second execution result, as well as the process of obtaining the precision self-verification result are all implemented in the target interface. Through the above settings, it can be achieved that whenever a user operator is called and executed in the user's actual computing scenario, a precision check can be completed for the user operator based on the real-time task data transmitted in real time. The precision verification process of the user operator is creatively covered in any computing (business) scenario of the user, without the need for complex framework-level test adaptation, and also avoiding the potential errors and complexities that may be introduced by framework adaptation.

[0052] S140. Return the first execution result and the precision self-check result through the target interface, and continue to execute the next task instruction in the user computing task.

[0053] In this embodiment, considering that the general computing chip has been provided to the user to perform adapted user computing tasks, in order to ensure the normal execution of the user computing tasks, the target interface normally returns the first execution result of the programmable computing unit IP on the target user operator based on the real-time task data to ensure the continued execution of the user computing task.

[0054] Furthermore, the target interface synchronously returns the precision self-verification result so that the user of the general-purpose computing chip or the developer of the general-purpose computing chip can continue to verify the instructions, design execution or operator functions in the programmable computing unit IP.

[0055] That is, users can determine whether their independently developed user operator design meets the task requirements and make necessary adjustments accordingly. At the same time, chip suppliers can also identify possible problems in chip design through this process and perform chip maintenance and optimization accordingly. This two-way verification not only improves the performance and reliability of user operators, but also ensures the quality and stability of the chip itself.

[0056] The technical solution of the embodiment of the present invention is to load the user computing task in the target computing scenario and execute various task instructions matching the user computing task; when executing the call instruction of the target interface of the target user operator in the user operator library, extract the real-time task data in the call instruction, and call the target interface based on the real-time task data; in the target interface, according to the first execution result of the target user operator by the programmable computing unit IP based on the real-time task data, and the second execution result of the target standard operator matching the target user operator by the standard computing unit IP based on the real-time task data, obtain the precision self-check result of the target user operator; return the first execution result and the precision self-check result through the target interface, and continue to execute the next task instruction in the user computing task. By creatively adding standard computing unit IP to general-purpose computing chips, in actual user computing scenarios where programmable computing unit IP is called to execute user operators, the standard computing unit IP can be synchronously called based on the same user input to execute standard operators and verify the correctness of user operators. This allows the testing process to fully cover any user scenario, efficiently realizes the detection of user operators and the identification of potential problems in general-purpose computing chips, improves the breadth and effectiveness of operator precision verification, and can improve the reliability of general-purpose computing chips to a certain extent.

[0057] Embodiment 2

[0058] Figure 2 A flowchart of another operator precision verification method provided in Embodiment 2 of the present invention. This embodiment is a refinement of the operation of obtaining a precision self-verification result of the target user operator in the target interface according to the first execution result of the target user operator by the programmable computing unit IP based on real-time task data, and the second execution result of the target standard operator matching the target user operator by the standard computing unit IP based on real-time task data in the target interface in the above embodiment, specifically including: in the target interface, performing the following operations in sequence: detecting whether the current task environment is in an automatic operator precision verification mode, and when determining that it is in an automatic operator precision verification mode, continuing to check whether the standard operator library stores a target standard operator matching the target user operator; if so, obtaining a first execution result of the target user operator by the programmable computing unit IP based on real-time task data, and obtaining a second execution result of the target standard operator by the standard computing unit IP based on real-time task data; comparing the first execution result and the second execution result to obtain a precision self-verification result of the target user operator.

[0059] Correspondingly, such as Figure 2 As shown, the method includes:

[0060] S210: Load the user computing task in the target computing scenario, and execute various task instructions matching the user computing task.

[0061] S220 . When executing a call instruction to a target interface of a target user operator in a user operator library, extract the real-time task data in the call instruction, and call the target interface based on the real-time task data.

[0062] S230. In the target interface, detect whether the current task environment is in the operator precision automatic verification mode, and when it is determined that it is in the operator precision automatic verification mode, continue to check whether the standard operator library stores a target standard operator that matches the target user operator.

[0063] In the embodiment of the present invention, the automatic operator precision verification mode can be specifically understood as: when executing a call instruction to the target interface of the target user operator in the user operator library, a mode is used to determine whether the general computing chip executes the operator precision verification method in the embodiment of the present invention.

[0064] Specifically, in the target interface, it is possible to detect whether the current task environment is in the automatic operator precision verification mode by checking a specific environment variable or flag. For example, when a specific environment variable is set to 1, it means that the automatic operator precision verification mode is turned on; if the environment variable is not configured or the specific environment variable is set to 0, the automatic operator precision verification mode is turned off.

[0065] Alternatively, you can also check whether a specific flag or configuration item is added to the code to determine whether it is in the operator precision automatic verification mode. When it is determined that it is in the operator precision automatic verification mode, continue to check whether the standard operator library stores the target standard operator that matches the target user operator. For example, you can query whether there is a standard operator with the same name or a similar name as the target user operator by accessing the API interface of the standard operator library.

[0066] S240: If yes, obtain a first execution result of the programmable computing unit IP on the target user operator based on the real-time task data, and obtain a second execution result of the standard computing unit IP on the target standard operator based on the real-time task data.

[0067] S250 , comparing the first execution result and the second execution result to obtain a precision self-check result of the target user operator.

[0068] S260. Return the first execution result and the precision self-check result through the target interface, and continue to execute the next task instruction in the user computing task.

[0069] Specifically, when the standard operator library stores a target standard operator that matches the target user operator, a first execution result of the programmable computing unit IP on the target user operator based on the real-time task data is obtained, and a second execution result of the standard computing unit IP on the target standard operator based on the real-time task data is obtained, and the first execution result and the second execution result are compared.

[0070] The technical solution of the embodiment of the present invention provides users with flexibility in use by establishing an automatic verification mode and detecting whether there is a matching standard operator in the standard operator library to turn on or off the operator precision verification function. Users can choose whether to perform operator precision verification as needed to balance the use of computing resources and the requirements for result accuracy.

[0071] Optionally, based on the above embodiments, detecting whether the current task environment is in the operator precision automatic verification mode may include:

[0072] Among various environment variables of the current task environment, identify the operator precision self-checking mode enabling variable, and detect whether the variable value of the operator precision self-checking mode enabling variable is enabled;

[0073] If enable is detected, it is determined that the mode is in the automatic operator precision verification mode; otherwise, it is determined that the mode is not in the automatic operator precision verification mode.

[0074] In the embodiment of the present invention, the environment variable refers to a variable in the operating system used to store information about the operating system environment, such as file paths, system configurations, and user preferences. The operator precision self-checking mode enabling variable can be specifically understood as: an environment variable used to identify whether the general-purpose computing chip is in the self-checking mode. For example, by detecting whether the variable value of the operator precision self-checking mode enabling variable is 1, it can be determined whether the general-purpose computing chip is in the self-checking mode.

[0075] Specifically, among the various environment variables of the current task environment, the operator precision self-checking mode enabling variable is identified, and the variable value of the operator precision self-checking mode enabling variable is detected to be enabled. For example, when the variable value is 1, it indicates that the operator precision self-checking mode is enabled, and 0 indicates that it is disabled. If the variable value of the enabling variable is detected to be 1, it is determined that the general-purpose computing chip is in the operator precision automatic checking mode; otherwise, it is determined that the general-purpose computing chip is not in the operator precision automatic checking mode. There is no need to modify the code or configuration file, only the enabling value of the environment variable needs to be changed to realize the control of whether the general-purpose computing chip is in the enabled state, thereby improving the flexibility of the chip operator precision checking.

[0076] Optionally, based on the above embodiments, obtaining a first execution result of a programmable computing unit IP on a target user operator based on real-time task data, and obtaining a second execution result of a standard computing unit IP on a target standard operator based on real-time task data may include:

[0077] Obtain a first operator implementation that matches the target user operator, and execute the first operator implementation based on the real-time task data on the programmable computing unit IP to obtain a first execution result;

[0078] A second operator implementation matching the target standard operator is obtained, and the second operator implementation is executed on the standard computing unit IP based on the real-time task data to obtain a second execution result.

[0079] In the embodiment of the present invention, the first operator implementation can be specifically understood as: the specific code implementation of the target user operator, that is, the target user operator implementation. The target user operator implementation contains the detailed logic and algorithm of the target user operator, and is the actual running code of the target user operator, ensuring that the target user operator can perform the predetermined tasks in actual applications. The second operator implementation can be specifically understood as: the specific code implementation of the target standard operator, that is, the target standard operator implementation, which is provided by the developer of the framework or standard operator library. The target standard operator implementation is optimized and can run efficiently in different hardware and software environments. The target standard operator implementation provides the actual calculation logic of the target standard operator, so that users can directly use these target standard operators.

[0080] Specifically, the interface and specifications of each operator are defined through the target user operator and the target standard operator, and the specific code implementation of these operators is provided through the target user operator implementation and the target standard operator implementation, realizing hierarchical functional definition, i.e., the high-level behavior of the operator and the low-level details of the implementation operator, which improves the modularity and reusability of the code and enables the operators to be flexibly used in different environments and applications.

[0081] Further, based on the above embodiments, after detecting whether the target interface is in the operator precision automatic verification mode, the following may be further included:

[0082] If it is determined in the target interface that it is not in the operator precision automatic verification mode, only the first execution result of the programmable computing unit IP on the target user operator based on the real-time task data is obtained;

[0083] The first execution result is returned through the target interface, and the next task instruction in the user computing task is continued to be executed.

[0084] Specifically, after detecting whether it is in the automatic verification mode of operator precision in the target interface, if it is determined that it is not in the automatic verification mode of operator precision, only the first execution result of the programmable computing unit IP on the target user operator based on the real-time task data is obtained, and the first execution result is returned through the target interface, and the next task instruction in the user computing task is continued to be executed. By executing the target user operator with the automatic verification mode of operator precision turned off, additional computing overhead can be avoided and the requirements of various application scenarios can be adapted. For example, the following application scenarios: saving processing power and memory usage in a resource-constrained computing environment, improving system performance and avoiding additional computing overhead; since the target user operator has passed the verification of the operator precision provided by the embodiment of the present invention, there is no need to re-verify, and the target user operator can be directly executed; in the early stage of the user using a general-purpose computing chip for development, in order to quickly iterate and solve other problems, the user will choose to temporarily turn off the automatic verification mode of operator precision.

[0085] Further, based on the above embodiments, after continuing to check in the target interface whether the standard operator library stores a target standard operator matching the target user operator, the method further includes:

[0086] If it is determined in the target interface that the standard operator library does not store a target standard operator matching the target user operator, only a first execution result of the programmable computing unit IP on the target user operator based on the real-time task data is obtained;

[0087] The first execution result is returned through the target interface, and the next task instruction in the user computing task is continued to be executed.

[0088] Specifically, after continuing to check in the target interface whether the standard operator library stores the target standard operator that matches the target user operator, if it is determined that the standard operator library does not store the target standard operator that matches the target user operator, only the first execution result of the programmable computing unit IP on the target user operator based on the real-time task data is obtained, the first execution result is returned through the target interface, and the next task instruction in the user computing task is continued to be executed. By checking whether the matching target standard operator is stored, and after confirming that it is not stored, the operator precision check is not performed, but the target user operator is executed and the result is returned, so as to avoid potential errors or abnormal interruptions to the computing process caused by the lack of matching standard operators, improve the effectiveness of the operator precision check, and improve the reliability of the general computing chip.

[0089] Specific application scenarios

[0090] In order to ensure the correctness of instructions, chip design and operator functions, it is usually necessary to compare the calculation results of the operator with the true value. Common comparison methods include: operator-level testing and framework-level testing. However, since the pre-written test cases cannot cover the user's scenarios, the operator quality cannot cover the user's scenarios, which may trigger problems on the user side and fail to achieve accuracy verification of user data. In addition, the framework supports custom operators. Custom operators only have true value programs corresponding to operator-level tests, but the framework layer does not have corresponding true values. In actual applications, user behaviors are all based on the operation of the framework interface. Due to the lack of true values, it is impossible to perform accuracy verification based on the framework interface at the framework layer. Considering the large number of frameworks and the user's private frameworks, the workload of adapting operators to the framework layer is relatively complex, and it is impossible to achieve accurate adaptation, resulting in low application scenario coverage, poor breadth, low effectiveness and low chip reliability of operator accuracy verification.

[0091] To solve the above problem, an embodiment of the present invention proposes a self-checking method for operator accuracy, which has the following characteristics:

[0092] 1. Taking advantage of the characteristics of heterogeneous chips, the CPUGolden operator that conforms to the operator semantics is implemented on the CPU inside the chip (including but not limited to the advanced reduced instruction set machine processor ARM CPU, or reduced instruction set computer-fifth generation processor RISC-VCPU) (equivalent to the standard operator of the standard computing unit IP mentioned above, where the CPU is equivalent to the standard computing unit IP).

[0093] 2. The developer writes an operator library for the programmable chip (such as a standard operator library) and provides an operator calling interface, such as op_A.

[0094] 3. The developer writes a Golden operator that conforms to the operator semantics and provides an operator calling interface, such as op_A_cpu_golden (equivalent to the standard operator mentioned above).

[0095] 4. The developer writes an environment variable for the operator precision self-verification mode, for example, OP_ACC_SELF_EVALUATION (equivalent to the enable variable mentioned above).

[0096] 5. When the chip is operating normally, it loads the user computing task under the target computing scenario and executes various task instructions matching the user computing task. When the instruction to call the target interface of the target user operator in the user operator library is executed, op_A is called.

[0097] 6. When checking the operator precision self-verification, set the environment variable OP_ACC_SELF_EVALUATION to true. If it is true, it means that the operator precision self-verification is performed.

[0098] Figure 3 is a self-checking flow chart of an operator accuracy applicable to the embodiment of the present invention, such as Figure 3 As shown, the method includes:

[0099] 1. The user calls the operator interface op_A (equivalent to the target interface mentioned above).

[0100] 2. Check in the operator interface op_A that it is in the operator accuracy self-checking mode.

[0101] 3. In the operator interface op_A, check whether the op_A_cpu_golden interface (equivalent to the target standard operator mentioned above) exists. If it does not exist, execute 10. If it does exist, execute 4.

[0102] 4. The operator interface op_A calls the implementation of op_A op_A_impl (equivalent to the target user operator implementation mentioned above).

[0103] 5. The Golden implementation of op_A, op_A_cpu_golden (equivalent to the target standard operator implementation mentioned above), is called in the operator interface op_A.

[0104] 6. The operator interface op_A obtains the output of op_A_impl.

[0105] 7. Get the output of op_A_cpu_golden in the operator interface op_A.

[0106] 8. The operator interface op_A compares the output of op_A_cpu_golden with the output of op_A_impl.

[0107] 9. The operator interface outputs the result of the precision self-check.

[0108] 10. The operator interface returns the output of op_A_impl.

[0109] 11. Carry out the subsequent process normally, that is, continue to execute the next task instruction in the user computing task.

[0110] Figure 4 is a schematic diagram of the interaction between software and hardware for operator precision self-checking applicable to an embodiment of the present invention, such as Figure 4 As shown:

[0111] The general computing chip proposed in the embodiment of the present invention may specifically include a scheduling executor, a neural network processor (NPU) and a central processing unit. The NPU is equivalent to the programmable computing unit mentioned above, which is used to execute the target user operator implementation op_A_impl based on the real-time task data, and the CPU is equivalent to the standard computing unit mentioned above, which is used to execute the target standard operator implementation op_A_golden (such as op_A_cpu_golden) based on the real-time task data. The self-checking method of the operator accuracy proposed in the embodiment of the present invention is implemented by scheduling the corresponding NPU and CPU by the scheduler.

[0112] The technical solution of the embodiment of the present invention utilizes the heterogeneous characteristics of the chip to allow the operator library to automatically perform correctness verification based on various user inputs, covering any user scenario, and does not require the upper-level framework to adapt to custom operators. Users can independently perform operator correctness verification in actual business scenarios according to actual development and testing needs in actual business scenarios, which can discover potential problems in advance and reduce unknown problems during actual online operation, thereby improving the breadth and effectiveness of operator precision verification and improving the reliability of the chip.

[0113] Embodiment 3

[0114] Figure 5 This is a schematic diagram of the structure of an operator precision verification device provided in the third embodiment of the present invention. The device is applied to a general computing chip, which has a programmable computing unit IP and a standard computing unit IP built in the general computing chip. The general computing chip is pre-configured with a user operator library adapted to the programmable computing unit IP and a standard operator library adapted to the standard computing unit IP. Figure 5 As shown, the device includes: a loading and executing module 510, an interface and calling module 520, an automatic verification module 530 and a verification result returning module 540.

[0115] A loading and executing module 510 is used to load the user computing task in the target computing scenario and execute various task instructions matching the user computing task;

[0116] The interface and calling module 520 is used to extract the real-time task data in the calling instruction when executing the calling instruction of the target interface of the target user operator in the user operator library, and call the target interface based on the real-time task data;

[0117] The automatic verification module 530 is used to obtain the accuracy self-verification result of the target user operator in the target interface according to the first execution result of the programmable computing unit IP on the target user operator based on the real-time task data and the second execution result of the standard computing unit IP on the target standard operator matching the target user operator based on the real-time task data;

[0118] The verification result returning module 540 is used to return the first execution result and the precision self-verification result through the target interface, and continue to execute the next task instruction in the user computing task.

[0119] The technical solution of the embodiment of the present invention is to load the user computing task in the target computing scenario and execute various task instructions matching the user computing task; when executing the call instruction of the target interface of the target user operator in the user operator library, extract the real-time task data in the call instruction, and call the target interface based on the real-time task data; in the target interface, according to the first execution result of the target user operator by the programmable computing unit IP based on the real-time task data, and the second execution result of the target standard operator matching the target user operator by the standard computing unit IP based on the real-time task data, obtain the precision self-check result of the target user operator; return the first execution result and the precision self-check result through the target interface, and continue to execute the next task instruction in the user computing task.

[0120] By creatively adding standard computing unit IP to general-purpose computing chips, in actual user computing scenarios where programmable computing unit IP is called to execute user operators, the standard computing unit IP can be synchronously called based on the same user input to execute standard operators and verify the correctness of user operators. This allows the testing process to fully cover any user scenario, efficiently realizes the detection of user operators and the identification of potential problems in general-purpose computing chips, improves the breadth and effectiveness of operator precision verification, and can improve the reliability of general-purpose computing chips to a certain extent.

[0121] Based on the above embodiments, the automatic verification module 530 is specifically used for:

[0122] On the target interface, perform the following operations in sequence:

[0123] Detect whether the current task environment is in the operator precision automatic verification mode, and if it is determined to be in the operator precision automatic verification mode, continue to check whether the standard operator library stores the target standard operator matching the target user operator;

[0124] If so, obtain a first execution result of the programmable computing unit IP on the target user operator based on the real-time task data, and obtain a second execution result of the standard computing unit IP on the target standard operator based on the real-time task data;

[0125] The first execution result and the second execution result are compared to obtain the precision self-check result of the target user operator.

[0126] Optionally, based on the above embodiments, the automatic verification module 530 may include: an enabling detection unit, a first determining unit and a second determining unit.

[0127] The enable detection unit is used to identify the operator precision self-checking mode enable variable among various environment variables of the current task environment, and detect whether the variable value of the operator precision self-checking mode enable variable is enabled;

[0128] A first determining unit, configured to determine that the system is in an automatic operator precision verification mode if enabling is detected;

[0129] The second determination unit is used to determine that the mode is not the automatic operator precision verification mode if the enable is not detected.

[0130] Optionally, based on the above embodiments, the automatic verification module 530 may include: a first result acquisition unit and a second result acquisition unit.

[0131] A first result acquisition unit is used to acquire a first operator implementation that matches the target user operator, and execute the first operator implementation based on the real-time task data on the programmable computing unit IP to obtain a first execution result;

[0132] The second result acquisition unit is used to acquire a second operator implementation that matches the target standard operator, and execute the second operator implementation based on the real-time task data on the standard computing unit IP to obtain a second execution result.

[0133] Further, based on the above embodiments, the automatic verification module 530 may further include: an out-of-mode result execution unit and an out-of-mode result return unit.

[0134] An out-of-mode result acquisition unit, configured to, after detecting whether the target interface is in the operator precision automatic verification mode, acquire only the first execution result of the programmable computing unit IP on the target user operator based on the real-time task data if it is determined that the target interface is not in the operator precision automatic verification mode;

[0135] The out-of-mode result returning unit is used to return the first execution result through the target interface and continue to execute the next task instruction in the user computing task.

[0136] Further, based on the above embodiments, the automatic verification module 530 may further include: a result acquisition unit and a result return unit.

[0137] A result acquisition unit, configured to, after continuing to check in the target interface whether the standard operator library stores a target standard operator matching the target user operator, if it is determined in the target interface that the standard operator library does not store the target standard operator matching the target user operator, only acquire a first execution result of the programmable computing unit IP on the target user operator based on the real-time task data;

[0138] The result returning unit is used to return the first execution result through the target interface and continue to execute the next task instruction in the user computing task.

[0139] The operator precision verification device provided in the embodiment of the present invention can execute the operator precision verification method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.

[0140] In the technical solution of the present disclosure, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0141] Embodiment 4

[0142] Figure 6 This is a schematic diagram of the structure of a general computing chip provided by the fourth embodiment of the present invention. Figure 6 As shown, the general computing chip includes: a scheduling executor, a programmable computing unit IP and a standard computing unit IP. Among them, a user operator library adapted to the programmable computing unit IP and a standard operator library adapted to the standard computing unit IP are pre-configured in the general computing chip.

[0143] The programmable computing unit IP is used to execute operator implementation of user operators in the user operator library.

[0144] The standard computing unit IP is used to execute operator implementation of standard operators in the standard operator library.

[0145] The scheduling executor is used to execute the operator precision verification method as described in any one of the embodiments of the present invention.

[0146] Specifically, a user operator library adapted to the programmable computing unit IP and a standard operator library adapted to the standard computing unit IP are pre-configured in the general computing chip. Among them, the user operator library contains a series of operators adapted to the programmable computing unit IP (such as code or compiled machine code that implements computing functions). These operators are designed to meet specific user needs and allow users to write, add, modify or optimize according to their own application scenarios to adapt to different computing tasks and improve performance. The standard operator library contains a series of predefined and general operators adapted to the standard computing unit IP. The operators in the standard operator library are fixed and implement widely recognized and commonly used computing functions, such as mathematical operations, logical operations, and signal processing. These operators are pre-optimized, high-performance, and low-power, and their design and functions are standardized and easy to integrate into different chips.

[0147] The programmable computing unit IP is used to execute specific function codes written by the user according to the actual usage scenario to meet specific computing needs. The standard computing unit IP is used to execute operator codes that match the user-defined operator functions. These codes have been strictly verified and can be regarded as correct benchmarks. They can be used to verify the logical correctness of the user-defined operator test program and can be used to detect whether there are problems with the chip hardware. By comparing with these standard operators, the accuracy and reliability of the user-defined operators can be ensured, providing guarantee for the stable operation of the chip. The scheduling executor is used to execute the operator accuracy verification method as described in any one of the embodiments of the present invention.

[0148] The general computing chip of the embodiment of the present invention includes: a scheduling executor, a programmable computing unit IP and a standard computing unit IP, which can be used to execute specific function codes written by users according to actual usage scenarios, and can verify the logical correctness of the user-defined operator test program and detect whether there are problems with the chip hardware by executing operator codes matching the user-defined operator functions. The upper-level framework does not need to adapt to the user-defined operators to achieve comprehensive coverage of user scenarios, thereby improving the breadth and effectiveness of operator precision verification and improving the reliability of the chip.

[0149] Optionally, based on the above embodiments, the programmable computing unit IP is a neural network processor IP, and the standard computing unit IP is a central processing unit IP.

[0150] Specifically, the programmable computing unit IP can be a neural network processor (NPU) IP. Correspondingly, the user operator library contains a series of programmable operators that can support the application and optimization of deep learning and artificial intelligence, such as performing operations such as convolution, pooling, and activation functions. Users can implement new operators or adjust existing operators through programming according to their needs to adapt to specific neural network models and algorithms. In addition, the neural network processor IP supports a variety of neural network models and algorithm frameworks, has good compatibility and scalability, and also supports collaborative work with the central processing unit IP, flexibly and efficiently detecting the user's instruction program and identifying potential chip problems.

[0151] The standard computing unit IP can be a central processing unit (CPU) IP. Correspondingly, the standard operator library contains a series of standard and general operators, such as basic mathematical operations, logical operations and data processing, which are the basic elements in computer program design. The neural network processor IP and the central processing unit IP each have a dedicated operator library. The neural network processor IP focuses on executing the code or instructions written by the user according to the deep learning related tasks of the specific application scenario, while the central processing unit IP provides a place to execute the operator code that matches the user-defined operator function, to verify the logical correctness of the user-defined operator test program, and to detect whether there are problems with the chip hardware. The upper-level framework does not need to adapt to the user-defined operator to achieve comprehensive coverage of the user's scenario, which improves the breadth and effectiveness of the operator precision verification and improves the reliability of the chip. In addition, the central processing unit usually follows industry standards and has good security features and protection mechanisms, which helps to ensure interoperability between different devices and systems.

[0152] Embodiment 5

[0153] Figure 7 FIG. 2 shows a schematic diagram of the structure of an electronic device that can be used to implement an embodiment of the present invention. Figure 7 As shown, the electronic device includes a general computing chip 710 as described in any embodiment of the present invention.

[0154] The general computing chip 710 may include a scheduling executor, a programmable computing unit IP, and a standard computing unit IP. A user operator library adapted to the programmable computing unit IP and a standard operator library adapted to the standard computing unit IP are pre-configured in the general computing chip. The programmable computing unit IP is used to execute the operator implementation of the user operator in the user operator library. The standard computing unit IP is used to execute the operator implementation of the standard operator in the standard operator library. The scheduling executor is used to execute the operator accuracy verification method as described in any embodiment of the present invention, that is:

[0155] Load the user computing tasks under the target computing scenario and execute various task instructions matching the user computing tasks;

[0156] When executing a call instruction to a target interface of a target user operator in a user operator library, extracting real-time task data in the call instruction, and calling the target interface based on the real-time task data;

[0157] In the target interface, according to a first execution result of the target user operator by the programmable computing unit IP based on the real-time task data, and a second execution result of the target standard operator matching the target user operator by the standard computing unit IP based on the real-time task data, a precision self-check result of the target user operator is obtained;

[0158] The first execution result and the precision self-check result are returned through the target interface, and the next task instruction in the user computing task is continued to be executed.

[0159] In some embodiments, the method for checking operator precision may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit.

[0160] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0161] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0162] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).

[0163] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.

[0164] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims

1. A method for checking operator accuracy, characterized in that: Applied to a general computing chip, the general computing chip has a programmable computing unit intellectual property core IP and a standard computing unit IP built in, the general computing chip is pre-configured with a user operator library adapted to the programmable computing unit IP and a standard operator library adapted to the standard computing unit IP, the method comprises: Load the user computing tasks under the target computing scenario and execute various task instructions matching the user computing tasks; When executing a call instruction to a target interface of a target user operator in a user operator library, extracting real-time task data in the call instruction, and calling the target interface based on the real-time task data; In the target interface, according to a first execution result of the target user operator by the programmable computing unit IP based on the real-time task data, and a second execution result of the target standard operator matching the target user operator by the standard computing unit IP based on the real-time task data, a precision self-check result of the target user operator is obtained; The first execution result and the precision self-check result are returned through the target interface, and the next task instruction in the user computing task is continued to be executed.

2. The method according to claim 1, characterized in that In the target interface, according to a first execution result of the target user operator by the programmable computing unit IP based on the real-time task data, and a second execution result of the target standard operator matching the target user operator by the standard computing unit IP based on the real-time task data, a precision self-check result of the target user operator is obtained, including: On the target interface, perform the following operations in sequence: Detect whether the current task environment is in the operator precision automatic verification mode, and if it is determined to be in the operator precision automatic verification mode, continue to check whether the standard operator library stores the target standard operator matching the target user operator; If so, obtain a first execution result of the programmable computing unit IP on the target user operator based on the real-time task data, and obtain a second execution result of the standard computing unit IP on the target standard operator based on the real-time task data; The first execution result and the second execution result are compared to obtain the precision self-check result of the target user operator.

3. The method according to claim 2, characterized in that Check whether the current task environment is in the operator precision automatic verification mode, including: Among various environment variables of the current task environment, identify the operator precision self-checking mode enabling variable, and detect whether the variable value of the operator precision self-checking mode enabling variable is enabled; If enable is detected, it is determined that the mode is in the automatic operator precision verification mode; otherwise, it is determined that the mode is not in the automatic operator precision verification mode.

4. The method according to claim 2, characterized in that: Obtaining a first execution result of a programmable computing unit IP on a target user operator based on real-time task data, and obtaining a second execution result of a standard computing unit IP on a target standard operator based on real-time task data, including: Obtain a first operator implementation that matches the target user operator, and execute the first operator implementation based on the real-time task data on the programmable computing unit IP to obtain a first execution result; A second operator implementation matching the target standard operator is obtained, and the second operator implementation is executed on the standard computing unit IP based on the real-time task data to obtain a second execution result.

5. The method according to claim 2, characterized in that: After detecting whether the target interface is in the operator precision automatic verification mode, it also includes: If it is determined in the target interface that it is not in the operator precision automatic verification mode, only the first execution result of the programmable computing unit IP on the target user operator based on the real-time task data is obtained; The first execution result is returned through the target interface, and the next task instruction in the user computing task is continued to be executed.

6. The method according to claim 2, characterized in that After continuing to check in the target interface whether the standard operator library stores the target standard operator matching the target user operator, it also includes: If it is determined in the target interface that the standard operator library does not store a target standard operator matching the target user operator, only a first execution result of the programmable computing unit IP on the target user operator based on the real-time task data is obtained; The first execution result is returned through the target interface, and the next task instruction in the user computing task is continued to be executed.

7. A device for checking operator accuracy, characterized in that: Applied to a general computing chip, the general computing chip has a programmable computing unit IP and a standard computing unit IP built in, the general computing chip is pre-configured with a user operator library adapted to the programmable computing unit IP and a standard operator library adapted to the standard computing unit IP, the device comprises: A loading execution module is used to load the user computing task in the target computing scenario and execute various task instructions matching the user computing task; The interface and calling module is used to extract the real-time task data in the calling instruction when executing the calling instruction of the target interface of the target user operator in the user operator library, and call the target interface based on the real-time task data; An automatic verification module is used to obtain a precision self-verification result of the target user operator in the target interface according to a first execution result of the target user operator by the programmable computing unit IP based on the real-time task data and a second execution result of the target standard operator matched with the target user operator by the standard computing unit IP based on the real-time task data; The verification result returning module is used to return the first execution result and the precision self-verification result through the target interface, and continue to execute the next task instruction in the user computing task.

8. A general computing chip, characterized in that: Includes scheduling executor, programmable computing unit IP and standard computing unit IP; Among them, a user operator library adapted to the programmable computing unit IP and a standard operator library adapted to the standard computing unit IP are pre-configured in the general computing chip; The programmable computing unit IP is used to execute operator implementation of user operators in the user operator library; The standard computing unit IP is used to execute the operator implementation of the standard operator in the standard operator library; The scheduling executor is used to execute the operator precision verification method as described in any one of claims 1 to 6.

9. The method according to claim 8, characterized in that The programmable computing unit IP is the neural network processor IP, and the standard computing unit IP is the central processing unit IP.

10. An electronic device, characterized in that: The electronic device comprises: a general-purpose computing chip as described in claim 8 or 9.

11. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the operator precision verification method described in any one of claims 1 to 6 when executed.

12. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the computer program implements the method for checking the operator precision according to any one of claims 1 to 6.