CN113391795A - Method and system for realizing self-adaptive mapping of application scene and software development kit - Google Patents

Method and system for realizing self-adaptive mapping of application scene and software development kit Download PDF

Info

Publication number
CN113391795A
CN113391795A CN202010168226.8A CN202010168226A CN113391795A CN 113391795 A CN113391795 A CN 113391795A CN 202010168226 A CN202010168226 A CN 202010168226A CN 113391795 A CN113391795 A CN 113391795A
Authority
CN
China
Prior art keywords
api
application
scene graph
application scene
sdk
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010168226.8A
Other languages
Chinese (zh)
Inventor
金罗军
马欣
吴建伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Lynxi Technology Co Ltd
Original Assignee
Beijing Lynxi Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Lynxi Technology Co Ltd filed Critical Beijing Lynxi Technology Co Ltd
Priority to CN202010168226.8A priority Critical patent/CN113391795A/en
Publication of CN113391795A publication Critical patent/CN113391795A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Abstract

The invention discloses a method for realizing self-adaptive mapping of an application scene and a software development kit, which comprises the following steps: acquiring user service requirements, converting the user service requirements into an application scene graph, and optimizing the application scene graph; analyzing each operation node in the optimized application scene graph based on the SDK mapping rule base to obtain API combinations corresponding to all the operation nodes; determining the calling sequence of each API in the API combination to form an API sequence, and optimizing the API sequence; and generating an executable application template based on the optimized application scene graph and the optimized API sequence. The invention discloses a system for realizing self-adaptive mapping of an application scene and a software development kit. The invention has the beneficial effects that: the method realizes logic decoupling between user service requirements and the chip SDK, can realize optimization of an operation node API and optimization of a service logic level, and can automatically generate an executable application template.

Description

Method and system for realizing self-adaptive mapping of application scene and software development kit
Technical Field
The invention relates to the technical field of chip development, in particular to a method and a system for realizing self-adaptive mapping of an application scene and a software development kit.
Background
At present, a set of SDKs, i.e. application development kits, is generally designed for each chip, and some application example software how to use the SDKs is provided, so that a user can learn and master the use method of the chip SDKs by learning related development documents and example applications. However, this method requires reading a large amount of development documents, and the relationships between various APIs in the SDK are complex, so that the user needs to find an API combination suitable for the application scenario through various attempts, which takes a long time.
Disclosure of Invention
In order to solve the above problems, an object of the present invention is to provide a method and a system for implementing adaptive mapping of an application scenario and a software development kit, which implement logic decoupling between a user service requirement and a chip SDK, implement optimization of an API of an operation node and optimization of a service logic level, and automatically generate an executable application template.
The invention provides a method for realizing self-adaptive mapping of an application scene and a software development kit, which comprises the following steps:
acquiring user service requirements, converting the user service requirements into an application scene graph, and optimizing the application scene graph;
analyzing each operation node in the optimized application scene graph based on the SDK mapping rule base to obtain API combinations corresponding to all the operation nodes;
determining the calling sequence of each API in the API combination to form an API sequence, and optimizing the API sequence;
and generating an executable application template based on the optimized application scene graph and the optimized API sequence.
As a further improvement of the invention, the user service requirements are acquired through a graphical interface or a text format file.
As a further improvement of the invention, the application scene graph is a structured file describing various applications, functional modules and logical relations among the modules in the applications, and operation nodes in the functional modules.
As a further improvement of the invention, the application scene graph is optimized, which comprises the following steps: and performing one or more operations of parallelism extraction and function customization on each functional module in the application scene graph.
As a further improvement of the invention, the SDK mapping rule of the chip is obtained by abstracting the SDK usage of the chip, and the SDK mapping rule is stored in the SDK mapping rule base, wherein each chip corresponds to one set of SDK mapping rule.
As a further improvement of the invention, the SDK mapping rule base is dynamically loaded according to the update of the SDK.
As a further improvement of the present invention, the optimized API sequence includes: and according to the corresponding relation between each operation node in the application scene graph and the API sequence, performing one or more operations of disassembling, combining and extracting parallelism on the API in the API sequence.
As a further improvement of the invention, the method further comprises adding a customized function through the application template.
As a further refinement of the present invention, the customization functions include one or more of debug functions and performance test functions.
The invention also provides a system for realizing the self-adaptive mapping of the application scene and the software development kit, and the system comprises the following steps:
the user service demand module is used for acquiring user service demands; an application scenario map generator for converting the user business requirements into an application scenario map;
a scene graph optimizer for optimizing the application scene graph;
the scene graph analyzer is used for analyzing each operation node defined in the optimized application scene graph based on the SDK mapping rule to obtain API combinations corresponding to all the operation nodes;
the API combination optimizer is used for determining the calling sequence of each API in the API combination, forming an API sequence and optimizing the API sequence;
and the application template generator is used for generating an executable application template according to the optimized application scene graph and the optimized API sequence.
As a further improvement of the invention, the user service requirements are acquired through a graphical interface or a text format file.
As a further improvement of the invention, the application scene graph is a structured file describing various applications, functional modules and logic relations among the modules in the applications, and operation nodes in the functional modules.
As a further improvement of the invention, the scene graph optimizer performs parallelism extraction on each functional module in the application scene graph or customizes each functional module in the application scene graph.
As a further improvement of the invention, the SDK mapping rule of the chip is obtained by abstracting the SDK usage of the chip, and the SDK mapping rule is stored in the SDK mapping rule base, wherein each chip corresponds to one set of SDK mapping rule.
As a further improvement of the invention, the SDK mapping rule base is dynamically loaded according to the update of the SDK.
As a further improvement of the invention, the API combination optimizer performs one or more operations of disassembling, merging and extracting parallelism of the APIs in the API sequences according to the corresponding relation between each operation node and the API sequences defined in the application scene graph.
As a further refinement of the present invention, the application template generator further comprises adding customization functionality through the application template.
As a further refinement of the present invention, the customization functions include one or more of debug functions and performance test functions.
The invention also provides an electronic device comprising a memory and a processor, the memory storing one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method.
The invention also provides a computer-readable storage medium having stored thereon a computer program for execution by a processor to perform the method.
The invention has the beneficial effects that:
the logic decoupling between the user service requirement and the chip SDK is realized, and the difficulty of learning and mastering the corresponding SDK is reduced.
And the SDK mapping rule base is dynamically loaded according to the update of the SDK, so that the upgrading of the SDK does not influence the implementation process. The actual experience (knock-how) of the user can be embodied in the form of an SDK mapping rule base and can be dynamically realized without modifying codes.
The optimization of the API of the operation node and the optimization of the business logic level can be realized, a user can conveniently finish various tuning works, the whole process can be realized without modifying codes, and an executable application template can be automatically generated.
Drawings
In order to more clearly illustrate the embodiments of the present disclosure or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below. It is to be understood that the drawings in the following description are merely exemplary of the disclosure, and that other drawings may be derived from those drawings by one of ordinary skill in the art without undue inventive faculty.
Fig. 1 is a flowchart of an implementation system of an application scenario and software development kit adaptive mapping framework according to an embodiment of the present disclosure.
Detailed Description
The technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the drawings in the embodiments of the present disclosure, and it is obvious that the described embodiments are only a part of the embodiments of the present disclosure, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments disclosed herein without making any creative effort, shall fall within the protection scope of the present disclosure.
It should be noted that, if directional indications (such as up, down, left, right, front, and back … …) are involved in the disclosed embodiment, the directional indications are only used to explain the relative position relationship between the components, the motion situation, and the like in a specific posture (as shown in the drawing), and if the specific posture is changed, the directional indications are changed accordingly.
In addition, in the description of the present disclosure, the terms used are for illustrative purposes only and are not intended to limit the scope of the present disclosure. The terms "comprises" and/or "comprising" are used to specify the presence of stated elements, steps, operations, and/or components, but do not preclude the presence or addition of one or more other elements, steps, operations, and/or components. The terms "first," "second," and the like may be used to describe various elements, not necessarily order, and not necessarily limit the elements. In addition, in the description of the present disclosure, "a plurality" means two or more unless otherwise specified. These terms are only used to distinguish one element from another. These and/or other aspects will become apparent to those of ordinary skill in the art in view of the following drawings, and the description of the embodiments of the disclosure will be more readily understood by those of ordinary skill in the art. The drawings are only for purposes of illustrating the described embodiments of the disclosure. One skilled in the art will readily recognize from the following description that alternative embodiments of the structures and methods illustrated in the present disclosure may be employed without departing from the principles described in the present disclosure.
The method for realizing the self-adaptive mapping of the application scene and the software development kit in the embodiment of the disclosure can be applied to a terminal or a server, and comprises the following steps:
and acquiring user service requirements, converting the user service requirements into an application scene graph, and optimizing the application scene graph. The service requirement defined by the user is unstructured information, and the service requirement is converted into a structured application scene graph through conversion, so that the subsequent analysis of the service requirement is facilitated.
The user service requirement may refer to data operation that a user needs to process in an application scenario.
In an alternative embodiment, the user business requirements are obtained through a graphical interface. For example, a graphical interface may be provided, wherein the graphical interface includes selectable items, each selectable item is associated with a business requirement of the user, and the user can define the requirement by dragging a button of the graphical interface, selecting various selectable items, and the like. In another alternative embodiment, the user service requirements are defined by a text format file. For example, the user may describe the service requirement by an Excel file or a text file, and the terminal or the server may obtain the text format file to obtain the service requirement of the user.
In an alternative embodiment, the application scene graph is a structured file describing various applications, functional modules and logical relationships between the modules in the applications, and operation nodes in the functional modules. An application may be understood as a flow of data operations that a user business requirement needs to handle. The functional module may be understood as a module in which the chip is used to implement a user service requirement, and at least one step in each functional module is used to operate data. An operational node may be understood as an operation on data. For example, in a face recognition application, the application in the application scene graph may be described as: and carrying out target detection on the video stream, intercepting the area where the face is positioned after the face appears in the video, and carrying out face recognition on the intercepted image. At this time, each functional module may be defined as: the system comprises a decoding module, a target detection module and a classification identification module, wherein the execution logic of each functional module is as follows: the output of the decoding module is connected with the input of the target detection module, and the output of the target detection module is connected with the input of the classification identification module. Taking the decoding module as an example to illustrate various operations in the module, the operation node of the decoding module may be defined as: video decoding and image preprocessing.
In an alternative embodiment, the application scenario diagram may take a variety of structured formats. In an alternative embodiment, the format of the structured file may be YAML or JSON. For example, the YAML format file can be selected from the application scene graph, the YAML readability is high, the YAML format file is very close to a program language data structure, and meanwhile, the YAML format file has rich expression capability and expansibility.
In an alternative embodiment, the application scenario diagram may be generated by a separate scenario diagram generator, or may be generated by a functional module in the application program.
In an alternative embodiment, optimizing the application scene graph comprises: and performing one or more operations of parallelism extraction and function customization on various functional modules in the application scene graph. Optimization can be based on the specification of a user, and a plurality of functional modules can be subjected to parallelism extraction, so that pipelines can be set for related applications. For example, in a face recognition application, each functional module is constructed into a pipeline operation, so that each functional module can form a 32-channel pipeline operation, and further supports a 32-channel video monitoring application. The functional modules may also be customized, for example, some functional module users may specify that the functions are respectively completed by different processors (such as a CPU, a GPU, and the like), and the influence on the performance of the final application is evaluated by different operation implementation paths.
And analyzing each operation node in the optimized application scene graph based on the SDK mapping rule base to obtain the API combinations corresponding to all the operation nodes. The operation node herein may be understood as an operation node in each functional module.
In an optional implementation manner, the SDK mapping rules of the chips are obtained by abstracting the SDK usage of the chips, and the SDK mapping rules are stored in an SDK mapping rule base, where each chip corresponds to one set of SDK mapping rules.
In an alternative embodiment, the SDK mapping rule base is dynamically loaded based on updates to the SDK. After each SDK upgrade, the new SDK characteristics can be covered by updating the SDK mapping rule base, so that the implementation process is not influenced by the upgrade of the SDK. Each time a new knock-how is developed for the application, the SDK mapping rule base can be updated, the dynamic realization can be realized without modifying codes, and the flexibility of the adaptive mapping of the application scene and the software development kit is improved.
Determining the calling sequence of each API in the API combination, forming an API sequence, and optimizing the API sequence.
The mapped API sequence may be optimized, for example, optimization within the API set and optimization between API sets may be included. In an alternative embodiment, the optimization API sequence may include: and according to the corresponding relation between each operation node in the application scene graph and the API sequence, performing one or more operations of disassembling, combining and extracting parallelism on the API in the API sequence. The API optimization may be performed based on the principle of conforming to the chip optimization policy on the basis of ensuring the implementation of the application function. The chip optimization strategy can be understood as improving the efficiency of hardware, reducing the overhead of system interaction, reducing the resource consumption of a memory or a CPU, and the like.
By optimizing the API sequence, the system performance can be improved, the resource consumption can be reduced and various tuning works can be conveniently completed by a user on the basis of ensuring the realization of the application function.
For example, in an image preprocessing link, A, B, C, D four preprocessing operations need to be sequentially executed, and if the sequence of sequentially calling A, B, C, D exactly meets the chip optimization strategy, multiple APIs corresponding to A, B, C, D four preprocessing operations can be merged into a new large API, thereby reducing the overhead of system interaction. For another example, in the image preprocessing link, A, B, C, D four preprocessing operations need to be sequentially executed, and if the B and C operations do not affect the preprocessing result and the new calling sequence A, C, B, D after the exchange conforms to the chip optimization policy, the APIs corresponding to the A, C, B, D four preprocessing operations are merged into a new large API. For example, among API groups, the APIs above and below two groups in sequence may be merged into a new large API. Parallelism may also be provided, for example, by extracting parallelism for multiple APIs in an API sequence.
And generating an executable application template based on the configuration of the optimized application scene graph and the optimized API sequence.
The user can run the application template by himself to complete the default functions. In an alternative embodiment, custom functionality may also be added by applying templates. In an alternative embodiment, the customized functionality includes one or more of a debug functionality and a performance test functionality. For example, a debugging function can be added to the application template, so that a user can complete performance tuning work through debugging.
The system for implementing adaptive mapping of an application scenario and a software development kit according to the embodiment of the present disclosure adopts the foregoing implementation method, as shown in fig. 1, including:
and the user service demand module is used for acquiring the user service demand.
The user can define the business requirement through the module, and the module can have different implementation forms. In an alternative embodiment, the module may be a graphical interface, wherein the graphical interface includes selectable items, each selectable item being associated with a business requirement of the user. For example, a user may define his needs by dragging buttons of a graphical interface, selecting various selectable items, and the like. In another alternative embodiment, the module may be a text format file. For example, the user may describe the service requirement by an Excel file or a text file, and the terminal or the server may obtain the text format file to obtain the service requirement of the user.
And the application scene graph generator is used for converting the user business requirements into the application scene graph. The service requirement defined by the user is unstructured information, and the service requirement is converted into a structured application scene graph through conversion, so that the follow-up analysis of the application requirement is facilitated.
In an alternative embodiment, the application scene graph is a structured file describing various applications, functional modules and logical relationships among the modules in the applications, and operation nodes in the functional modules. An application may be understood as a flow of data operations that a user business requirement needs to handle. The functional module may be understood as a module in which the chip is used to implement a user service requirement, and at least one step in each functional module is used to operate data. An operational node may be understood as an operation on data. For example, in a face recognition application, the application in the application scene graph may be described as: and carrying out target detection on the video stream, intercepting the area where the face is positioned after the face appears in the video, and carrying out face recognition on the intercepted image. At this time, each functional module may be defined as: the system comprises a decoding module, a target detection module and a classification identification module, wherein the execution logic of each functional module is as follows: the output of the decoding module is connected with the input of the target detection module, and the output of the target detection module is connected with the input of the classification identification module. Taking the decoding module as an example to illustrate various operations in the module, the operation node of the decoding module may be defined as: video decoding and image preprocessing.
In an alternative embodiment, the application scenario diagram may take a variety of structured formats. In an alternative embodiment, the format of the structured file may be YAML or JSON. For example, the YAML format file can be selected from the application scene graph, the YAML readability is high, the YAML format file is very close to a program language data structure, and meanwhile, the YAML format file has rich expression capability and expansibility.
In an alternative embodiment, the application scenario diagram may be generated by a separate scenario diagram generator, or may be generated by a functional module in the application program.
And the scene graph optimizer is used for optimizing the application scene graph. The module can realize some optimization or customization of some functions specified by the user to the application scene graph.
In an alternative embodiment, the optimization of the module comprises: and performing one or more operations of parallelism extraction and function customization on various functional modules in the application scene graph. Optimization can be based on the specification of a user, and a plurality of functional modules can be subjected to parallelism extraction, so that pipelines can be set for related applications. For example, in a face recognition application, each functional module is constructed into a pipeline operation, so that each functional module can form a 32-channel pipeline operation, and further supports a 32-channel video monitoring application. The functional modules may also be customized, for example, some functional module users may specify that the functions are respectively completed by different processors (such as a CPU, a GPU, and the like), and the influence on the performance of the final application is evaluated by different operation implementation paths.
And the scene graph analyzer is used for analyzing each operation node defined in the optimized application scene graph based on the SDK mapping rule to acquire the API combinations corresponding to all the operation nodes.
In an optional implementation manner, the SDK mapping rules of the chips are obtained by abstracting the SDK usage of the chips, and the SDK mapping rules are stored in an SDK mapping rule base, where each chip corresponds to one set of SDK mapping rules.
In an alternative embodiment, the SDK mapping rule base is dynamically loaded based on updates to the SDK. After each SDK upgrade, the new SDK characteristics can be covered by updating the SDK mapping rule base, so that the implementation process is not influenced by the upgrade of the SDK. Each time a new knock-how is developed for the application, the SDK mapping rule base can be updated, the dynamic realization can be realized without modifying codes, and the flexibility of the adaptive mapping of the application scene and the software development kit is improved.
And the API combination optimizer is used for determining the calling sequence of each API in the API combination, forming an API sequence and optimizing the API sequence.
The module can perform various disassembling, combining and optimizing on the corresponding relation between the operation node and the API which are originally analyzed, including optimizing in the API combination, optimizing among the API combinations and the like. In an optional implementation manner, according to a corresponding relationship between each operation node in the application scenario diagram and the API sequence, one or more operations of disassembling, combining, and extracting parallelism are performed on the APIs in the API sequence. The API optimization may be performed based on the principle of conforming to the chip optimization policy on the basis of ensuring the implementation of the application function. The chip optimization strategy can be understood as improving the efficiency of hardware, reducing the overhead of system interaction, reducing the resource consumption of a memory or a CPU, and the like. Through API optimization of each operation node, users can complete various tuning works conveniently. For example, in an image preprocessing link, a user needs to sequentially perform A, B, C, D four preprocessing operations, and if the sequence called A, B, C, D exactly meets the chip optimization policy, multiple APIs corresponding to A, B, C, D four preprocessing operations are merged into a new large API, so that overhead of system interaction is reduced. For another example, in the image preprocessing link, the user needs to sequentially perform A, B, C, D four preprocessing operations, and if the B and C operations do not affect the preprocessing result and the new calling sequence A, C, B, D after the exchange conforms to the chip optimization policy, merge the APIs corresponding to the A, C, B, D four preprocessing operations into a new large API. For example, within a API group, the APIs above and below two groups in order may be merged into a new large API. Parallelism may also be provided, for example, by extracting parallelism for multiple APIs in an API sequence.
And the application template generator is used for generating an executable application template according to the configuration of the optimized application scene graph and the optimized API sequence.
The user can run the application template by himself to complete the default functions. In an alternative embodiment, custom functionality may also be added by applying templates. In an alternative embodiment, the customized functionality includes one or more of a debug functionality and a performance test functionality. For example, a debugging function is added, so that a user can complete performance tuning work through debugging.
The disclosure also relates to an electronic device comprising a server, a terminal and the like. The electronic device includes: at least one processor; a memory communicatively coupled to the at least one processor; and a communication component communicatively coupled to the storage medium, the communication component receiving and transmitting data under control of the processor; the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to implement the implementation method of the application scenario and software development kit adaptive mapping in the above embodiments.
In an alternative embodiment, the memory is used as a non-volatile computer-readable storage medium for storing non-volatile software programs, non-volatile computer-executable programs, and modules. The processor executes various functional applications and data processing of the device by running nonvolatile software programs, instructions and modules stored in the memory, that is, the implementation method of the application scenario and the software development kit adaptive mapping is implemented.
The memory may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store a list of options, etc. Further, the memory may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device. In some embodiments, the memory optionally includes memory located remotely from the processor, and such remote memory may be connected to the external device via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
One or more modules are stored in the memory and, when executed by the one or more processors, perform an implementation of the application scenarios and software development kit adaptive mapping in any of the method embodiments described above.
The product can execute the implementation method for the application scenario and software development kit adaptive mapping provided by the embodiment of the application, has corresponding functional modules and beneficial effects of the execution method, does not describe the technical details in the embodiment in detail, and can refer to the implementation method for the application scenario and software development kit adaptive mapping provided by the embodiment of the application.
The present disclosure also relates to a computer-readable storage medium for storing a computer-readable program, where the computer-readable program is used for causing a computer to execute some or all of the above embodiments of the method for implementing adaptive mapping of application scenarios and software development kits.
That is, as can be understood by those skilled in the art, all or part of the steps in the method for implementing the embodiments described above may be implemented by a program instructing related hardware, where the program is stored in a storage medium and includes several instructions to enable a device (which may be a single chip, a chip, or the like) or a processor (processor) to execute all or part of the steps of the method described in the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
In the description provided herein, numerous specific details are set forth. It is understood, however, that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Furthermore, those of ordinary skill in the art will appreciate that while some embodiments described herein include some features included in other embodiments, rather than other features, combinations of features of different embodiments are meant to be within the scope of the invention and form different embodiments. For example, in the claims, any of the claimed embodiments may be used in any combination.
It will be understood by those skilled in the art that while the present invention has been described with reference to exemplary embodiments, various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from the essential scope thereof. Therefore, it is intended that the invention not be limited to the particular embodiment disclosed, but that the invention will include all embodiments falling within the scope of the appended claims.

