CN112783500B - Method and device for generating compiling optimization information and electronic equipment - Google Patents
Method and device for generating compiling optimization information and electronic equipment Download PDFInfo
- Publication number
- CN112783500B CN112783500B CN201911087681.9A CN201911087681A CN112783500B CN 112783500 B CN112783500 B CN 112783500B CN 201911087681 A CN201911087681 A CN 201911087681A CN 112783500 B CN112783500 B CN 112783500B
- Authority
- CN
- China
- Prior art keywords
- compiling
- information
- compiling unit
- hot spot
- identification information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000005457 optimization Methods 0.000 title claims abstract description 199
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000009434 installation Methods 0.000 claims abstract description 106
- 230000004927 fusion Effects 0.000 claims description 9
- 230000006870 function Effects 0.000 description 25
- 238000012545 processing Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000007499 fusion processing Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The application discloses a compiling optimization information generation method, a compiling optimization information generation device and electronic equipment, and relates to the technical field of computers. Wherein the method comprises the following steps: and searching a target compiling unit matched with at least one old version hot spot compiling unit from the new version installation package according to the identification information of the at least one old version hot spot compiling unit, and generating compiling optimization information of a new version according to the searched target compiling unit. Thus, the compiling optimization information of the new version application program can be timely generated so as to guide the compiling optimization of the application program.
Description
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a method and an apparatus for generating compilation optimization information, and an electronic device.
Background
In order to improve the execution efficiency of an application program by an electronic device, it is generally necessary to perform compilation optimization on the application program by using a code optimization function of a compiler. For example, a hot-spot compiling unit having a high frequency of use is determined from among the compiling units of the application program, and compiling optimization information is generated based on the determined hot-spot compiling unit. The compiler can convert the program code of the hot spot compiling unit into machine code according to the compiling optimization information, thereby avoiding just-in-time (just-in-time) compiling of the hot spot compiling unit when the application program runs.
However, the existing compiling optimization method generally takes a period of time to generate compiling optimization information, which is not timely enough.
Disclosure of Invention
In view of the above problems, the present application proposes a method and apparatus for generating compilation optimization information, and an electronic device, which can generate a new version of compilation optimization information for an application program in time.
In a first aspect, an embodiment of the present application provides a method for generating compilation optimization information, including: acquiring a new version installation package of an application program; acquiring identification information of at least one old version hot spot compiling unit of the application program; searching a target compiling unit matched with the at least one old version hot spot compiling unit from the new version installation package according to the identification information; and generating compiling optimization information of the new version application program according to the searched target compiling unit.
In a second aspect, an embodiment of the present application provides a compiling optimization device, including: the acquisition module is used for acquiring a new version installation package of the application program and acquiring identification information of at least one old version hot spot compiling unit of the application program; the searching module is used for searching a target compiling unit matched with the at least one old version hot spot compiling unit from the new version installation package according to the identification information; and the generating module is used for generating the compiling optimization information of the new version application program according to the searched target compiling unit.
In a third aspect, an embodiment of the present application provides an electronic device, including: one or more processors; a memory; one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs configured to perform the methods described above.
In a fourth aspect, embodiments of the present application provide a computer readable storage medium having program code stored therein, the program code being callable by a processor to perform the method described above.
Compared with the prior art, in the scheme provided by the application, the electronic equipment searches the target compiling unit matched with at least one old version hot spot compiling unit from the new version installation package of the application according to the identification information of the at least one old version hot spot compiling unit of the application, so that compiling optimization information of the new version application can be generated timely according to the searched target compiling unit, the hot spot compiling unit can be determined without counting the frequency of the compiling unit of the application used in the running process, and timeliness of generating the compiling optimization information is improved.
These and other aspects of the present application will be more readily apparent from the following description of the embodiments.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the description of the embodiments will be briefly introduced below, it being obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 shows a schematic view of an application environment suitable for use in embodiments of the present application.
FIG. 2 illustrates a flow chart of a compile optimization information generation method in accordance with one embodiment of the present application.
FIG. 3 illustrates a flow chart of a compile optimization information generation method in accordance with another embodiment of the present application.
Fig. 4 shows a flowchart for generating target compilation optimization information according to an embodiment of the present application.
Fig. 5 shows a block diagram of an electronic device according to an embodiment of the present application.
Fig. 6 shows a block diagram of a compilation optimization information generating device provided by an embodiment of the present application.
Fig. 7 is a storage unit for storing or carrying program code for implementing a compilation optimization information generation method according to an embodiment of the present application.
Detailed Description
In order to enable those skilled in the art to better understand the present application, the following description will make clear and complete descriptions of the technical solutions in the embodiments of the present application with reference to the accompanying drawings in the embodiments of the present application.
It has been found that in some embodiments, the application is compiled generally in the following manner:
after the application program is installed, the user terminal firstly interprets and executes the application program through a parser, in the execution process, the calling times, the circulation times and the like of all compiling units of the application program are counted, and when the calling times or the circulation times reach a set threshold value, the compiling units are identified as hot spot compiling units and recorded into a configuration file (profile). The compiling unit may be understood as a function, a method (method), or a class (class) in the source code of the application program. The configuration file is typically a binary file containing identification information of the hot-spot compiling unit, such as ID (Identity) information, in the source code of the application program. When the user terminal enters an idle state or a charging state, the configuration file is scanned, and program codes of the hot spot compiling unit recorded in the configuration file are compiled into machine codes, so that the hot spot compiling unit is prevented from being compiled immediately when an application program runs.
In the above manner, it is generally necessary to count the information such as the call number and the loop number of the compiling unit of the application program for a period of time, so as to obtain a sufficient amount of information to determine the hot spot compiling unit, and further generate a configuration file for guiding the optimization. In this period, the user terminal can only use the interpreter to execute or just-in-time compile the application program, which has poor performance.
In other embodiments, for the new version of the application program, part of the user terminals determine the hot spot compiling units by counting the calling times and the circulation times of each compiling unit, so as to generate a configuration file for guiding compiling optimization. In addition, the server collects the configuration files in the part of the user terminals and clusters the collected configuration files, so that an optimized configuration file is generated, and when other user terminals request to download the installation package of the application program, the optimized configuration file is sent to the other user terminals. In this way, most of the user terminals can obtain configuration files for guiding the compiling optimization in time, however, some of the user terminals still need to spend time counting the use frequency of the compiling unit, and it is difficult to generate the compiling optimization information in time.
Aiming at the problems, the application provides a compiling optimization information generating method, device and electronic equipment, according to the identification information of the old version hot spot compiling unit, a target compiling unit matched with the old version hot spot compiling unit is searched from a new version installation package, so that the time spent in counting the frequency of use of the compiling unit in the running process of an application program is avoided, and new version compiling optimization information can be generated timely based on the target compiling unit and used for guiding compiling optimization of the new version application program obtained based on the new version installation package.
The following describes the embodiments of the present application in detail by way of specific examples.
Referring to fig. 1, fig. 1 is a schematic view of an application scenario in an embodiment of the present application. The server 100 may communicate with a plurality of user terminals, such as the user terminals 200 and 300 shown in fig. 1, through a network.
The server 100 may be a server device that provides an application installation package download service, such as an application store server, or may be another server that communicates with a server device that provides an application installation package download service, which is not limited in this embodiment. It will be appreciated that in this embodiment, the server 100 may be a server that operates independently, or may be one of a cluster of multiple servers that communicate with each other.
The user terminal may be any terminal device having data processing functions, communication functions. For example, the user terminal in the embodiment of the present application may be, but is not limited to, a smart phone, a tablet computer, a notebook computer, and the like. The user terminal may access the server 100 in various ways, for example, the user terminal may install a client provided by the server 100, through which the server 100 is accessed; as another example, the user terminal may access the server 100 through a browser; as another example, the user terminal may access the server 100 through a program running in a third party application. The present embodiment is not limited thereto.
In the scenario shown in fig. 1, a user may upload an installation package of an application program to the server 100 through his user terminal for other users to download. For example, the user a uploads the installation package Y1 of the application program X1 to the server 100 through the user terminal 200, and the user B may download the installation package Y1 through the user terminal 300 thereof to install the application program X1. As another example, the user B may upload the installation package Y2 of the application program X2 to the server 100 through the user terminal 300 thereof, and the user a may download the installation package Y2 through the user terminal 200 thereof for installation, thereby obtaining the corresponding application program X2.
Referring to fig. 2, fig. 2 is a flowchart of a method for generating compiling optimization information according to an embodiment of the present application, where the method may be applied to an electronic device, and the electronic device may be the server 100 shown in fig. 1 or any one of the user terminals. The steps involved in the method are set forth below.
Step S110, a new version installation package of the application program is obtained.
In this embodiment, the electronic device stores a new version of the installation package. Taking the example that the electronic device is the server 100, the new version installation package may be uploaded by the user terminal. Taking the example that the electronic device is a user terminal, the new version installation package may be downloaded from the server 100.
Step S120, obtaining identification information of at least one old version hot spot compiling unit of the application program.
In this embodiment, the electronic device stores identification information of at least one old version hot spot compiling unit, and the identification information may be stored in the electronic device in a configuration file, for example, may be a profile file containing identification information, attribute information, and the like of the hot spot compiling unit. The identification information of the old-version hot-spot compiling unit may be ID information of the old-version hot-spot compiling unit in the old-version installation package of the application program, and the attribute information may include, for example, a type (e.g., a function or a class) of the old-version hot-spot compiling unit, an operation stage (e.g., operation before start-up or operation after start-up), and the like. It is to be understood that the aforementioned profile file is merely illustrative, and the identification information of the present embodiment may also be stored in other forms in the electronic device.
For example, if the electronic device is the server 100, the identification information of the old version hot spot compiling unit may be acquired from the user terminal. If the electronic device is a user terminal, the identification information of the old version hot spot compiling unit may be saved during the process of running the old version application program. The old version application program can be obtained by installing the old version installation package.
And step S130, searching a target compiling unit matched with the at least one old version hot spot compiling unit from the new version installation package according to the identification information.
And step 140, according to the searched target compiling unit, compiling optimization information of the new version application program is generated.
In this embodiment, although the code of the new version installation package and the code of the old version installation package of the application program are different, the difference between the two installation packages will not be too large, and correspondingly, the difference between the hot spot compiling units of the two versions will not be too large. Therefore, for the old version hot spot compiling unit, the embodiment searches whether a matched target compiling unit exists in the new version installation package according to the identification information of the old version hot spot compiling unit, if so, the similar compiling unit (target compiling unit) can be determined to be the new version hot spot compiling unit, and new version compiling optimization information is generated based on the new version hot spot compiling unit to guide compiling optimization of the new version application program obtained based on the new version installation package.
According to the flow shown in fig. 2, compiling optimization information of a new version application program can be quickly generated as needed. It can be appreciated that in this embodiment, the user terminal may execute the compile optimization information generation method provided in this embodiment for the new version installation package in a case where the new version installation package is downloaded from the server 100 and the new version compile optimization information cannot be acquired from the server 100. The server 100 may execute the compiling optimization information generating method provided in the embodiment for a new version installation package when receiving a request for a user to issue the new version installation package, that is, when the new version installation package needs to be issued.
For example, after downloading the new version installation package Y2 of the application program X2, the user terminal 200 may detect whether the new version profile of the application program X2 may be obtained from the server 100, and if not, may obtain the old version profile of the application program X2 from the present device, where the ID of the old version hotspot compiling unit of the application program X2 is described, for example, including 9001 and 9003, no matching compiling unit is found from the new version installation package Y2 according to the ID 9001, and a compiling unit with the ID 9003 is found from the new version installation package Y2 according to the ID 9003, and then it may be determined that the found compiling unit is a target compiling unit matching the old version hotspot compiling unit 9003, and further the compiling unit with the ID 9003 may generate the new version profile as new version compiling optimization information according to the new version installation package. The new version profile file may include, for example, the ID 9003 of the new version hotspot compilation unit.
For another example, when receiving the release request of the user terminal 200 for the new version installation package Y1 of the application program X1, the server 100 may obtain the new version installation package Y1 and the old version profile of the application program X1, and then perform processing according to the flow shown in fig. 2, which is not described herein again.
It can be seen that, through the flow shown in fig. 2, the hot-spot compiling unit of the new version of the application program can be very quickly determined, so that new-version compiling optimization information can be quickly generated. In the process, the time is not required to count the information such as the use frequency of each compiling unit in the running process of the new version application program as the basis for determining the hot spot compiling unit, so that the efficiency for determining the hot spot compiling unit is improved, and the timeliness for generating the new version compiling optimization information is further improved.
Referring to fig. 3, fig. 3 is a flowchart illustrating a method for generating compilation optimization information according to another embodiment of the present application, which can be applied to the server 100 shown in fig. 1. The flow shown in fig. 3 will be described below by taking the example in which the server 100 is an application store server.
Step S210, a new version installation package of the application program is obtained.
Step S220, obtaining identification information of a plurality of old version hot spot compiling units of the application program, where the plurality of old version hot spot compiling units include a first old version hot spot compiling unit with first identification information and a second old version hot spot compiling unit with second identification information.
In this embodiment, the server 100 may store old version compilation optimization information for at least two different versions of an application. For example, the server 100 stores first legacy compilation optimization information including first identification information of at least one first legacy hotspot compilation unit and second legacy compilation optimization information including second identification information of at least one second legacy hotspot compilation unit.
Step S230, according to the first identification information, searching a target compiling unit matched with the first old version hot spot compiling unit from the new version installation package, and according to the second identification information, searching a target compiling unit matched with the second old version hot spot compiling unit from the new version installation package.
Step S240, generating the new version of first compiling optimization information according to the searched first target compiling unit, and generating the new version of second compiling optimization information according to the searched second target compiling unit.
In this embodiment, the manner of searching for the matched target compiling unit from the new version installation package according to the first identification information and the second identification information, respectively, is similar to step S130 shown in fig. 1, and will not be described again.
It should be noted that in some cases, the identification information of the same or similar compiling units may be different in different version installation packages of the application program, but the names thereof are generally consistent for the convenience of readability of the code and subsequent maintenance. In this case, for each obtained old-version hot-spot compiling unit, the server 100 may obtain a corresponding old-version installation package, for example, the server 100 may obtain and store a first old-version installation package corresponding to the above-described first old-version compiling optimization information and a second old-version installation package corresponding to the above-described second old-version compiling optimization information, and implement step S230 by:
searching a compiling unit with first identification information from a first old version installation package, acquiring a first name of the searched compiling unit, and searching the compiling unit with the first name from a new version installation package as a first target compiling unit according to the first name;
and searching the compiling unit with the second identification information from the second old version installation package, acquiring the second name of the searched compiling unit, and searching the compiling unit with the second name from the new version installation package according to the second name as a second target compiling unit.
Referring to fig. 4, a detailed implementation flow of step S230 is shown. Taking the first target compiling unit searched based on the first identification information id1 as an example, because of the corresponding relation between the first old version compiling optimization information and the first old version installation package, the server 100 may search the compiling unit with the first identification information id1 from the first old version installation package according to the first identification information id1, extract the name of the compiling unit as a first name n1, extract the first attribute information f1 of the first old version hot spot compiling unit indicated by the first identification information id1 from the first old version compiling optimization information, form a piece of description data1 by using the extracted first name n1 and the first attribute information f1, and add the description data1 to the generated first old version description file.
If the first old-version compiling optimization message comprises a plurality of first identification information, performing similar operation on each piece of first identification information, and obtaining a first old-version description file comprising a plurality of pieces of description data. In a similar manner, server 100 may compile optimization information based on the second legacy version to obtain a second legacy version description file.
After obtaining the first old version description file, the server 100 may find a new version installation package based on each first name in the first old version description file. Taking the first name n1 as an example, the server 100 may search for the compiling unit having the first name n1 from the new version installation package. Because of a certain difference between the compiling units in the installation packages of different versions, the condition that the compiling unit with the first name n1 cannot be found may occur, if the compiling unit cannot be found, the compiling unit may not be processed, and if the compiling unit is found, it may be determined that the found compiling unit is a first target compiling unit matched with the first old version hot-spot compiling unit. For convenience of description, the identification information of the first target compiling unit in the new version installation package is described herein as the third identification information. For the determined first target compiling unit, the third identification information id1 'of the first target compiling unit can be obtained from the new version installation package, the first attribute information f1 corresponding to the first identification information id1 serving as the index of the search is extracted from the first old version description file, the extracted third identification information id1' and the first attribute information f1 form a piece of data, and the data is added into the first compiling optimization information of the new version.
And executing the flow on each first name in the first old version description file to obtain complete first compiling optimization information. In a similar manner, server 100 may obtain the second compiled optimization information of the new version based on the second old version description file. And the second compiling optimization information package comprises fourth identification information of each second target compiling unit in the new version installation package.
Step S250, fusing the second compiling optimization information to the first compiling optimization information to obtain the new version of target compiling optimization information.
Step S260, responding to a downloading request of the user terminal for the new version installation package of the application program, and sending the new version installation package and the new version target compiling optimization information to the user terminal.
In this embodiment, the first compiling optimization information and the second compiling optimization information may be directly fused under the condition that the identification information of the same or similar compiling units in the installation packages of different versions is identical. In particular, there may be various ways.
In one embodiment, for each fourth identification information in the second compilation optimization information, whether the target third identification information identical to the fourth identification information exists or not may be searched for from the first compilation optimization information. And if the same target third identification information does not exist, adding the fourth identification information and attribute information corresponding to the fourth identification information into the first compiling optimization information. If the same target third identification information exists, the processing is not required.
In another embodiment, the server 100 may first count the hot information of the old version hot spot compiling unit in each old version compiling optimization information, which is implemented, for example: acquiring compiling optimization information of a plurality of old versions from different user terminals aiming at each old version hot spot compiling unit; counting the number of the compiling optimization information containing the old version hot spot compiling units in a plurality of the compiling optimization information of the old version; and calculating the ratio of the counted number to the acquired number of compiling optimization information to obtain the heat information of the old version hot spot compiling unit. In this way, the obtained heat information may indicate the probability that the compiling unit indicated by each identification information in the old-version compiling optimization information is a hot-spot compiling unit.
Correspondingly, the obtained heat information may be added to the generated new version of the compiling optimization information, and then the first compiling optimization information may include: third identification information of the first target compiling unit in the new version installation package, first attribute information of the first target compiling unit and heat information of the first old version hot spot compiling unit matched with the first target compiling unit. The second compilation optimization information may include: the method comprises the steps of setting fourth identification information of a second target compiling unit in a new version installation package, second attribute information of the second target compiling unit and heat information of a second old version hot spot compiling unit matched with the second target compiling unit.
In this case, in the present embodiment, the server 100 may fuse the second compilation optimization information into the first compilation optimization information by: and searching whether target third identification information which is the same as fourth identification information exists in the first compiling optimization information aiming at each fourth identification information in the second compiling optimization information. If the target third identification information does not exist, the fourth identification information, the second attribute information corresponding to the fourth identification information and the heat information can be formed into a piece of data, and the data is added into the first compiling optimization information. If the target third identification information exists, the heat information corresponding to the target third identification information in the first compiling optimization information can be updated according to the heat information corresponding to the fourth identification information.
The method for updating the heat information corresponding to the target third identification information in the first compiling optimization information according to the heat information corresponding to the fourth identification information may be:
determining the weight of the heat information corresponding to the fourth identification information according to the span information of the second old version and the new version, and determining the weight of the heat information corresponding to the target third identification information according to the span information of the first old version and the new version, wherein the weight of the heat information and the span information are in inverse proportion relation;
And carrying out weighted summation on the heat information corresponding to the fourth identification information and the heat information corresponding to the target third identification information according to the determined weight to obtain updated heat information.
Wherein the span information may be a version span or a span of release time. In this embodiment, an attenuation function may be determined according to the span information of the old version and the new version, where the attenuation function uses the span information as a dependent variable, and the function value is inversely proportional to the span information. For example, new version V N+1 With old version V i The decay function of (i.gtoreq.1 and i is a positive integer) can be expressed as f (V N+1 -V i ). The function value of the decay function may be used as a weight based on the heat information of the new version hot-spot compiling unit determined by the old version hot-spot compiling unit.
Optionally, the decay function f (V N+1 -V i ) The calculation can be performed as follows:
wherein the range of the attenuation function value is (0, 1), and the sum of all the attenuation function values obtained based on the above calculation formula is:
it can be seen that the sum of all the attenuation function values obtained by the calculation formula is 1, so that the processing is convenient, and the influence degree of the heat information of the old version hot spot compiling unit on the heat information of the new version hot spot compiling unit can be more intuitively reflected by the attenuation function values.
An example is given below to explain the fusion process of the first compilation optimization information and the second compilation optimization information.
In this example, one piece of data in the first compiling optimization information includes third identification information id1', first attribute information f1, and heat information h1; one piece of data in the second compiling optimization information comprises fourth identification information id1', second attribute information f1 and heat information h3, and the other piece of data comprises fourth identification information id2', second attribute information f2 and heat information h2.
In detail, for the fourth identification information id1' in the second compilation optimization information, the server 100 finds the third identification information id1' identical to the fourth identification information id1' from the first compilation optimization information, and determines it as the target third identification information. Then, it is determined that the second compilation optimization information corresponds to the second old version, and the first compilation optimization information corresponds to the first old version, thereby obtaining an attenuation function value f (V) from a span of release times of the new version and the second old version N+1 -V 2 ) Obtaining an attenuation function value f according to the span of the release time of the new version and the first old version VN+1 -V 1 ). Then, the updated heat information h4 is: h1×f (V N+1 -V 1 )+h3*f(V N+1 -V 2 ). The server 100 may replace h1 in the first compiled optimization information with updated heat information h4.
For the fourth identification information id2 'in the second coding optimization information, if the server 100 cannot find the same third identification information from the first coding optimization information, the data where the fourth identification information id2' is located may be added to the first coding optimization information.
Through the above procedure, the first compilation optimization information is processed as target compilation optimization information, which includes the following two pieces of data: identification information id1', first attribute information f1, heat information h4; identification information id2', second attribute information f2, and heat information h2. It is understood that the identification information in the first compilation optimization information may be regarded as the third identification information.
In this embodiment, in the case that the identification information of the same or similar compiling units in the installation packages of different versions is different, the second compiling optimization information may be fused into the first compiling optimization information through the flow shown in fig. 4.
Referring to fig. 4 again, in detail, the server 100 may convert the first compiling optimization information and the second compiling optimization information into corresponding first new version description files and second new version description files, respectively. Taking one piece of data in the first compilation optimization information as an example, the piece of data is assumed to be the third identification information id1', the first attribute information f1, and the heat information h1.
Then, the server 100 may search the compiling unit having the third identification information id1' from the new version installation package according to the third identification information id1', obtain the name n1 of the compiling unit in the new version installation package, extract the first attribute information f1 and the heat information h1 in the data where the third identification information id1' is located from the first compiling optimization information, and then add the extracted name n1, the first attribute information f1 and the heat information h1 to the generated first new version description file to form a piece of description data.
Executing the above flow for each third identification information in the first compiling optimization information can obtain a complete first new version description file. In a similar manner, the server 100 may convert the second compiled optimization information into a second new version description file.
The server 100 may then fuse the second new version description file into the first new version description file to form the target new version description file. The fusion process is illustrated by way of one example below.
Illustratively, one piece of data in the first new version of the description file comprises: the name n1, the first attribute information f1, and the heat information h1, and one piece of data of the second new version description file includes: name n1, second attribute information f1, and heat information h3, and the other piece of data contains name n2, second attribute information f2, and heat information h2. In this case, the server 100 finds the same name n1 from the first new version description file for the name n1 in the second new version description file, so that weights of the heat information h1 and the heat information h3 can be determined respectively by using an decay function inversely proportional to the span information in the manner described above, and then the heat information h1 and the heat information h3 are weighted and summed according to the determined weights to obtain updated heat information h4, and h1 in the first new version description file is replaced with the updated heat information h4.
For the name n2 in the second new version description file, if the server 100 cannot find the same name from the first new version description file, the data where the name n2 in the second new version description file is located is added to the first new version description file. Through the above-mentioned process, the first new version description file can be processed into a target new version description file, and the target new version description file contains the following data:
name n1, first attribute information f1, heat information h4;
name n2, second attribute information f2, and heat information h2.
After obtaining the target new version description file, the server 100 may obtain new version compiling optimization information according to the target new version description file and the new version installation package. In detail, for each name in the target new version description file, corresponding identification information can be found from the new version installation package, and the name in the target new version description file is replaced by the corresponding identification information, so that the target new version description file can be processed into target compiling optimization information of the new version.
Optionally, in order to improve accuracy of the new version compiling optimization information, in this embodiment, after obtaining the new version target compiling optimization information, whether there is identification information with corresponding heat information smaller than a set threshold value or not may be searched for, and if there is identification information with corresponding heat information smaller than the set threshold value, the identification information and the corresponding heat information thereof may be deleted. In other words, the server 100 may search for whether there is data containing heat information less than the set threshold from the new version target compilation optimization information, and if so, delete the piece of data.
It should be noted that, if the scenario is based on the fusion of the first new version description file and the second new version description file, the foregoing deletion step may be performed on the target new version description file obtained by fusion. In detail, after the target new version description file is obtained, whether data containing heat information smaller than the set threshold exists or not can be searched for, and if so, the data is deleted. And converting the processed target new version description file into new version target compiling optimization information.
In the subsequent process, if the server 100 receives a download request initiated by any one user terminal for the new version installation package of the application program, the new version installation package and the new version target compiling optimization information may be sent to the user terminal, where the user terminal may convert, in the process of installing the new version installation package, a program code corresponding to a compiling unit recorded in the target compiling optimization information into a machine code, or may convert, after installing the new version installation package, a program code corresponding to a compiling unit recorded in the target compiling optimization information into a machine code. Therefore, when the user terminal frequently calls the compiling unit recorded in the target compiling optimization information in the subsequent process, compiling and executing can be performed without a just-in-time compiling mode, and the executing efficiency is improved.
By means of the scheme of the embodiment, new version compiling optimization information can be timely generated for the new version installation package of the application program when needed, and the new version compiling optimization information is used for guiding compiling optimization of the new version application program obtained based on the new version installation package.
It can be appreciated that in this embodiment, the server 100 may store identification information of a plurality of different old version hot spot compiling units. For example, the server 100 stores the identification information of N (N is greater than or equal to 3 and N is a positive integer) different old-version hot-spot compiling units, and for the identification information of the ith (i is greater than or equal to 1 and i is a positive integer) old-version hot-spot compiling unit, the corresponding new-version compiling optimization information i can be obtained according to steps S210-S240 shown in fig. 3. Thus, N new versions of compiling optimization information can be obtained.
For the obtained N new versions of compiling optimization information, the server 100 may fuse two of the compiling optimization information, for example, compiling optimization information 1 and 2, as the first compiling optimization information and the second compiling optimization information, respectively, according to step S250 shown in fig. 3, to obtain the new version of target compiling optimization information. Then, the obtained target compiling optimization information is used as first compiling optimization information, the compiling optimization information 3 of the other new version is used as second compiling optimization information, and fusion is carried out according to the step S250, so that new target compiling optimization information is obtained. Similarly, the fusion of N new versions of compiling optimization information can be realized.
Based on the above flow, the new edition is finally obtainedIn the compiling optimization information of the present invention, the heat information Z of the target compiling unit X in the new version (i.e., version n+1) N+1 The expression can be represented by the following calculation formula:
where Zi represents the heat information of the target compilation unit X in the ith old version, f (V N+1 -V i ) Representing the attenuation function value obtained based on the span information of the new version and the i-th old version.
It can be appreciated that the compiling optimization information generating method according to the embodiment of the present application may be applied to the user terminal in fig. 1 according to a similar flow as that shown in fig. 2. The difference is that the user terminal executes the flow shown in fig. 2 after obtaining the new version installation package from the application store server, and when generating the new version of target compilation optimization information, can directly compile and optimize the new version of application program obtained based on the new version installation package based on the new version of target compilation optimization information.
In addition, in the compiling optimization information generating method applied to the user terminal, the obtaining mode of the heat information of each old version hot spot compiling unit is different from the obtaining mode of the heat information of the server 100. Illustratively, the user terminal may obtain the heat information of any one old-version hot-spot compiling unit (e.g., the foregoing first old-version hot-spot compiling unit or second old-version hot-spot compiling unit) through the following procedures:
Counting the calling times of each compiling unit of the old version application program in a preset time period in the running process of the old version application program for each old version hot spot compiling unit; acquiring the calling times of the old version hot spot compiling unit in a preset time period and the maximum calling times of a single compiling unit of the old version application program in the preset time period; and calculating the ratio of the calling times of the old-version hot spot compiling unit to the maximum calling times to obtain the heat information of the old-version hot spot compiling unit.
In this way, the obtained hot information may indicate the call probability of each compiling unit having the largest number of calls in the old version compared to the compiling unit having the largest number of calls in the same old version. In the subsequent process, the server 100 performs pruning on the identification information of the compiling unit in the generated target compiling optimization information based on the hot information, so that the pruned target compiling optimization information can be more accurate.
Referring to fig. 5, fig. 5 is a block diagram of an electronic device 500 according to an embodiment of the present application, where the electronic device 500 may be a server or a user terminal as described above. The electronic device 500 may include the following components: a processor 501, a memory 502, and one or more programs, wherein the one or more programs may be stored in the memory 502 and configured to be executed by the one or more processors 501, the one or more programs configured to perform the methods as described in the foregoing method embodiments.
It is to be understood that the configuration shown in fig. 5 is merely exemplary, and that electronic device 500 may also include more, fewer, or a completely different configuration than that shown in fig. 5. For example, the electronic device 500 may also include a communication unit. For another example, when the electronic device 500 is a user terminal, the electronic device may further include a display unit, a touch unit, and the like, which is not limited in this embodiment.
In embodiments of the present application, processor 501 may include one or more processing cores. The processor 501 utilizes various interfaces and lines to connect various portions of the overall electronic device 500, perform various functions of the electronic device 500, and process data by executing or executing instructions, programs, code sets, or instruction sets stored in the memory 502, and invoking data stored in the memory 502.
Alternatively, the processor 502 may be implemented in hardware in at least one of digital signal processing (Digital Signal Processing, DSP), field programmable gate array (Field-Programmable Gate Array, FPGA), programmable logic array (Programmable Logic Array, PLA). The processor 501 may integrate one or a combination of several of a central processing unit (Central Processing Unit, CPU), an image processor (Graphics Processing Unit, GPU), and a modem, etc. The CPU mainly processes an operating system, a user interface, an application program and the like; the GPU is used for being responsible for rendering and drawing of display content; the modem is used to handle wireless communications. It will be appreciated that the modem may not be integrated into the processor 501 and may be implemented solely by a single communication chip.
The Memory 502 may include a random access Memory (Random Access Memory, RAM) or a Read-Only Memory (Read-Only Memory). Memory 502 may be used to store instructions, programs, code sets, or instruction sets. The memory 502 may include a stored program area and a stored data area, wherein the stored program area may store instructions for implementing an operating system, instructions for implementing at least one function (e.g., a touch function, a sound playing function, an image playing function, etc.), instructions for implementing the various method embodiments described below, etc. The storage data area may also store data created or retrieved by the electronic device 500 in use (e.g., generated new version compilation optimization information), and so forth.
Referring to fig. 6, a block diagram of a compiling optimization information generating device 600 according to an embodiment of the present application is shown, and the device 600 may be applied to the electronic device 600 shown in fig. 6. Functionally divided, the apparatus 600 may include an acquisition module 601, a lookup module 602, and a generation module 603.
The acquiring module 601 is configured to acquire a new version installation package of an application program, and acquire identification information of an old version hot spot compiling unit of the application program.
The searching module 602 is configured to search, according to the identification information, a target compiling unit that matches the old version hot spot compiling unit from the new version installation package.
Optionally, the obtaining module 601 may be further configured to obtain the legacy installation package of the application program. In this case, the searching module 602 may search the new version installation package for the target compiling unit matching the hotspot compiling unit of the old version according to the identification information by: searching a compiling unit with the identification information from the old version installation package, and obtaining the name of the searched compiling unit; and searching a compiling unit with the name from the new version installation package according to the name, and taking the compiling unit as the target compiling unit.
Optionally, in this embodiment, the old version installation package includes a first old version installation package and a second old version installation package, and the old version hot spot compiling unit includes a first old version hot spot compiling unit with first identification information and a second old version hot spot compiling unit with second identification information. Correspondingly, the lookup module 602 may include: the system comprises a searching sub-module, a generating sub-module and a fusing sub-module.
The searching sub-module is used for searching a target compiling unit matched with the first old version hot spot compiling unit from the new version installation package according to the first identification information, and searching a target compiling unit matched with the second old version hot spot compiling unit from the new version installation package according to the second identification information.
The generating submodule is used for generating the first compiling optimization information of the new version according to the first searched target compiling unit and generating the second compiling optimization information of the new version according to the second searched target compiling unit.
And the fusion submodule is used for fusing the second compiling optimization information into the first compiling optimization information to obtain the target compiling optimization information of the new version.
Optionally, in this embodiment, the first compiling optimization information includes: third identification information of the first target compiling unit in the new version installation package and heat information of the first old version hot spot compiling unit matched with the first target compiling unit; the second compilation optimization information includes: fourth identification information of the second target compiling unit in the new version installation package and heat information of the second old version hot spot compiling unit matched with the second target compiling unit.
Based on the above description, the fusion submodule may fuse the second compilation optimization information into the first compilation optimization information in the following manner:
for each piece of fourth identification information in the second compiling optimization information, searching whether target third identification information matched with the fourth identification information exists in the first compiling optimization information; if no matched target third identification information exists, adding the fourth identification information and the heat information corresponding to the fourth identification information into the first compiling optimization information; and if the matched target third identification information exists, updating the heat information corresponding to the target third identification information in the first compiling optimization information according to the heat information corresponding to the fourth identification information.
The method for updating the heat information corresponding to the target third identification information in the first compiling optimization information by the fusion sub-module according to the heat information corresponding to the fourth identification information may be:
determining the weight of the heat information corresponding to the fourth identification information according to the span information of the second old version and the new version, and determining the weight of the heat information corresponding to the target third identification information according to the span information of the first old version and the new version, wherein the weight of the heat information and the span information are in inverse proportion relation; and carrying out weighted summation on the heat information corresponding to the fourth identification information and the heat information corresponding to the target third identification information according to the determined weight to obtain updated heat information.
Optionally, in this embodiment, the apparatus 600 may further include a deletion module, where the deletion module is configured to, after the fusion sub-module fuses the second compilation optimization information to the first compilation optimization information to obtain the new version of target compilation optimization information, search whether there is identification information with corresponding heat information smaller than a set threshold from the target compilation optimization information; if the identification information exists, deleting the identification information and the heat information corresponding to the identification information.
Optionally, in this embodiment, when the electronic device 500 is a server, the obtaining module 601 may further obtain the heat information of the first old-version hot-spot compiling unit or the second old-version hot-spot compiling unit by:
acquiring compiling optimization information of a plurality of old versions from different user terminals aiming at each old version hot spot compiling unit; counting the number of the compiling optimization information containing the old version hot spot compiling units in a plurality of the compiling optimization information of the old version; and calculating the ratio of the counted number to the acquired number of compiling optimization information to obtain the heat information of the old version hot spot compiling unit.
Optionally, in this embodiment, when the electronic device 500 is a user terminal, the obtaining module 602 may obtain the heat information of the first legacy hot spot compiling unit or the second legacy hot spot compiling unit by:
Counting the calling times of each compiling unit of the old version application program in a preset time period aiming at each old version hot spot compiling unit in the running process of the old version application program; acquiring the calling times of the old version hot spot compiling unit in a preset time period and the maximum calling times of a single compiling unit of the old version application program in the preset time period; and calculating the ratio of the calling times of the old-version hot spot compiling unit to the maximum calling times to obtain the heat information of the old-version hot spot compiling unit.
The generating module 603 is configured to generate the new version of compiling optimization information according to the searched target compiling unit.
It will be clearly understood by those skilled in the art that, for convenience and brevity of description, the specific working process of the above-described apparatus and module may refer to the corresponding process in the foregoing method embodiment, which is not repeated herein.
In the several embodiments provided herein, the illustrated or discussed coupling or direct coupling or communication connection of the modules to each other may be through some interfaces, indirect coupling or communication connection of devices or modules, electrical, mechanical, or other forms.
In addition, each functional module in each embodiment of the present application may be integrated into one processing module, or each module may exist alone physically, or two or more modules may be integrated into one module. The integrated modules may be implemented in hardware or in software functional modules.
Referring to fig. 7, a block diagram of a computer readable storage medium 700 according to an embodiment of the present application is shown. The computer readable storage medium 700 has stored therein program code 710, which program code 1100 may be invoked by a processor to perform the methods described in the method embodiments above.
The computer readable storage medium 700 may be an electronic memory such as a flash memory, an EEPROM (electrically erasable programmable read only memory), an EPROM, a hard disk, or a ROM. Optionally, the computer readable storage medium 500 comprises a non-transitory computer readable medium (non-transitory computer-readable storage medium). The computer readable storage medium 700 has memory space for program code 710 that performs any of the method steps described above. The program code can be read from or written to one or more computer program products. Program code 710 may be compressed, for example, in a suitable form.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solution of the present application, and are not limiting thereof; although the present application has been described in detail with reference to the foregoing embodiments, one of ordinary skill in the art will appreciate that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not drive the essence of the corresponding technical solutions to depart from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims (12)
1. A compilation optimization information generation method, the method comprising:
acquiring a new version installation package of an application program;
acquiring identification information of at least one old version hot spot compiling unit of the application program, wherein the identification information comprises identity information;
searching a compiling unit with the identity information of the at least one old version hot spot compiling unit from the new version installation package, and taking the searched compiling unit as a target compiling unit matched with the at least one old version hot spot compiling unit;
and generating compiling optimization information of the new version application program according to the searched target compiling unit.
2. The method as recited in claim 1, further comprising:
acquiring the at least one old version installation package of the application program;
searching the compiling unit with the identity information of the at least one old version hot spot compiling unit from the new version installation package, taking the searched compiling unit as a target compiling unit matched with the at least one old version hot spot compiling unit, and comprising the following steps:
searching compiling units with the identity information of the old version hot spot compiling units from the old version installation package aiming at the identification information of each old version hot spot compiling unit, and acquiring the names of the searched compiling units;
and searching a compiling unit with the name from the new version installation package according to the name, and taking the compiling unit as the target compiling unit.
3. The method according to claim 1 or 2, wherein the old version hot spot compiling units are plural, the plural old version hot spot compiling units include a first old version hot spot compiling unit having first identification information and a second old version hot spot compiling unit having second identification information, the compiling unit having identity information of the at least one old version hot spot compiling unit is searched for from the new version installation package, and the searched compiling unit is used as a target compiling unit matched with the at least one old version compiling unit, and the method includes:
Searching a compiling unit with identity information of a first old version hot spot compiling unit from the new version installation package according to the first identification information, taking the searched compiling unit as a target compiling unit matched with the first old version hot spot compiling unit, searching a compiling unit with identity information of a second old version hot spot compiling unit from the new version installation package according to the second identification information, and taking the searched compiling unit as a target compiling unit matched with the second old version hot spot compiling unit;
generating the first compiling optimization information of the new version according to the searched first target compiling unit, and generating the second compiling optimization information of the new version according to the searched second target compiling unit;
and fusing the second compiling optimization information into the first compiling optimization information to obtain the target compiling optimization information of the new version application program.
4. The method of claim 3, wherein the step of,
the first compilation optimization information includes: third identification information of the first target compiling unit in the new version installation package and heat information of the first old version hot spot compiling unit matched with the first target compiling unit; the second compilation optimization information includes: fourth identification information of the second target compiling unit in the new version installation package and heat information of the second old version hot spot compiling unit matched with the second target compiling unit;
The fusing the second compiling optimization information into the first compiling optimization information includes:
for each piece of fourth identification information in the second compiling optimization information, searching whether target third identification information matched with the fourth identification information exists in the first compiling optimization information;
if no matched target third identification information exists, adding the fourth identification information and the heat information corresponding to the fourth identification information into the first compiling optimization information;
and if the matched target third identification information exists, updating the heat information corresponding to the target third identification information in the first compiling optimization information according to the heat information corresponding to the fourth identification information.
5. The method according to claim 4, wherein updating the heat information corresponding to the target third identification information in the first compilation optimization information according to the heat information corresponding to the fourth identification information includes:
determining the weight of the heat information corresponding to the fourth identification information according to the span information of the second old version and the new version, and determining the weight of the heat information corresponding to the target third identification information according to the span information of the first old version and the new version, wherein the weight of the heat information and the span information are in inverse proportion relation;
And carrying out weighted summation on the heat information corresponding to the fourth identification information and the heat information corresponding to the target third identification information according to the determined weight to obtain updated heat information.
6. The method according to claim 4 or 5, further comprising, after fusing the second compilation optimization information into the first compilation optimization information to obtain the new version of target compilation optimization information:
searching whether identification information with the corresponding heat information smaller than a set threshold exists in the target compiling optimization information;
if the identification information exists, deleting the identification information and the heat information corresponding to the identification information.
7. The method according to claim 4 or 5, wherein the method is applied to a server, and the hot information of the first legacy hot spot compiling unit or the second legacy hot spot compiling unit is obtained by:
acquiring compiling optimization information of a plurality of old versions from different user terminals aiming at each old version hot spot compiling unit;
counting the number of the compiling optimization information containing the old version hot spot compiling units in a plurality of the compiling optimization information of the old version;
And calculating the ratio of the counted number to the acquired number of compiling optimization information to obtain the heat information of the old version hot spot compiling unit.
8. The method according to claim 4 or 5, wherein the method is applied to a user terminal, and the hot information of the first legacy hot spot compiling unit or the second legacy hot spot compiling unit is obtained by:
counting the calling times of each compiling unit of the old version application program in a preset time period aiming at each old version hot spot compiling unit in the running process of the old version application program;
acquiring the calling times of the old version hot spot compiling unit in a preset time period and the maximum calling times of a single compiling unit of the old version application program in the preset time period;
and calculating the ratio of the calling times of the old-version hot spot compiling unit to the maximum calling times to obtain the heat information of the old-version hot spot compiling unit.
9. A compilation optimization information generating apparatus, the apparatus comprising:
the system comprises an acquisition module, a storage module and a storage module, wherein the acquisition module is used for acquiring a new version installation package of an application program and acquiring identification information of at least one old version hot spot compiling unit of the application program, and the identification information comprises identity information;
The searching module is used for searching the compiling unit with the identity information of the at least one old version hot spot compiling unit from the new version installation package, and taking the searched compiling unit as a target compiling unit matched with the at least one old version hot spot compiling unit;
and the generating module is used for generating compiling optimization information of the new version application program according to the searched target compiling unit.
10. The apparatus of claim 9, wherein the old-version hotspot compiling units are plural, and the plurality of old-version hotspot compiling units include a first old-version hotspot compiling unit having first identification information and a second old-version hotspot compiling unit having second identification information; the searching module comprises:
the searching sub-module is used for searching the compiling unit with the identity information of the at least one old version hot spot compiling unit from the new version installation package according to the first identification information, taking the searched compiling unit as a target compiling unit matched with the first old version hot spot compiling unit, searching the compiling unit with the identity information of a second old version hot spot compiling unit from the new version installation package according to the second identification information, and taking the searched compiling unit as a target compiling unit matched with the second old version hot spot compiling unit;
The generation sub-module is used for generating the first compiling optimization information of the new version according to the searched first target compiling unit and generating the second compiling optimization information of the new version according to the searched second target compiling unit;
and the fusion sub-module is used for fusing the second compiling optimization information into the first compiling optimization information to obtain the new version of target compiling optimization information.
11. An electronic device, comprising:
one or more processors;
a memory;
one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs configured to perform the method of any of claims 1-8.
12. A computer readable storage medium, characterized in that the computer readable storage medium has stored therein a program code, which is callable by a processor for performing the method according to any one of claims 1-8.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911087681.9A CN112783500B (en) | 2019-11-08 | 2019-11-08 | Method and device for generating compiling optimization information and electronic equipment |
PCT/CN2020/124067 WO2021088686A1 (en) | 2019-11-08 | 2020-10-27 | Compiler optimization information generating method and apparatus, and electronic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911087681.9A CN112783500B (en) | 2019-11-08 | 2019-11-08 | Method and device for generating compiling optimization information and electronic equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112783500A CN112783500A (en) | 2021-05-11 |
CN112783500B true CN112783500B (en) | 2024-01-05 |
Family
ID=75748459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911087681.9A Active CN112783500B (en) | 2019-11-08 | 2019-11-08 | Method and device for generating compiling optimization information and electronic equipment |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112783500B (en) |
WO (1) | WO2021088686A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116088888B (en) * | 2022-07-22 | 2023-10-31 | 荣耀终端有限公司 | Application program updating method and related device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109313639A (en) * | 2016-12-06 | 2019-02-05 | 华为技术有限公司 | The system and method for query execution are carried out in DBMS |
CN109960507A (en) * | 2017-12-14 | 2019-07-02 | 广东欧珀移动通信有限公司 | Compile optimization method, device, storage medium, intelligent terminal and server |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013162548A1 (en) * | 2012-04-25 | 2013-10-31 | Empire Technology Development, Llc | Certification for flexible resource demand applications |
US20170024230A1 (en) * | 2014-03-31 | 2017-01-26 | Yunpeng Li | Method, apparatus, and computer-readable medium for ofuscating execution of an application on a virtual machine |
-
2019
- 2019-11-08 CN CN201911087681.9A patent/CN112783500B/en active Active
-
2020
- 2020-10-27 WO PCT/CN2020/124067 patent/WO2021088686A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109313639A (en) * | 2016-12-06 | 2019-02-05 | 华为技术有限公司 | The system and method for query execution are carried out in DBMS |
CN109960507A (en) * | 2017-12-14 | 2019-07-02 | 广东欧珀移动通信有限公司 | Compile optimization method, device, storage medium, intelligent terminal and server |
Also Published As
Publication number | Publication date |
---|---|
CN112783500A (en) | 2021-05-11 |
WO2021088686A1 (en) | 2021-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109558748B (en) | Data processing method and device, electronic equipment and storage medium | |
CN111061483B (en) | Compiling optimization method and device and electronic equipment | |
CN111061484A (en) | Code compiling method, device, server, user terminal and readable medium | |
CN107506256B (en) | Method and device for monitoring crash data | |
CN112154420B (en) | Automatic intelligent cloud service testing tool | |
CN110601819B (en) | Processing method for random number, block chain link point device and storage medium | |
CN108647032B (en) | Application loading method and device, computer device and computer readable storage medium | |
CN110688096B (en) | Method and device for constructing application program containing plug-in, medium and electronic equipment | |
CN114238948A (en) | Application program detection method and device, electronic equipment and storage medium | |
CN110928548B (en) | Data processing method and device | |
CN112948026A (en) | Hotspot code processing method and device, server, electronic equipment and storage medium | |
CN112559088A (en) | Configuration file optimization method, device, server and storage medium | |
CN113672224A (en) | Method and device for generating small program page code and computer equipment | |
CN112783500B (en) | Method and device for generating compiling optimization information and electronic equipment | |
CN109145589B (en) | Application program acquisition method and device | |
CN114356712A (en) | Data processing method, device, equipment, readable storage medium and program product | |
CN113608800A (en) | Project starting method and device, electronic equipment and storage medium | |
CN107451050B (en) | Function acquisition method and device and server | |
CN115705294B (en) | Method, device, electronic equipment and medium for acquiring function call information | |
CN116185492A (en) | Multi-platform SDK construction method, device, equipment, system and computer readable medium | |
CN112783501A (en) | Hot spot compiling unit determining method and device and server | |
CN112799690A (en) | Information processing method, device, equipment and storage medium | |
CN113031953A (en) | Application program pre-compiling method and device, electronic equipment and server | |
CN113010172B (en) | Processing method, device and system of configuration file and storage medium | |
CN117883789B (en) | Data acquisition method, apparatus, device, readable storage medium, and program product |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |