CN110489126A - Execution method and apparatus, storage medium and the electronic device of compiler task - Google Patents
Execution method and apparatus, storage medium and the electronic device of compiler task Download PDFInfo
- Publication number
- CN110489126A CN110489126A CN201910731337.2A CN201910731337A CN110489126A CN 110489126 A CN110489126 A CN 110489126A CN 201910731337 A CN201910731337 A CN 201910731337A CN 110489126 A CN110489126 A CN 110489126A
- Authority
- CN
- China
- Prior art keywords
- group
- docker container
- task
- compiled
- container
- 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.)
- Granted
Links
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The invention discloses execution method and apparatus, storage medium and the electronic devices of a kind of compiler task.Wherein, this method comprises: obtaining one group of task to be compiled;Determine the concurrent quantity of translation and compiling environment locating for task to be compiled and task to be compiled;One group of image file that QCI distributed compilation server obtains one group of application container engine docker container corresponding with translation and compiling environment and concurrent quantity is identified by quality of service classes;Send task to be compiled in one group of application container engine docker container of distributed autonomous working, wherein one group of task to be compiled is divided into each docker container in one group of docker container;It obtains one group of docker container distribution and executes the corresponding obtained compiling result of task to be compiled in task to be compiled.The present invention solves the time-consuming technical problem of the compiling to task in the related technology.
Description
Technical field
The present invention relates to computer fields, are situated between in particular to a kind of execution method and apparatus of compiler task, storage
Matter and electronic device.
Background technique
Continuous integrating (Continuous Integration, referred to as CI) and lasting delivery (Continuous
Delivery, referred to as CD) be agile development basis.In continuous integrating and continue pipeline pipeline stream in delivery process
The time-consuming of the links of waterline is extremely important, and especially compiling is time-consuming.Some project compilation times are very long, and dozens of minutes is even
Several hours have seriously affected the efficiency of agile development.
For above-mentioned problem, currently no effective solution has been proposed.
Summary of the invention
The embodiment of the invention provides execution method and apparatus, storage medium and the electronic device of a kind of compiler task, with
At least solve the time-consuming technical problem of the compiling to task in the related technology.
According to an aspect of an embodiment of the present invention, a kind of execution method of compiler task is provided, comprising: obtain one group
Task to be compiled;Send above-mentioned task to be compiled in one group of application container engine docker container of distributed autonomous working,
Wherein, above-mentioned task to be compiled is divided into each docker container in above-mentioned one group of docker container;Obtain above-mentioned one
Group docker container distribution executes the corresponding obtained compiling result of task to be compiled in above-mentioned task to be compiled.
According to another aspect of an embodiment of the present invention, a kind of executive device of compiler task is additionally provided, comprising: first obtains
Modulus block, for obtaining one group of task to be compiled;First determining module, for sending above-mentioned task to be compiled to point above-mentioned
Before one group of application container engine docker container that cloth works independently, translation and compiling environment locating for above-mentioned task to be compiled is determined
And the concurrent quantity of above-mentioned task to be compiled;Second obtains module, compiles for identifying QCI distribution by quality of service classes
Translate one group of mirror image that server obtains above-mentioned one group of docker container corresponding with above-mentioned translation and compiling environment and above-mentioned concurrent quantity
File, wherein the docker container in above-mentioned one group of image file and above-mentioned one group of docker container corresponds;First sends
Module, for sending above-mentioned task to be compiled in one group of application container engine docker container of distributed autonomous working,
In, above-mentioned task to be compiled is divided into each docker container in above-mentioned one group of docker container;Third obtains module,
It is obtained for obtaining corresponding task to be compiled in the above-mentioned task to be compiled of above-mentioned one group of docker container distribution execution
Compile result.
Optionally, above-mentioned apparatus further include: the first starting module, for identifying QCI above by quality of service classes
Distributed compilation server obtains above-mentioned one group of docker container corresponding with above-mentioned translation and compiling environment and above-mentioned concurrent quantity
After one group of image file, the above-mentioned one group of docker container being in idle condition is carried out using above-mentioned one group of image file real
Exampleization operation, to start above-mentioned one group of docker container.
Optionally, above-mentioned apparatus further include: the 4th obtains module, for sending above-mentioned task to be compiled to point above-mentioned
Before one group of application container engine docker container that cloth works independently, the distributed compilation process for being in starting state is obtained
In white list parameter, wherein above-mentioned white list parameter is used to configure corresponding IP address for host, and above-mentioned IP address is for permitting
Perhaps above-mentioned host sends above-mentioned task to be compiled in one group of application container engine docker container of distributed autonomous working;
First sending module includes:
First transmission unit sends distribution for above-mentioned task to be compiled for being based on above-mentioned IP address on above-mentioned host
One group of application container engine docker container that formula works independently.
Optionally, above-mentioned apparatus further include:
Second determining module, in one group of application container for sending above-mentioned task to be compiled to distributed autonomous working
After engine docker container, the IP of distribution to above-mentioned one group of docker container is returned by QCI distributed compilation server
Location;
First setup module, the environment for the IP address of above-mentioned one group of docker container to be arranged in distributed host become
It measures in distcc_hosts, with the context variable values of the above-mentioned distcc_hosts of determination, wherein the ring of above-mentioned distcc_hosts
Border variate-value is used to be associated with the IP address of above-mentioned distributed host and above-mentioned one group of docker container.
Optionally, above-mentioned apparatus further include:
Third determining module, in above-mentioned one group of application for sending above-mentioned task to be compiled to distributed autonomous working
Before container engine docker container, compilation tool used in above-mentioned docker container set is determined;
4th determining module, for determining that one group of application of above-mentioned one group of docker container is held using above-mentioned compilation tool
Device engine file, wherein the docker container one in above-mentioned one group of application container engine file and above-mentioned one group of docker container
One is corresponding, and each above-mentioned application container engine file is held for triggering corresponding docker container in above-mentioned one group of docker container
Corresponding task to be compiled in the above-mentioned task to be compiled of row;
5th determining module, for determining one group of script file of above-mentioned one group of docker container, wherein above-mentioned one group
Docker container in script file and above-mentioned one group of docker container corresponds, and each above-mentioned script file is for running
State corresponding docker container in one group of docker container.
Optionally, above-mentioned apparatus further include: the 4th obtains module, in the above-mentioned one group of docker container of above-mentioned acquisition point
Cloth executes in above-mentioned task to be compiled before the corresponding obtained compiling result of task to be compiled, obtains one group of compiling life
It enables, wherein the docker container in above-mentioned one group of compiler directive and above-mentioned one group of docker container corresponds, each above-mentioned volume
Order is translated for being used by corresponding above-mentioned docker container to execute corresponding task to be compiled in above-mentioned task to be compiled;To
Each docker container in above-mentioned one group of docker container sends corresponding compiler directive in above-mentioned one group of compiler directive;Third
Obtaining module includes: second acquisition unit, for obtaining above-mentioned compiling result in caching from compiler, wherein above-mentioned compiling knot
Fruit is that each docker container in above-mentioned one group of docker container is corresponding above-mentioned using corresponding above-mentioned compiler directive execution
It result that task to be compiled obtains and is stored in above-mentioned compiler caching.
Optionally, above-mentioned apparatus further include: the second starting module, for obtaining above-mentioned compiling knot in caching from compiler
Before fruit, above-mentioned compiler is started by modification script file and is cached, wherein above-mentioned script file is for determining above-mentioned compiling
Device caches the distributed tool version being applicable in;Or, third starting module, slow for starting above-mentioned compiler by soft link
It deposits, wherein above-mentioned soft link is for marking the address of above-mentioned compiler caching.
Optionally, above-mentioned first acquisition module includes: the first determination unit, for determining building order, wherein above-mentioned structure
Build the concurrent quantity that order is used to indicate above-mentioned task to be compiled;Second determination unit, for determining that above-mentioned one group of docker holds
External member version is compiled used in each docker container in device;Third determination unit, for determining above-mentioned each docker
Image file used in container;4th determination unit is used for above-mentioned building order, compiling external member version and above-mentioned image
File is determined as above-mentioned one group of compiler directive.
Optionally, above-mentioned apparatus further include: release module, for obtaining above-mentioned one group of docker container distribution execution
In above-mentioned task to be compiled after the corresponding obtained compiling result of task to be compiled, discharge in above-mentioned one group of docker container
Each docker container.
Optionally, each docker container in above-mentioned one group of docker container is located on block chain node.
Another aspect according to an embodiment of the present invention, additionally provides a kind of storage medium, and meter is stored in the storage medium
Calculation machine program, wherein the computer program is arranged to execute the execution method of above-mentioned compiler task when operation.
Another aspect according to an embodiment of the present invention, additionally provides a kind of electronic device, including memory, processor and deposits
Store up the computer program that can be run on a memory and on a processor, wherein above-mentioned processor passes through computer program and executes
The execution method of above-mentioned compiler task.
In embodiments of the present invention, using one group of task to be compiled of acquisition;It sends task to be compiled to distributed independent
One group of application container engine docker container of work, wherein task to be compiled is divided into each in one group of docker container
In a docker container;One group of docker container distribution is obtained to execute in task to be compiled obtained by corresponding task to be compiled
Compiling result mode, by one group of docker container treat compiler task carry out distributed compilation, reached to compiling appoint
Business distributed compilation, and the purpose of compiler task progress load balancing appoints compiling to realize using docker container
The technical effect that business quickly compiles, and then solve the time-consuming technical problem of the compiling to task in the related technology.
Detailed description of the invention
The drawings described herein are used to provide a further understanding of the present invention, constitutes part of this application, this hair
Bright illustrative embodiments and their description are used to explain the present invention, and are not constituted improper limitations of the present invention.In the accompanying drawings:
Fig. 1 is a kind of signal of the application environment of the execution method of optional compiler task according to an embodiment of the present invention
Figure;
Fig. 2 is a kind of flow diagram of the execution method of optional compiler task according to an embodiment of the present invention;
Fig. 3 is a kind of overall architecture schematic diagram of the execution method of optional compiler task according to an embodiment of the present invention;
Fig. 4 is a kind of schematic diagram for optionally using docker container as compiling slave according to an embodiment of the present invention;
Fig. 4 a is a kind of distribution schematic diagram of the optional docker container according to an embodiment of the present invention on block chain;
Fig. 5 is the operational effect schematic diagram of optional QCI pipeline according to an embodiment of the present invention a kind of;
Fig. 6 is a kind of overall flow figure of the execution method of optional compiler task according to an embodiment of the present invention;
Fig. 7 is a kind of executive device schematic diagram of optional compiler task according to an embodiment of the present invention;
Fig. 8 is a kind of structural schematic diagram of optional electronic device according to an embodiment of the present invention.
Specific embodiment
In order to enable those skilled in the art to better understand the solution of the present invention, below in conjunction in the embodiment of the present invention
Attached drawing, technical scheme in the embodiment of the invention is clearly and completely described, it is clear that described embodiment is only
The embodiment of a part of the invention, instead of all the embodiments.Based on the embodiments of the present invention, ordinary skill people
The model that the present invention protects all should belong in member's every other embodiment obtained without making creative work
It encloses.
It should be noted that description and claims of this specification and term " first " in above-mentioned attached drawing, "
Two " etc. be to be used to distinguish similar objects, without being used to describe a particular order or precedence order.It should be understood that using in this way
Data be interchangeable under appropriate circumstances, so as to the embodiment of the present invention described herein can in addition to illustrating herein or
Sequence other than those of description is implemented.In addition, term " includes " and " having " and their any deformation, it is intended that cover
Cover it is non-exclusive include, for example, the process, method, system, product or equipment for containing a series of steps or units are not necessarily limited to
Step or unit those of is clearly listed, but may include be not clearly listed or for these process, methods, product
Or other step or units that equipment is intrinsic.
According to an aspect of an embodiment of the present invention, a kind of execution method of compiler task is provided, optionally, as one
The optional embodiment of kind, the execution method of above-mentioned compiler task can be, but not limited to be applied in environment as shown in Figure 1.
Optionally, in the present embodiment, the execution method of above-mentioned compiler task can be, but not limited to be applied to server 102
In, for assisting applications client to the execution process of compilation of compiler task.Wherein, above-mentioned applications client can be, but not limited to
It operates in user equipment 108, which can be, but not limited to as mobile phone, tablet computer, laptop, PC machine
The terminal device of equal supports operation applications client.It include memory 114 in user equipment 108, for storing to be compiled
Business, processor 112, for handling task to be compiled.Task to be compiled is sent to server 102 by user equipment 108.Server
It include database 104 in 102, for storing task to be compiled, processing engine 106, for handling task to be compiled.Such as Fig. 1
Shown, server 102 is connect with one group of docker container, and operation has multiple one group of docker container on one group of docker container,
Task to be compiled is sent in one group of docker container of autonomous working by server 102.One group of docker container will be compiled
Compiling result be sent in server 102.
Optionally, the execution method of above-mentioned compiler task can be, but not limited to the server for being applied to that data can be calculated
In, above-mentioned server and one group of docker container can be can include but is not limited to by network connection, network wireless network or
Cable network.Wherein, which includes: WIFI and other realize the network of wireless communication.Above-mentioned cable network can wrap
It includes but is not limited to: wide area network, Metropolitan Area Network (MAN), local area network.Above-mentioned server 102 can include but is not limited to any to be calculated
Hardware device.
Optionally, as an alternative embodiment, as shown in Fig. 2, the execution method of above-mentioned compiler task includes:
S202: one group of task to be compiled is obtained;
S204: the concurrent quantity of translation and compiling environment locating for task to be compiled and task to be compiled is determined;
S206: QCI distributed compilation server is identified by quality of service classes and is obtained and translation and compiling environment and number of concurrent
Measure one group of image file of corresponding one group of application container engine docker container, wherein one group of image file and one group
Docker container in docker container corresponds;
S208: sending task to be compiled in one group of application container engine docker container of distributed autonomous working,
In, task to be compiled is divided into each docker container in one group of docker container;
S210: it is obtained to obtain corresponding task to be compiled in one group of docker container distribution execution task to be compiled
Compile result.
Optionally, in the present embodiment, the execution method of above-mentioned compiler task can be, but not limited to be applied to compiler task
Scene in.Wherein, task to be compiled can be, but not limited to as various source programs.Above-mentioned is only a kind of example, in the present embodiment
Any restriction is not done to this.
Optionally, in the present embodiment, task to be compiled include but is not limited to be multiple source programs, in a source program
Multiple subprograms.For example, M tasks to be compiled are given N number of container, wherein M, N are greater than 1 natural number.
Optionally, compilation tool in the present embodiment includes but is not limited to Distributed C/C++ compilation tool distcc.
Distcc can organize the multiple stage computers in a network while carry out some compiler task.Main operational principle is: will be originally
The some files compiled using native central processor (Central Processing Unit, referred to as CPU) are needed, point
It is dealt on other more machines, more machines is allowed to execute compilation process, compiling is completed and then compilation information is sent back to this
Link is executed on machine, finally obtains compiling result.In simple terms, exactly by the way that the main compilation process for expending resource to be distributed to
The mode executed on remote compilation machine, so that original separate unit compilation process is converted in order to which more compile, whole compilation time
It reduces.
Optionally, in the present embodiment, it can use the information that compiler caching ccache tool caching compiling generates, and
The information of cache is used in the specific part of compiling, saves compilation time.Ccache has cached volume when compiling for the first time
Output is translated, in the buffer header file expansion information preservation, is preferentially updated again when having change using caching when compiling for second
Caching.
Optionally, it uses distcc as distributed compilation tool in the present embodiment, is made using main service routine dmucs
For the load balancing tool of distcc distributed compilation, use ccache as compiling cache tools.As shown in figure 3, being this reality
Apply the overall architecture schematic diagram in example, wherein the following steps are included:
S1, host distcc ccache obtain task to be compiled.
Mission dispatching to be compiled is carried out the volume of task to be edited by S2, host into each compiling slave compiled in cluster
Volume.
S3, ccache caching compiling slave treat the compilation information of compiler task, and compilation information is sent in host.
Optionally, the compiling slave in above-mentioned distributed compilation cluster uses docker container.Made using docker container
Schematic diagram for compiling slave is as shown in Figure 4.
Optionally, in the present embodiment, image file include but is not limited to be docker mirror image, can be according to be compiled
The difference of the relied on translation and compiling environment of business, makes multiple docker translation and compiling environment mirror images.Wherein, it needs to install in docker mirror image
The compilation tool of corresponding version, compilation tool include but is not limited to include at least one of: distributed compilation tool distcc,
GNU compiler external member gcc, compiler cache ccache, main service routine dmucs.
Through this embodiment, a set of distributed compilation cluster has been built by distcc, ccache and dmuc, can facilitated
Acceleration is compiled to C/C++ intermediate item, more efficiently distributed compilation cluster resource can be efficiently used, and conveniently
The mutually isolated of resource is compiled between carry out task, is easy to dynamic and is adjusted distcc compiling configuration parameter;Simplify distcc/
Ccache operational version, user do not have to concern distcc and ccache environmental structure and parameter configuration problem;It can will averagely appoint
The compilation time of business reduces, and greatly improves the efficiency of compiling.
In an alternative embodiment, by quality of service classes identify QCI distributed compilation server obtain with
After one group of image file of translation and compiling environment and the corresponding one group of docker container of concurrent quantity, method further include:
S2 carries out instantiation operation to one group of docker container being in idle condition using one group of image file, to open
Move one group of docker container.
Optionally, after starting compiles building task, CD platform QCI-distcc is persistently delivered by continuous integrating CI/
Server is required according to the concurrent quantity and translation and compiling environment of task to be compiled, is selected suitable mirror image, is distributed and instantiate one
Idle docker container is criticized as building slave, needs to start distcc daemon when instantiating docker container and services.
Through this embodiment, the instantiation by using docker image file to docker container, to start docker
Container is treated compiler task using multiple docker containers and is compiled, so that making when multiple tasks to be compiled compile simultaneously
With different compiling slaves, the load balancing of each task to be compiled is controlled, it will not phase between each task to be compiled
It mutually influences, improves the speed of compiling.
In an alternative embodiment, in one group of application container for sending task to be compiled to distributed autonomous working
Before engine docker container, method further include:
S1 obtains the white list parameter in the distributed compilation process in starting state, wherein white list parameter is used for
Corresponding IP address is configured for host, IP address is used to that host to be allowed to send the one of distributed autonomous working for task to be compiled
Group application container engine docker container;
Include: by one group of application container engine docker container that task to be compiled is sent to distributed autonomous working
S2 is drawn one group of application container that task to be compiled is sent to distributed autonomous working based on IP address on host
Hold up docker container.
Optionally, in the present embodiment, the allow white list ginseng of specified distccd is needed when instantiating docker container
Number, the docker container after starting become the distcc daemon of this distcc distributed compilation.
Optionally, qci-distcc server determines the IP address of host and distributes the docker in compiling cluster
Container, and after starting docker container, the IP address for the docker container that this compiler task distributes is returned to host.Host to
Docker container corresponding with each IP address distributes task to be compiled.
Through this embodiment, fail compiler task is distributed in each docker container by the IP address of host and is carried out
Distributed compilation not only increases the speed of compiling, and each docker execution distributed compilation can be to each to be compiled
The load balancing of task is controlled, and will not be influenced each other between each task to be compiled, be improved the speed of compiling.
In an alternative embodiment, in one group of application container for sending task to be compiled to distributed autonomous working
After engine docker container, method further include:
S1 returns to the IP address of distribution to one group of docker container by QCI distributed compilation server;
S2 the IP of one group of docker container is arranged in the environmental variance distcc_hosts of distributed host, with true
Determine the context variable values of distcc_hosts, wherein the context variable values of distcc_hosts for be associated with distributed host and
The IP address of one group of docker container.
Optionally, in the present embodiment, the IP address of the docker container of this compiling distribution is added to by compiling host
In the environmental variance distcc_hosts for compiling host;The IP address of docker container is stored in container IP list.
Through this embodiment, by the way that the IP address of docker container to be back in host, host can be according to docker
The IP address of container distributes task to be compiled, improves the efficiency of distributed compilation.
In an alternative embodiment, in one group of application container for sending task to be compiled to distributed autonomous working
Before engine docker container, method further include:
S1 determines compilation tool used in docker container set;
S2 determines one group of application container engine file of one group of docker container using compilation tool, wherein one group is answered
It is corresponded with the docker container in container engine file and one group of docker container, each application container engine file is used for
It triggers corresponding docker container in one group of docker container and executes corresponding task to be compiled in task to be compiled;
S3 determines one group of script file of one group of docker container, wherein one group of script file and one group of docker hold
Docker container in device corresponds, and each script file holds for running corresponding docker in one group of docker container
Device.
Optionally, in the present embodiment, compilation tool used in docker container set includes but is not limited to distribution
Compilation tool distcc, GNU compiler external member gcc, compiler cache ccache, main service routine dmucs.
Optionally, application container engine file Dockerfile include but is not limited to be the following contents:
Optionally, script file includes but is not limited to the following contents:
#!/bin/bash-e
if[-n"$JOBS"];then
Append_params=" $ append_params--jobs $ JOBS "
fi
Distccd--allow=$ net--daemon--verbose--no-detach $ append_params
The starting fortune of docker container is accelerated by the determination to compilation tool and script file by this implementation
Row, improves the efficiency of distributed compilation.
In an alternative embodiment, corresponding in obtaining one group of docker container distribution execution task to be compiled
Before the obtained compiling result of task to be compiled, method further include:
S1 obtains one group of compiler directive, wherein one group of compiler directive and the docker container one in one group of docker container
One is corresponding, and each compiler directive is for being used by corresponding docker container to execute in task to be compiled corresponding to be compiled
Business;Each docker container into one group of docker container sends corresponding compiler directive in one group of compiler directive;
S2 obtains one group of docker container distribution and executes the corresponding obtained volume of task to be compiled in task to be compiled
Translating result includes: that compiling result is obtained from compiler caching, wherein compiling is the result is that each in one group of docker container
Docker container executes result that corresponding task to be compiled obtains using corresponding compiler directive and is stored in compiler and caches
In.
Optionally, in the present embodiment, for example, compiler directive can be to issue orders:
usage:qci_distcc.py[--build_cmd BUILD_CMD][--gcc_version GCC_VERSION]
[--custom_image CUSTOM_IMAGE]。
Optionally, build_cmd: compiling building order, such as: make all-j80.Wherein ,-j is specified simultaneously concurrently wait compile
The number of tasks of compiling is translated, parameter is specified according to business actual conditions.
-- gcc_version: constructing the gcc version of dependence, if do not specified, is defaulted as gcc4.8.5 version.
-- custom_image: the docker mirror image progress distributed compilation whether being had by oneself using business, 0: not using industry
The own mirror image progress distributed compilation building of business, 1: having mirror image progress distributed compilation building by oneself using business.Default does not use
Business has mirror image by oneself and is compiled building.If business compiling building relies on special system library and has made docker
Mirror image, can be used own mirror image as compiling cluster constructing environment (when having mirror image by oneself using business and being compiled building,
Qcifile worker needs the title of the own mirror image of specified services).
Through this embodiment, by the compiler directive of acquisition, the distribution that docker container treats compiler task is realized
Compiling, accelerates the Complied executing of docker container, improves the efficiency of distributed compilation.
In an alternative embodiment, before compiling result is obtained in caching from compiler, method further include:
S1 starts compiler caching by modification script file, wherein script file is for determining that compiler caches institute
Applicable distributed tool version;Or
S2 starts compiler caching by soft link, wherein address of the soft link for marking compiler to cache.
Optionally, in the present embodiment, modification script file includes the following contents:
CC=gcc is changed to: CC=ccache gcc
CXX=g++ is changed to: CXX=ccache g++
Optionally, starting compiler caching by soft link includes the following contents:
ln-s/usr/bin/ccache/usr/local/bin/gcc
ln-s/usr/bin/ccache/usr/local/bin/g++
Through this embodiment, by starting compiler caching, compiling result is quickly cached, compiling is improved
Efficiency.
In an alternative embodiment, obtaining one group of compiler directive includes:
S1 determines building order, wherein building order is used to indicate the concurrent quantity of task to be compiled;
S2 is determined and is compiled external member version used in each docker container in one group of docker container;
S3 determines image file used in each docker container;
Building order, compiling external member version and image file are determined as one group of compiler directive by S4.
Optionally, in the present embodiment, for example, compiler directive can be to issue orders:
usage:qci_distcc.py[--build_cmd BUILD_CMD][--gcc_version GCC_VERSION]
[--custom_image CUSTOM_IMAGE]。
Optionally, build_cmd: compiling building order, such as: make all-j80.Wherein ,-j is specified simultaneously concurrently wait compile
The number of tasks of compiling is translated, parameter is specified according to business actual conditions.
-- gcc_version: constructing the gcc version of dependence, if do not specified, is defaulted as gcc4.8.5 version.
-- custom_image: the docker mirror image progress distributed compilation whether being had by oneself using business, 0: not using industry
The own mirror image progress distributed compilation building of business, 1: having mirror image progress distributed compilation building by oneself using business.Default does not use
Business has mirror image by oneself and is compiled building.If business compiling building relies on special system library and has made docker
Mirror image, can be used own mirror image as compiling cluster constructing environment (when having mirror image by oneself using business and being compiled building,
Qcifile worker needs the title of the own mirror image of specified services).
Through this embodiment, by the compiler directive of acquisition, the distribution that docker container treats compiler task is realized
Compiling, accelerates the Complied executing of docker container, improves the efficiency of distributed compilation.
In an alternative embodiment, obtain one group of docker container distribution execute in task to be compiled it is corresponding to
After the obtained compiling result of compiler task, method further include:
S1 discharges each docker container in one group of docker container.
Optionally.After the completion of task to be compiled compiling, notice qci-distcc server release compiling slave docker
Container resource.
Through this embodiment, by the release to docker container resource, be conducive to subsequent use, improve whole volume
The efficiency translated.
In an alternative embodiment, each docker container in one group of docker container is located at block chain node
On.
Optionally, as described in fig. 4 a, each docker container can be applied in the scene of block chain, each docker
Container is distributed on each node on block chain.
The present invention will be described combined with specific embodiments below:
The present embodiment combination QCI pipeline is illustrated, and calls qci- in the qcifile configuration file of QCI task
Distcc client tool carries out distributed compilation, and method of calling includes first being not limited in qcifile file: python3./
qci_plugin_scripts/distcc/qci_distcc.py--build_cmd'make clean;make all'.QCI
The operational effect figure of pipeline is as shown in Figure 5.
Optionally, the present embodiment includes but is not limited to 3 parts: distributed compilation doker container cluster, docker container
It compiles cluster management and services qci-distcc server and distributed compilation client utility qci-distcc client.Such as
Shown in Fig. 6, comprising the following steps:
S601: determining the machine resources of compiling, and compiling cluster is added after initializing and disposing;
S602: production translation and compiling environment docker mirror image, the difference for the translation and compiling environment that can be relied on according to project make multiple
Docker translation and compiling environment mirror image.Need to install gcc, ccache, dmucs of corresponding version in docker mirror image.
S603: after starting compiling building task, by qci-distcc server according to the number of concurrent and volume of compiler task
Environmental requirement is translated, suitable mirror image is selected, distribute and instantiates the docker container of a collection of free time as building slave.
S604: starting distcc daemon service when instantiation docker container, and the white name of allow of specified distccd
One-parameter, the docker container after starting become the distcc daemon of this distcc distributed compilation.
S605:qci-distcc server distributes the container in compiling cluster, and after starting container, returns to this volume
Translate the IP address of the docker container of task distribution.It compiles host the IP address of the docker container of this compiling distribution is added
Into the environmental variance DISTCC_HOSTS of building host.
S606: starting compiler task.
S607: (N is the quantity constructed parallel) is constructed using distcc.py-build_cmd " make-jN " order.
Optionally, the tool that docker container cluster relies on: gcc, distcc, ccache and the dmucs of corresponding version.
Optionally, docker container compiling cluster management service qci-distcc server is responsible for according to the concurrent of task
Situation and the environmental information of dependence, select suitable mirror image, distribute and instantiate docker container progress distributed compilation.It is real
Starting distcc daemon service when exampleization docker compiles container.After distributing compiling slave resource, the container of distribution is returned
Ip list.
Optionally, distributed compilation client utility qci-distcc client tool mainly realizes following functions:
1) environmental information that compiler task requires is obtained, such as gcc version, compiles the ip information of host, and to qci-
Distcc server request distribution distributed compilation docker container resource;
2) the distcc daemon container ip information that qci-distcc server is returned is added to compiling host
In DISTCC_HOSTS environmental variance;
3) make-j order is called to be compiled;
4) after the completion of compiling, notice qci-distcc server release compiling slave docker container resource.
In conclusion the present embodiment, which is based on distcc, ccache and dmucs, has built a set of general and easy-to-use distribution
Cluster is compiled, can facilitate and acceleration is compiled to C/C++ intermediate item;Distributed compilation machine side based on docker container
Case can more efficiently efficiently use distributed compilation cluster resource, and facilitate the phase of compiling resource between carry out task
Mutually isolation is easy to dynamic and adjusts distcc compiling configuration parameter;Using the distributed compilation group scheme in the present invention, simplify
Distcc/ccache operational version, user do not have to concern distcc and ccache environmental structure and parameter configuration problem;This implementation
The compilation time of task averagely can be reduced half or so, greatly improve compiling by the distributed compilation group scheme in example
Construct efficiency.
Optionally, in the present embodiment, the collaboration processing method of above-mentioned picture can be, but not limited to be applied to picture processing
Scene in.In this scenario, the first account number and it is not involved in collaborative process to the first picture, but collaborative process is requested to send out
It send to the corresponding account number of object to be processed present in the first picture and is handled.
In the present embodiment, the mode of other account number collaborative process pictures is identical as the mode of above-described embodiment, herein not
It repeats again.
It should be noted that for the various method embodiments described above, for simple description, therefore, it is stated as a series of
Combination of actions, but those skilled in the art should understand that, the present invention is not limited by the sequence of acts described because
According to the present invention, some steps may be performed in other sequences or simultaneously.Secondly, those skilled in the art should also know
It knows, the embodiments described in the specification are all preferred embodiments, and related actions and modules is not necessarily of the invention
It is necessary.
According to an aspect of an embodiment of the present invention, a kind of executive device of compiler task is additionally provided.As shown in fig. 7,
The device includes:
First obtains module 72, for obtaining one group of task to be compiled;
First determining module 74, for sending one group of distributed autonomous working above-mentioned for above-mentioned task to be compiled and answering
Before container engine docker container, translation and compiling environment locating for above-mentioned task to be compiled and above-mentioned task to be compiled are determined
Concurrent quantity;
Second obtain module 76, for by quality of service classes identify QCI distributed compilation server acquisition with it is above-mentioned
One group of image file of translation and compiling environment and the corresponding above-mentioned one group of docker container of above-mentioned concurrent quantity, wherein above-mentioned one group
Docker container in image file and above-mentioned one group of docker container corresponds;
First sending module 78, for sending above-mentioned task to be compiled to one group of application container of distributed autonomous working
Engine docker container, wherein above-mentioned task to be compiled is divided into the appearance of each docker in above-mentioned one group of docker container
In device;
Third obtains module 710, executes in above-mentioned task to be compiled for obtaining above-mentioned one group of docker container distribution
The corresponding obtained compiling result of task to be compiled.
Optionally, above-mentioned apparatus further include:
First starting module, for above by quality of service classes mark QCI distributed compilation server obtain with
After one group of image file of above-mentioned translation and compiling environment and the corresponding above-mentioned one group of docker container of above-mentioned concurrent quantity, in use
It states one group of image file and instantiation operation is carried out to the above-mentioned one group of docker container being in idle condition, to start above-mentioned one group
Docker container.
Optionally, above-mentioned apparatus further include:
4th obtains module, in above-mentioned one group of application for sending above-mentioned task to be compiled to distributed autonomous working
Before container engine docker container, the white list parameter in the distributed compilation process in starting state is obtained, wherein on
White list parameter is stated for configuring corresponding IP address for host, above-mentioned IP address is used to allow above-mentioned host will be above-mentioned to be compiled
Task is sent to one group of application container engine docker container of distributed autonomous working;
First sending module includes:
First transmission unit sends distribution for above-mentioned task to be compiled for being based on above-mentioned IP address on above-mentioned host
One group of application container engine docker container that formula works independently.
Optionally, above-mentioned apparatus further include:
Second determining module, in one group of application container for sending above-mentioned task to be compiled to distributed autonomous working
After engine docker container, the IP of distribution to above-mentioned one group of docker container is returned by QCI distributed compilation server
Location;
First setup module, the environment for the IP address of above-mentioned one group of docker container to be arranged in distributed host become
It measures in distcc_hosts, with the context variable values of the above-mentioned distcc_hosts of determination, wherein the ring of above-mentioned distcc_hosts
Border variate-value is used to be associated with the IP address of above-mentioned distributed host and above-mentioned one group of docker container.
Optionally, above-mentioned apparatus further include:
Third determining module, in above-mentioned one group of application for sending above-mentioned task to be compiled to distributed autonomous working
Before container engine docker container, compilation tool used in above-mentioned docker container set is determined;
4th determining module, for determining that one group of application of above-mentioned one group of docker container is held using above-mentioned compilation tool
Device engine file, wherein the docker container one in above-mentioned one group of application container engine file and above-mentioned one group of docker container
One is corresponding, and each above-mentioned application container engine file is held for triggering corresponding docker container in above-mentioned one group of docker container
Corresponding task to be compiled in the above-mentioned task to be compiled of row;
5th determining module, for determining one group of script file of above-mentioned one group of docker container, wherein above-mentioned one group
Docker container in script file and above-mentioned one group of docker container corresponds, and each above-mentioned script file is for running
State corresponding docker container in one group of docker container.
Optionally, above-mentioned apparatus further include:
4th obtains module, for executing above-mentioned task to be compiled in the above-mentioned one group of docker container distribution of above-mentioned acquisition
In before the corresponding obtained compiling result of task to be compiled, obtain one group of compiler directive, wherein above-mentioned one group of compiler directive
It is corresponded with the docker container in above-mentioned one group of docker container, each above-mentioned compiler directive is used for by corresponding above-mentioned
Docker container is used to execute corresponding task to be compiled in above-mentioned task to be compiled;Into above-mentioned one group of docker container
Each docker container sends corresponding compiler directive in above-mentioned one group of compiler directive;
Third obtain module include: second acquisition unit, for obtain above-mentioned compiling in caching from compiler as a result, its
In, above-mentioned compiling is the result is that each docker container in above-mentioned one group of docker container is held using corresponding above-mentioned compiler directive
It result that the corresponding above-mentioned task to be compiled of row obtains and is stored in above-mentioned compiler caching.
Optionally, above-mentioned apparatus further include:
Second starting module, for passing through modification script text before obtaining above-mentioned compiling result in caching from compiler
Part starts above-mentioned compiler caching, wherein above-mentioned script file is used to determine that above-mentioned compiler to cache the distribution being applicable in
Tool version;Or
Third starting module, for starting above-mentioned compiler caching by soft link, wherein above-mentioned soft link is for marking
The address of above-mentioned compiler caching.
Optionally, above-mentioned first acquisition module includes:
First determination unit, for determining building order, wherein above-mentioned building order is used to indicate above-mentioned task to be compiled
Concurrent quantity;
Second determination unit, for determining compiling used in each docker container in above-mentioned one group of docker container
External member version;
Third determination unit, for determining image file used in above-mentioned each docker container;
4th determination unit, for above-mentioned building order, compiling external member version and above-mentioned image file to be determined as
State one group of compiler directive.
Optionally, above-mentioned apparatus further include:
Release module, for corresponding in obtaining the above-mentioned task to be compiled of above-mentioned one group of docker container distribution execution
After the obtained compiling result of task to be compiled, each docker container in above-mentioned one group of docker container is discharged.
Optionally, each docker container in above-mentioned one group of docker container is located on block chain node.
Another aspect according to an embodiment of the present invention additionally provides a kind of for implementing the execution side of above-mentioned compiler task
The electronic device of method is stored in the memory 802 as shown in figure 8, the electronic device includes memory 802 and processor 804
Computer program, the processor 804 are arranged to execute the step in any of the above-described embodiment of the method by computer program.
Optionally, in the present embodiment, above-mentioned electronic device can be located in multiple network equipments of computer network
At least one network equipment.
Optionally, in the present embodiment, above-mentioned processor can be set to execute following steps by computer program:
S1 obtains task to be compiled;
S2: the concurrent quantity of translation and compiling environment locating for task to be compiled and task to be compiled is determined;
S3: QCI distributed compilation server is identified by quality of service classes and is obtained and translation and compiling environment and concurrent quantity
One group of image file of corresponding one group of application container engine docker container, wherein one group of image file and one group of docker
Docker container in container corresponds;
S4 sends the task to be compiled in one group of application container engine docker container of distributed autonomous working,
Wherein, the task to be compiled is divided into each docker container in one group of docker container;
S5 obtains one group of docker container distribution and executes corresponding task institute to be compiled in the task to be compiled
Obtained compiling result.
Optionally, it will appreciated by the skilled person that structure shown in Fig. 8 is only to illustrate, electronic device can also
To be smart phone (such as Android phone, iOS mobile phone), tablet computer, palm PC and mobile internet device
The terminal devices such as (Mobile Internet Devices, MID), PAD.Fig. 8 it does not cause to the structure of above-mentioned electronic device
It limits.For example, electronic device may also include more perhaps less component (such as network interface) or tool than shown in Fig. 8
There is the configuration different from shown in Fig. 8.
Wherein, memory 802 can be used for storing software program and module, in the embodiment of the present invention.Compiler task
The corresponding program instruction/module of execution method and apparatus, processor 804 passes through the software that is stored in memory 802 of operation
Program and module realize the execution method of above-mentioned compiler task thereby executing various function application and data processing
Method.Memory 802 may include high speed random access memory, can also include nonvolatile memory, such as one or more magnetic
Property storage device, flash memory or other non-volatile solid state memories.In some instances, memory 802 can further comprise
The memory remotely located relative to processor 804, these remote memories can pass through network connection to terminal.Above-mentioned network
Example include but is not limited to internet, intranet, local area network, mobile radio communication and combinations thereof.Wherein, memory 802
It specifically can be, but not limited to for task dispatching information to be compiled.It as an example, as shown in figure 8, can in above-mentioned memory 802
With but be not limited to include that first executed in square law device of above-mentioned compiler task obtains module 72, the first determining module 74, the
Two, which obtain module 76, the first sending module 78 and third, obtains module 710.In addition, it can include but being not limited to above-mentioned volume
Other modular units in the executive device device of task are translated, are repeated no more in this example.
Optionally, above-mentioned transmitting device 806 is used to that data to be received or sent via a network.Above-mentioned network tool
Body example may include cable network and wireless network.In an example, transmitting device 806 includes a network adapter
(Network Interface Controller, NIC), can be connected by cable with other network equipments with router to
It can be communicated with internet or local area network.In an example, transmitting device 806 is radio frequency (Radio Frequency, RF)
Module is used to wirelessly be communicated with internet.
In addition, above-mentioned electronic device further include: display 808, for showing above-mentioned task to be compiled;With connection bus
810, for connecting the modules component in above-mentioned electronic device.
The another aspect of embodiment according to the present invention, additionally provides a kind of storage medium, is stored in the storage medium
Computer program, wherein the computer program is arranged to execute the step in any of the above-described embodiment of the method when operation.
Optionally, in the present embodiment, above-mentioned storage medium can be set to store by executing based on following steps
Calculation machine program:
S1 obtains task to be compiled;
S2: the concurrent quantity of translation and compiling environment locating for task to be compiled and task to be compiled is determined;
S3: QCI distributed compilation server is identified by quality of service classes and is obtained and translation and compiling environment and concurrent quantity
One group of image file of corresponding one group of application container engine docker container, wherein one group of image file and one group of docker
Docker container in container corresponds;
S4 sends the task to be compiled in one group of application container engine docker container of distributed autonomous working,
Wherein, the task to be compiled is divided into each docker container in one group of docker container;
S5 obtains one group of docker container distribution and executes corresponding task institute to be compiled in the task to be compiled
Obtained compiling result.
Optionally, in the present embodiment, those of ordinary skill in the art will appreciate that in the various methods of above-described embodiment
All or part of the steps be that the relevant hardware of terminal device can be instructed to complete by program, the program can store in
In one computer readable storage medium, storage medium may include: flash disk, read-only memory (Read-Only Memory,
ROM), random access device (Random Access Memory, RAM), disk or CD etc..
The serial number of the above embodiments of the invention is only for description, does not represent the advantages or disadvantages of the embodiments.
If the integrated unit in above-described embodiment is realized in the form of SFU software functional unit and as independent product
When selling or using, it can store in above-mentioned computer-readable storage medium.Based on this understanding, skill of the invention
Substantially all or part of the part that contributes to existing technology or the technical solution can be with soft in other words for art scheme
The form of part product embodies, which is stored in a storage medium, including some instructions are used so that one
Platform or multiple stage computers equipment (can be personal computer, server or network equipment etc.) execute each embodiment institute of the present invention
State all or part of the steps of method.
In the above embodiment of the invention, it all emphasizes particularly on different fields to the description of each embodiment, does not have in some embodiment
The part of detailed description, reference can be made to the related descriptions of other embodiments.
In several embodiments provided herein, it should be understood that disclosed client, it can be by others side
Formula is realized.Wherein, the apparatus embodiments described above are merely exemplary, such as the division of the unit, and only one
Kind of logical function partition, there may be another division manner in actual implementation, for example, multiple units or components can combine or
It is desirably integrated into another system, or some features can be ignored or not executed.Another point, it is shown or discussed it is mutual it
Between coupling, direct-coupling or communication connection can be through some interfaces, the INDIRECT COUPLING or communication link of unit or module
It connects, can be electrical or other forms.
The unit as illustrated by the separation member may or may not be physically separated, aobvious as unit
The component shown may or may not be physical unit, it can and it is in one place, or may be distributed over multiple
In network unit.It can select some or all of unit therein according to the actual needs to realize the mesh of this embodiment scheme
's.
It, can also be in addition, the functional units in various embodiments of the present invention may be integrated into one processing unit
It is that each unit physically exists alone, can also be integrated in one unit with two or more units.Above-mentioned integrated list
Member both can take the form of hardware realization, can also realize in the form of software functional units.
The above is only a preferred embodiment of the present invention, it is noted that for the ordinary skill people of the art
For member, various improvements and modifications may be made without departing from the principle of the present invention, these improvements and modifications are also answered
It is considered as protection scope of the present invention.
Claims (12)
1. a kind of execution method of compiler task characterized by comprising
Obtain one group of task to be compiled;
Determine the concurrent quantity of translation and compiling environment locating for the task to be compiled and the task to be compiled;
QCI distributed compilation server is identified by quality of service classes to obtain and the translation and compiling environment and the concurrent quantity
One group of image file of corresponding one group of application container engine docker container, wherein one group of image file and described one
Docker container in group docker container corresponds;
Send the task to be compiled in one group of docker container of distributed autonomous working, wherein described to be compiled
Task is divided into each docker container in one group of docker container;
It is obtained to obtain corresponding task to be compiled in one group of docker container distribution execution task to be compiled
Compile result.
2. the method according to claim 1, wherein identifying QCI distribution by quality of service classes described
Compiler server obtains one group of mirror of one group of docker container corresponding with the translation and compiling environment and the concurrent quantity
After picture file, the method also includes:
Instantiation operation is carried out to the one group of docker container being in idle condition using one group of image file, to open
Move one group of docker container.
3. the method according to claim 1, wherein
It is described by the task to be compiled be sent to distributed autonomous working one group of application container engine docker container it
Before, the method also includes: obtain the white list parameter in the distributed compilation process in starting state, wherein described white
Name one-parameter is used to configure corresponding IP address for host, and the IP address is for allowing the host by the task to be compiled
It is sent to one group of application container engine docker container of distributed autonomous working;
One group of application container engine docker container for sending distributed autonomous working for the task to be compiled includes:
On the host the task to be compiled is sent to based on the IP address one group of application container of distributed autonomous working
Engine docker container.
4. the method according to claim 1, wherein sending distributed independent work for the task to be compiled
After the one group of application container engine docker container made, the method also includes:
The IP address of distribution to one group of docker container is returned by QCI distributed compilation server;
The IP address of one group of docker container is arranged in the environmental variance distcc_hosts of distributed host, with true
The context variable values of the fixed distcc_hosts, wherein the context variable values of the distcc_hosts are described for being associated with
The IP address of distributed host and one group of docker container.
5. the method according to claim 1, wherein sending distribution solely for the task to be compiled described
Before one group of application container engine docker container of vertical work, the method also includes:
Determine compilation tool used in the docker container set;
One group of application container engine file of one group of docker container is determined using the compilation tool, wherein described
Docker container in one group of application container engine file and one group of docker container corresponds, and each application is held
Device engine file is used to trigger right in the corresponding docker container execution task to be compiled in one group of docker container
The task to be compiled answered;
Determine one group of script file of one group of docker container, wherein one group of script file and described one group
Docker container in docker container corresponds, and each script file is for running in one group of docker container
Corresponding docker container.
6. the method according to claim 1, wherein
Corresponding task institute to be compiled in one group of docker container distribution execution task to be compiled is obtained described
Before obtained compiling result, the method also includes: obtain one group of compiler directive, wherein one group of compiler directive and institute
The docker container stated in one group of docker container corresponds, and each compiler directive is used for by the corresponding docker
Container is used to execute corresponding task to be compiled in the task to be compiled;It is each into one group of docker container
Docker container sends corresponding compiler directive in one group of compiler directive;
It is described to obtain in one group of docker container distribution execution task to be compiled obtained by corresponding task to be compiled
To compiling result include: from compiler caching in obtain the compiling result, wherein it is described compiling the result is that described one group
Each docker container in docker container executes the corresponding task to be compiled using the corresponding compiler directive and obtains
To result and be stored in compiler caching.
7. according to the method described in claim 6, it is characterized in that, obtained in being cached from compiler the compiling result it
Before, the method also includes:
Start the compiler caching by modification script file, wherein the script file is for determining the compiler
Cache the distributed tool version being applicable in;Or
Start the compiler caching by soft link, wherein the soft link is for marking the address of the compiler caching.
8. according to the method described in claim 6, it is characterized in that, one group of compiler directive of the acquisition includes:
Determine building order, wherein the building order is used to indicate the concurrent quantity of the task to be compiled;
It determines and compiles external member version used in each docker container in one group of docker container;
Determine image file used in each docker container;
Building order, compiling external member version and the image file are determined as one group of compiler directive.
9. the method according to claim 1, wherein obtaining described in one group of docker container distribution execution
In task to be compiled after the corresponding obtained compiling result of task to be compiled, the method also includes:
Discharge each docker container in one group of docker container.
10. the method according to claim 1, wherein the method also includes:
Each docker container in one group of docker container is located on block chain node.
11. a kind of executive device of compiler task characterized by comprising
First obtains module, for obtaining one group of task to be compiled;
First determining module, for determining the concurrent of translation and compiling environment locating for the task to be compiled and the task to be compiled
Quantity;
Second obtains module, obtains and the compiling ring for identifying QCI distributed compilation server by quality of service classes
One group of image file of border and the corresponding one group of application container engine docker container of the concurrent quantity, wherein described one
Docker container in group image file and one group of docker container corresponds;
First sending module, for sending the task to be compiled in one group of application container engine of distributed autonomous working
Docker container, wherein the task to be compiled is divided into each docker container in one group of docker container;
Third obtains module, corresponding to be compiled in the docker container distribution execution task to be compiled for obtaining
The obtained compiling result of task.
12. a kind of storage medium, which is characterized in that be stored with computer program in the storage medium, wherein the computer
Program is arranged to execute method described in any one of claims 1 to 10 when operation.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910731337.2A CN110489126B (en) | 2019-08-08 | 2019-08-08 | Compiling task execution method and device, storage medium and electronic device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910731337.2A CN110489126B (en) | 2019-08-08 | 2019-08-08 | Compiling task execution method and device, storage medium and electronic device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110489126A true CN110489126A (en) | 2019-11-22 |
CN110489126B CN110489126B (en) | 2021-09-10 |
Family
ID=68550341
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910731337.2A Active CN110489126B (en) | 2019-08-08 | 2019-08-08 | Compiling task execution method and device, storage medium and electronic device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110489126B (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111008016A (en) * | 2019-11-29 | 2020-04-14 | 宝付网络科技(上海)有限公司 | Multi-environment compiling system and method based on docker container |
CN111061487A (en) * | 2019-12-16 | 2020-04-24 | 厦门市美亚柏科信息股份有限公司 | Container-based load balancing distributed compiling system and method |
CN111090436A (en) * | 2019-12-22 | 2020-05-01 | 苏州浪潮智能科技有限公司 | Jenkins compiling result summarizing method, device and equipment |
CN111814415A (en) * | 2020-07-09 | 2020-10-23 | 长沙海格北斗信息技术有限公司 | Efficient regression testing method for chip verification |
CN111813412A (en) * | 2020-06-28 | 2020-10-23 | 中国科学院计算机网络信息中心 | Method and system for constructing test data set for evaluating binary code comparison tool |
CN112463123A (en) * | 2020-11-25 | 2021-03-09 | 北京字跳网络技术有限公司 | Task compiling method, device, network node, system and storage medium |
CN113127203A (en) * | 2021-04-25 | 2021-07-16 | 华南理工大学 | Deep learning distributed compiler for cloud edge computing and construction method |
CN113986239A (en) * | 2021-10-22 | 2022-01-28 | 烽火通信科技股份有限公司 | Distributed compiling method, device, equipment and readable storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170053231A1 (en) * | 2015-04-21 | 2017-02-23 | Somil Desai | Automated electronic management system for international trade, logistics and pre-shipment inspection |
CN107343000A (en) * | 2017-07-04 | 2017-11-10 | 北京百度网讯科技有限公司 | Method and apparatus for handling task |
CN107590033A (en) * | 2017-09-07 | 2018-01-16 | 网宿科技股份有限公司 | A kind of methods, devices and systems of establishment DOCKER containers |
CN108984179A (en) * | 2018-06-28 | 2018-12-11 | 北京奇安信科技有限公司 | Process of compilation method and device under a kind of Linux |
CN109936540A (en) * | 2017-12-18 | 2019-06-25 | 厦门本能管家科技有限公司 | A kind of block chain node creation method based on wallet account book |
-
2019
- 2019-08-08 CN CN201910731337.2A patent/CN110489126B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170053231A1 (en) * | 2015-04-21 | 2017-02-23 | Somil Desai | Automated electronic management system for international trade, logistics and pre-shipment inspection |
CN107343000A (en) * | 2017-07-04 | 2017-11-10 | 北京百度网讯科技有限公司 | Method and apparatus for handling task |
CN107590033A (en) * | 2017-09-07 | 2018-01-16 | 网宿科技股份有限公司 | A kind of methods, devices and systems of establishment DOCKER containers |
CN109936540A (en) * | 2017-12-18 | 2019-06-25 | 厦门本能管家科技有限公司 | A kind of block chain node creation method based on wallet account book |
CN108984179A (en) * | 2018-06-28 | 2018-12-11 | 北京奇安信科技有限公司 | Process of compilation method and device under a kind of Linux |
Non-Patent Citations (1)
Title |
---|
MARKQIAN86: "《使用distcc进行分布式编译来提高编译速度 - markqian86 - C++博客》", 8 June 2018 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111008016A (en) * | 2019-11-29 | 2020-04-14 | 宝付网络科技(上海)有限公司 | Multi-environment compiling system and method based on docker container |
CN111008016B (en) * | 2019-11-29 | 2024-05-14 | 宝付网络科技(上海)有限公司 | Multi-environment compiling system and method based on docker container |
CN111061487A (en) * | 2019-12-16 | 2020-04-24 | 厦门市美亚柏科信息股份有限公司 | Container-based load balancing distributed compiling system and method |
CN111090436A (en) * | 2019-12-22 | 2020-05-01 | 苏州浪潮智能科技有限公司 | Jenkins compiling result summarizing method, device and equipment |
CN111813412A (en) * | 2020-06-28 | 2020-10-23 | 中国科学院计算机网络信息中心 | Method and system for constructing test data set for evaluating binary code comparison tool |
CN111814415A (en) * | 2020-07-09 | 2020-10-23 | 长沙海格北斗信息技术有限公司 | Efficient regression testing method for chip verification |
CN112463123A (en) * | 2020-11-25 | 2021-03-09 | 北京字跳网络技术有限公司 | Task compiling method, device, network node, system and storage medium |
CN113127203A (en) * | 2021-04-25 | 2021-07-16 | 华南理工大学 | Deep learning distributed compiler for cloud edge computing and construction method |
CN113127203B (en) * | 2021-04-25 | 2022-06-14 | 华南理工大学 | Deep learning distributed compiler for cloud edge computing and construction method |
CN113986239A (en) * | 2021-10-22 | 2022-01-28 | 烽火通信科技股份有限公司 | Distributed compiling method, device, equipment and readable storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN110489126B (en) | 2021-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110489126A (en) | Execution method and apparatus, storage medium and the electronic device of compiler task | |
CN108139935B (en) | The extension of the resource constraint of service definition container | |
CN109976774B (en) | Block link point deployment method, device, equipment and storage medium | |
CN105117289B (en) | Method for allocating tasks, apparatus and system based on cloud test platform | |
US5996016A (en) | Reinitiation of bind calls for IP applications concurrently executing with alternate address | |
CN107807815B (en) | Method and device for processing tasks in distributed mode | |
CN107423823B (en) | R language-based machine learning modeling platform architecture design method | |
CN103997544A (en) | Resource downloading method and device | |
CN111026634A (en) | Interface automation test system, method, device and storage medium | |
CN110109748A (en) | A kind of hybrid language task executing method, device and cluster | |
CN105745621A (en) | Emulating test distributed application on server | |
CN111459621B (en) | Cloud simulation integration and scheduling method and device, computer equipment and storage medium | |
CN111078516A (en) | Distributed performance test method and device and electronic equipment | |
KR20210060203A (en) | Apparatus and method for reconfiguring microservice architecture | |
CN105553684A (en) | Communication system and applied router upgrading method thereof | |
CN113867600A (en) | Development method and device for processing streaming data and computer equipment | |
CN109614232A (en) | Task processing method, device, storage medium and electronic device | |
CN110225082B (en) | Task processing method and device, electronic equipment and computer readable medium | |
Großmann et al. | Continuous integration of applications for ONOS | |
CN111858041A (en) | Data processing method and server | |
Brogi et al. | Modelling the behaviour of management operations in cloud-based applications | |
CN109508193B (en) | Application deployment and operation method, device, terminal equipment and medium | |
CN104821939B (en) | It is a kind of to be used to implement computer and the method and apparatus of mobile equipment room asynchronous communication | |
CN100386726C (en) | Method and system for renewing long-distance operation and control of computer platform system programe | |
US9537931B2 (en) | Dynamic object oriented remote instantiation |
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 |