Claims (10)

1. A method for realizing adaptive mapping of application scenes and software development packages is characterized by comprising the following steps:
acquiring user service requirements, converting the user service requirements into an application scene graph, and optimizing the application scene graph;
analyzing each operation node in the optimized application scene graph based on the SDK mapping rule base to obtain API combinations corresponding to all the operation nodes;
determining the calling sequence of each API in the API combination to form an API sequence, and optimizing the API sequence;
and generating an executable application template based on the optimized application scene graph and the optimized API sequence.
2. The method of claim 1, wherein the user service requirement is obtained through a graphical interface or a text format file.
3. The method of claim 1, wherein the application scenario diagram is a structured file describing various applications, functional modules and logical relationships between modules in the applications, and operation nodes in the functional modules.
4. The method of claim 3, wherein optimizing the application scene graph comprises: and performing one or more operations of parallelism extraction and function customization on each functional module in the application scene graph.
5. The method of claim 1, further comprising:
abstracting the SDK usage of the chip to obtain the SDK mapping rule of the chip;
and storing the SDK mapping rules into an SDK mapping rule base, wherein each chip corresponds to one set of SDK mapping rules.
6. The method of claim 1, wherein the optimizing API sequence comprises: and according to the corresponding relation between each operation node in the application scene graph and the API sequence, performing one or more operations of disassembling, combining and extracting parallelism on the API in the API sequence.
7. The method of claim 1, further comprising adding custom functionality through the application template.
8. An implementation system for adaptive mapping of application scenarios and software development kits, characterized in that the method according to any of claims 1-7 is used, and the system comprises:
the user service demand module is used for acquiring user service demands;
an application scenario map generator for converting the user business requirements into an application scenario map;
a scene graph optimizer for optimizing the application scene graph;
the scene graph analyzer is used for analyzing each operation node in the optimized application scene graph based on the SDK mapping rule to obtain API combinations corresponding to all the operation nodes;
the API combination optimizer is used for determining the calling sequence of each API in the API combination, forming an API sequence and optimizing the API sequence;
and the application template generator is used for generating an executable application template according to the optimized application scene graph and the optimized API sequence.
9. An electronic device comprising a memory and a processor, wherein the memory is configured to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method of any one of claims 1-7.
10. A computer-readable storage medium, on which a computer program is stored, the computer program being executable by a processor for implementing the method according to any one of claims 1-7.
CN202010168226.8A 2020-03-11 2020-03-11 Method and system for realizing self-adaptive mapping of application scene and software development kit Pending CN113391795A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010168226.8A CN113391795A (en) 2020-03-11 2020-03-11 Method and system for realizing self-adaptive mapping of application scene and software development kit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010168226.8A CN113391795A (en) 2020-03-11 2020-03-11 Method and system for realizing self-adaptive mapping of application scene and software development kit

Publications (1)

Publication Number Publication Date
CN113391795A true CN113391795A (en) 2021-09-14

Family

ID=77615475

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010168226.8A Pending CN113391795A (en) 2020-03-11 2020-03-11 Method and system for realizing self-adaptive mapping of application scene and software development kit

Country Status (1)

Country Link
CN (1) CN113391795A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114115812A (en) * 2022-01-28 2022-03-01 南京安元科技有限公司 Cross-version application distribution method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114115812A (en) * 2022-01-28 2022-03-01 南京安元科技有限公司 Cross-version application distribution method
CN114115812B (en) * 2022-01-28 2022-03-29 南京安元科技有限公司 Cross-version application distribution method

Similar Documents

Publication Publication Date Title
US11121949B2 (en) Distributed assignment of video analytics tasks in cloud computing environments to reduce bandwidth utilization
US11016673B2 (en) Optimizing serverless computing using a distributed computing framework
US11475321B2 (en) Automated extraction of rules embedded in software application code using machine learning
US9710876B2 (en) Graph-based application programming interface architectures with equivalency classes for enhanced image processing parallelism
US11144506B2 (en) Compression of log data using field types
US20220413846A1 (en) System and method for software architecture redesign
US11151089B2 (en) Compression of log data using pattern recognition
CN113536107B (en) Big data decision method and system based on block chain and cloud service center
CN112162915A (en) Test data generation method, device, equipment and storage medium
CN111160638B (en) Conversion estimation method and device
CN112947914A (en) Code generation method and device based on model, computer equipment and medium
CN112199416A (en) Data rule generation method and device
US10990073B2 (en) Program editing device, program editing method, and computer readable medium
CN111078573A (en) Test message generation method and device
CN113391795A (en) Method and system for realizing self-adaptive mapping of application scene and software development kit
CN110704742B (en) Feature extraction method and device
CN112799658A (en) Model training method, model training platform, electronic device, and storage medium
CN111401020A (en) Interface loading method and system and computing equipment
CN111208980B (en) Data analysis processing method and system
CN113051173B (en) Method, device, computer equipment and storage medium for arranging and executing test flow
RU2778078C1 (en) Method for generating a program profile based on machine learning for profile optimization of the program and an electronic device implementing it
CN115951936B (en) Chip adaptation method, device, equipment and medium of vectorization compiler
CN114207594B (en) Static analysis and runtime analysis of computer program system
CN113391810A (en) Analysis method and system based on application scene graph
CN112631653B (en) Index library code adaptation method and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination