CN108664323B - Data transmission method and device based on multiple processors - Google Patents

Data transmission method and device based on multiple processors Download PDF

Info

Publication number
CN108664323B
CN108664323B CN201710199144.8A CN201710199144A CN108664323B CN 108664323 B CN108664323 B CN 108664323B CN 201710199144 A CN201710199144 A CN 201710199144A CN 108664323 B CN108664323 B CN 108664323B
Authority
CN
China
Prior art keywords
data
interface
subdata
transmitted
data transmission
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
Application number
CN201710199144.8A
Other languages
Chinese (zh)
Other versions
CN108664323A (en
Inventor
彭宇龙
韩杰
王艳辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Visionvera Information Technology Co Ltd
Original Assignee
Visionvera Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Visionvera Information Technology Co Ltd filed Critical Visionvera Information Technology Co Ltd
Priority to CN201710199144.8A priority Critical patent/CN108664323B/en
Publication of CN108664323A publication Critical patent/CN108664323A/en
Application granted granted Critical
Publication of CN108664323B publication Critical patent/CN108664323B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/543User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]

Abstract

An embodiment of the present application provides a data transmission method, including: receiving a data transmission task; the data transmission task carries the identification of a target processor of the currently received data; determining a plurality of data receiving interfaces according to the identification of the target processor, and searching the data transmission rate of each data receiving interface; dividing the data to be transmitted into a plurality of subdata with the data volume matched with each data transmission rate, and respectively sending the plurality of subdata to each data receiving interface for the target processor to obtain the plurality of subdata from each data receiving interface.

Description

Data transmission method and device based on multiple processors
Technical Field
The present application relates to the field of data processing technologies, and in particular, to a data transmission method based on multiple processors and a data transmission apparatus based on multiple processors.
Background
At present, a data processing system of a computer requires a high data transmission speed to realize high-speed data exchange. Especially for multiprocessor data processing systems, a large amount of data transfer is often required between the processors.
However, the applicant has found that, when data is transmitted between processors, only a single interface is called to transmit data, and other interfaces are idle, so that data transmission between processors through a single data receiving interface cannot meet the requirement of data interaction. That is, the current data transmission method has a problem of low data transmission efficiency.
Disclosure of Invention
The embodiment of the application provides a data transmission method for meeting the data interaction requirement among multiple processors aiming at the technical problem to be solved.
In order to solve the above problem, the present application provides a multiprocessor-based data transmission method, including:
receiving a data transmission task; the data transmission task carries the identification of a target processor of the currently received data;
determining a plurality of data receiving interfaces according to the identification of the target processor, and searching the data transmission rate of each data receiving interface;
dividing the data to be transmitted into a plurality of subdata with the data volume matched with each data transmission rate, and respectively sending the plurality of subdata to each data receiving interface for the target processor to obtain the plurality of subdata from each data receiving interface.
Optionally, the dividing the data to be transmitted into a plurality of sub-data whose data volume matches each data transmission rate includes:
calculating the sum of the data transmission rates of all the data receiving interfaces;
calculating the rate ratio of each data transmission rate relative to the sum of the rates;
multiplying each rate ratio by the data quantity of the data to be transmitted to obtain the data quantity to be distributed of each data receiving interface;
and dividing the data to be transmitted into a plurality of subdata of which the data volume accords with the data volume to be distributed.
Optionally, before the sending the plurality of sub-data to each data receiving interface respectively, the method further includes:
and adding a data identifier to be transmitted to the subdata, so that the target processor can restore the subdata into the data to be transmitted according to the data identifier to be transmitted after acquiring the subdata.
Optionally, the sending the plurality of sub data to each data receiving interface respectively includes:
calling a plurality of data sending interfaces matched with the data receiving interfaces locally;
and simultaneously sending the plurality of subdata to each data receiving interface by using each data sending interface.
In order to solve the above problem, the present application further provides a data transmission method based on multiple processors, where the method includes:
acquiring a plurality of subdata added with data identification to be transmitted from each data receiving interface; the subdata is the data transmission rate of a plurality of data receiving interfaces determined according to the identification of the target processor after the data transmission processor receives the data transmission task carrying the identification of the target processor of the currently received data, and divides the data to be transmitted into data with the data volume matched with the data transmission rate and transmitted to each data receiving interface;
and restoring the plurality of subdata into the data to be transmitted according to the data identification to be transmitted.
In order to solve the above problem, the present application further provides a multiprocessor-based data transmission apparatus, including:
the task receiving module is used for receiving a data transmission task; the data transmission task carries the identification of a target processor of the currently received data;
the interface determining module is used for determining a plurality of data receiving interfaces according to the identification of the target processor and searching the data transmission rate of each data receiving interface;
and the data dividing module is used for dividing the data to be transmitted into a plurality of subdata of which the data volume is matched with each data transmission rate, and respectively sending the plurality of subdata to each data receiving interface so that the target processor can obtain the plurality of subdata from each data receiving interface.
Optionally, the data dividing module includes:
the rate sum computing submodule is used for computing the rate sum of the data transmission rate of each data receiving interface;
the rate ratio submodule is used for calculating the rate ratio of each data transmission rate relative to the sum of the rates;
the data amount to be distributed operator module is used for multiplying the rate ratios and the data amount of the data to be transmitted to obtain the data amount to be distributed of each data receiving interface;
and the data dividing submodule is used for dividing the data to be transmitted into a plurality of subdata of which the data volume accords with the data volume to be distributed.
Optionally, the apparatus further comprises:
and the identifier adding module is used for adding a data identifier to be transmitted to the subdata, so that the target processor can restore the subdata into the data to be transmitted according to the data identifier to be transmitted after acquiring the subdata.
Optionally, the data dividing module includes:
the interface calling module is used for calling a plurality of data sending interfaces matched with the data receiving interfaces locally;
and the data sending submodule is used for sending the plurality of subdata to each data receiving interface by adopting each data sending interface.
In order to solve the above problem, the present application further provides a multiprocessor-based data transmission apparatus, including:
the subdata acquisition module is used for acquiring a plurality of subdata added with the data identifier to be transmitted from each data receiving interface; the subdata is the data transmission rate of a plurality of data receiving interfaces determined according to the identification of the target processor after the data transmission processor receives the data transmission task carrying the identification of the target processor of the currently received data, and divides the data to be transmitted into data with the data volume matched with the data transmission rate and transmitted to each data receiving interface;
and the data reduction module is used for reducing the plurality of subdata into the data to be transmitted according to the data identification to be transmitted.
Compared with the prior art, the embodiment of the application has the following advantages:
according to the embodiment of the application, in the data processing system of the multiprocessor, the parallel transmission of a large amount of data is realized by adopting a multi-interface transmission mode, and the data transmission efficiency among the processors is improved.
And for the data transmission among the processors, determining a weighting mode according to the data transmission rate of the interfaces, and determining the data volume of the sub-data distributed to each interface according to the weighting mode, thereby utilizing the processing resources of the interfaces to the maximum extent and further improving the data transmission efficiency among the processors.
Drawings
Fig. 1 is a flowchart illustrating steps of a multiprocessor-based data transmission method according to a first embodiment of the present application;
FIG. 2 is a flowchart illustrating steps of a multiprocessor-based data transmission method according to a second embodiment of the present application;
fig. 3 is a block diagram of a multiprocessor-based data transmission apparatus according to a third embodiment of the present application;
fig. 4 is a block diagram of a multiprocessor-based data transmission apparatus according to a third embodiment of the present application;
FIG. 5 is a block diagram of a data processing system according to the present application.
Detailed Description
In order to make the aforementioned objects, features and advantages of the present application more comprehensible, the present application is described in further detail with reference to the accompanying drawings and the detailed description.
Example one
Fig. 1 is a flowchart illustrating steps of a multiprocessor-based data transmission method according to a first embodiment of the present application, where the method may specifically include the following steps:
step 101, receiving a data transmission task; and the data transmission task carries the identification of the target processor of the current received data.
It should be noted that, in an actual application scenario, a plurality of processors (CPUs), i.e., a multi-core system, may exist in one data Processing system. The main functions of a processor are to interpret computer instructions and to process data in computer software.
The processor may send corresponding data to the other processor to the further processor according to the data transfer task. Thus, the processor that needs to transmit data can be the data transmitting processor, and the processor that receives data can be the data receiving processor. The data transmission method of the embodiment of the application can be applied to a data sending processor.
In practical applications, there may be a case where one or more data sending processors send data to one or more data receiving processors, and those skilled in the art can apply the technical idea of the present application to data transmission in various cases.
In particular implementations, the data sending processor may receive a data transfer task. The data transmission task may carry an identifier of a data receiving processor that currently receives data, and the data receiving processor may be used as a target processor.
Step 102, determining a plurality of data receiving interfaces according to the target processor identifier, and searching the data transmission rate of each data receiving interface.
It should be noted that, in the data processing system, for compatibility, various peripheral interfaces adapted to the processor and the peripheral devices for data transmission may be designed. FIG. 5 is a block diagram of a data processing system according to the present application. As can be seen from the figure, CPU1 and CPU2 exist in one data processing system, and SATAIII, USB3.0, gigabit network and other interfaces for data interaction with peripheral devices are provided between CPU1 and CPU 2. Therefore, in the embodiment of the application, the peripheral interface can be called to realize parallel transmission of a large amount of data.
In a specific implementation, a plurality of data receiving interfaces which need to be called currently can be determined according to the target processor. After determining the data receiving interfaces, the data transmission rates of the respective interfaces may be looked up.
In practical applications, the data transmission rates of the data transmission buses adopted by different data receiving interfaces may be different, for example, the SATAIII transmission rate is 6.0Gb/s, the USB3.0 transmission rate is 5.0Gb/s, and the gigabit interface transmission rate is 1.0 Gb/s.
Step 103, dividing the data to be transmitted into a plurality of subdata with data volume matched with each data transmission rate, and respectively sending the plurality of subdata to each data receiving interface, so that the target processor can obtain the plurality of subdata from each data receiving interface.
In a specific implementation, the data to be sent by the data sending processor to the target processor may be used as the data to be transmitted. For the data to be transmitted, the data may be divided into a plurality of sub-data whose data amount matches each data transmission rate. In general, the number of partitions may be determined according to the number of current interfaces, for example, there are currently three data receiving interfaces, and thus, three partitions may be partitioned.
After dividing the data to be transmitted into subdata, each subdata can be subjected to data interaction with the target processor by adopting a corresponding data receiving interface.
Optionally, the dividing the data to be transmitted into a plurality of sub-data whose data volume matches each data transmission rate includes:
substep S11, calculating a sum of rates of data transmission rates of the data receiving interfaces;
a substep S12 of calculating a rate ratio of each data transmission rate with respect to the sum of the rates;
substep S13, multiplying each rate ratio and the data volume of the data to be transmitted to obtain the data volume to be distributed of each data receiving interface;
and a substep S14, dividing the data to be transmitted into a plurality of sub-data with data volume conforming to the data volume to be distributed.
In a specific implementation, a sum of the data transmission rates of the data receiving interfaces may be calculated. For example, SATAIII transmission rate is 6.0Gb/s, USB3.0 transmission rate is 5.0Gb/s, gigabit port transmission rate is 1.0Gb/s, and the sum of the data transmission rates of the three interfaces is 12 Gb/s.
The fraction of each rate relative to the sum of the rates may be calculated. For example, the SATAIII has a duty ratio of 1/2, the USB3.0 has a duty ratio of 5/12, and the gigabit port has a duty ratio of 1/12.
And multiplying the rate ratios by the data quantity of the data to be transmitted to obtain the data quantity to be distributed of the subdata distributed to each data receiving interface. For example, the data amount of data to be transmitted is 120Gb, and therefore, the data amount to be allocated of the sub data transmitted by the SATAIII is 60Gb, the data amount to be allocated of the sub data transmitted by the USB3.0 is 50Gb, and the data amount to be allocated of the sub data transmitted by the gigabit port is 10 Gb.
After the data amount to be allocated of each subdata is determined, the data to be transmitted can be divided into a plurality of subdata which accord with the data amount to be allocated.
Optionally, before the sending the plurality of sub-data to each data receiving interface respectively, the method further includes:
and adding a data identifier to be transmitted to the subdata, so that the target processor can restore the subdata into the data to be transmitted according to the data identifier to be transmitted after acquiring the subdata.
In specific implementation, a data identifier to be transmitted may be added to the sub-data, and after the sub-data is sent to the target processor, the target processor may restore the plurality of sub-data to the data to be transmitted according to the data identifier to be transmitted. For example, the plurality of sub-data may be numbered in sequence, and after receiving the plurality of sub-data, the target processor may combine the sub-data into the data to be transmitted in the order of numbering.
Optionally, the sending the plurality of sub data to each data receiving interface respectively includes:
substep S21, calling several data sending interfaces matched with each data receiving interface locally;
and a substep S22 of sending the plurality of sub-data to each data receiving interface simultaneously by using each data sending interface.
In a specific implementation, a data sending interface matched with the data receiving interface can be called locally in the data sending processor, and the called data sending interface is adopted to send the plurality of subdata to the corresponding data receiving interface. For example, the SATAIII interface local to the data sending processor is used to send data to the SATAIII interface of the data receiving processor.
According to the embodiment of the application, in the data processing system of the multiprocessor, the parallel transmission of a large amount of data is realized by adopting a multi-interface transmission mode, and the data transmission efficiency among the processors is improved.
And for the data transmission among the processors, determining a weighting mode according to the data transmission rate of the interfaces, and determining the data volume of the sub-data distributed to each interface according to the weighting mode, thereby utilizing the processing resources of the interfaces to the maximum extent and further improving the data transmission efficiency among the processors.
Example two
Fig. 2 is a flowchart illustrating steps of a multiprocessor-based data transmission method according to a second embodiment of the present application, where the method may specifically include the following steps:
step 201, obtaining a plurality of subdata added with data identification to be transmitted from each data receiving interface; and the subdata is the data which is obtained by searching the data transmission rates of a plurality of data receiving interfaces determined according to the target processor identification after the data transmission processor receives the data transmission task carrying the target processor identification of the currently received data, dividing the data to be transmitted into data with the data volume matched with each data transmission rate and transmitted to each data receiving interface.
And 202, restoring the plurality of subdata into the data to be transmitted according to the data identification to be transmitted.
It should be noted that the data transmission method provided in the embodiments of the present application may be applied to a data receiving processor that receives data. Since the data transmission method in the embodiment of the present application corresponds to the data transmission method in the first embodiment of the present application, details are not repeated.
According to the embodiment of the application, in the data processing system of the multiprocessor, the parallel transmission of a large amount of data is realized by adopting a multi-interface transmission mode, and the data transmission efficiency among the processors is improved.
And for the data transmission among the processors, determining a weighting mode according to the data transmission rate of the interfaces, and determining the data volume of the sub-data distributed to each interface according to the weighting mode, thereby utilizing the processing resources of the interfaces to the maximum extent and further improving the data transmission efficiency among the processors.
It should be noted that, for simplicity of description, the method embodiments are described as a series of acts or combination of acts, but those skilled in the art will recognize that the embodiments are not limited by the order of acts described, as some steps may occur in other orders or concurrently depending on the embodiments. Further, those skilled in the art will also appreciate that the embodiments described in the specification are presently preferred and that no particular act is required of the embodiments of the application.
EXAMPLE III
Correspondingly, the third embodiment of the present application further provides a data transmission apparatus based on multiple processors, and the apparatus may be specifically applied to a data sending processor. Fig. 3 is a block diagram illustrating a structure of a data transmission apparatus based on multiple processors according to a third embodiment of the present application, where the apparatus may specifically include the following modules:
a task receiving module 301, configured to receive a data transmission task; and the data transmission task carries the identification of the target processor of the current received data.
The interface determining module 302 is configured to determine a plurality of data receiving interfaces according to the target processor identifier, and search for a data transmission rate of each data receiving interface.
The data dividing module 303 is configured to divide the data to be transmitted into a plurality of sub-data whose data size matches each data transmission rate, and send the plurality of sub-data to each data receiving interface, so that the target processor obtains the plurality of sub-data from each data receiving interface.
Optionally, the data dividing module 303 includes:
the rate sum computing submodule is used for computing the rate sum of the data transmission rate of each data receiving interface;
the rate ratio submodule is used for calculating the rate ratio of each data transmission rate relative to the sum of the rates;
the data amount to be distributed operator module is used for multiplying the rate ratios and the data amount of the data to be transmitted to obtain the data amount to be distributed of each data receiving interface;
and the data dividing submodule is used for dividing the data to be transmitted into a plurality of subdata of which the data volume accords with the data volume to be distributed.
Optionally, the apparatus further comprises:
and the identifier adding module is used for adding a data identifier to be transmitted to the subdata, so that the target processor can restore the subdata into the data to be transmitted according to the data identifier to be transmitted after acquiring the subdata.
Optionally, the data dividing module 303 includes:
the interface calling module is used for calling a plurality of data sending interfaces matched with the data receiving interfaces locally;
and the data sending submodule is used for sending the plurality of subdata to each data receiving interface by adopting each data sending interface.
According to the embodiment of the application, in the data processing system of the multiprocessor, the parallel transmission of a large amount of data is realized by adopting a multi-interface transmission mode, and the data transmission efficiency among the processors is improved.
And for the data transmission among the processors, determining a weighting mode according to the data transmission rate of the interfaces, and determining the data volume of the sub-data distributed to each interface according to the weighting mode, thereby utilizing the processing resources of the interfaces to the maximum extent and further improving the data transmission efficiency among the processors.
Example four
Correspondingly, the fourth embodiment of the present application further provides a data transmission device based on multiple processors, and the device may be specifically applied to a data receiving processor. Fig. 4 is a block diagram illustrating a structure of a data transmission apparatus based on multiple processors according to a third embodiment of the present application, where the apparatus may specifically include the following modules:
a subdata obtaining module 401, configured to obtain, from each data receiving interface, a plurality of subdata to which a data identifier to be transmitted is added; and the subdata is the data which is obtained by searching the data transmission rates of a plurality of data receiving interfaces determined according to the target processor identification after the data transmission processor receives the data transmission task carrying the target processor identification of the currently received data, dividing the data to be transmitted into data with the data volume matched with each data transmission rate and transmitted to each data receiving interface.
A data restoring module 402, configured to restore the multiple subdata into the data to be transmitted according to the data identifier to be transmitted.
According to the embodiment of the application, in the data processing system of the multiprocessor, the parallel transmission of a large amount of data is realized by adopting a multi-interface transmission mode, and the data transmission efficiency among the processors is improved.
And for the data transmission among the processors, determining a weighting mode according to the data transmission rate of the interfaces, and determining the data volume of the sub-data distributed to each interface according to the weighting mode, thereby utilizing the processing resources of the interfaces to the maximum extent and further improving the data transmission efficiency among the processors.
For the device embodiment, since it is basically similar to the method embodiment, the description is simple, and for the relevant points, refer to the partial description of the method embodiment.
The embodiments in the present specification are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other.
As will be appreciated by one of skill in the art, embodiments of the present application may be provided as a method, apparatus, or computer program product. Accordingly, embodiments of the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
In a typical configuration, the computer system includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory. The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium. Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage systems, or any other non-transmission medium that can be used to store information that can be accessed by a computing system. As defined herein, computer readable media does not include non-transitory computer readable media (fransitory media), such as modulated data signals and carrier waves.
Embodiments of the present application are described with reference to flowchart illustrations and/or block diagrams of methods, terminal systems (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing terminal system to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal system, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing terminal system to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing terminal system to cause a series of operational steps to be performed on the computer or other programmable terminal system to produce a computer implemented process such that the instructions which execute on the computer or other programmable terminal system provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present application have been described, additional variations and modifications of these embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including the preferred embodiment and all such alterations and modifications as fall within the true scope of the embodiments of the application.
Finally, it should also be noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or end system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or end system. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or end system that comprises the element.
The technical solutions provided by the present application are introduced in detail, and specific examples are applied in the description to explain the principles and embodiments of the present application, and the descriptions of the above examples are only used to help understanding the method and the core ideas of the present application; meanwhile, for a person skilled in the art, according to the idea of the present application, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present application.

Claims (8)

1. A method for multiprocessor-based data transfer, the method comprising:
receiving a data transmission task; the data transmission task carries the identification of a target processor of the currently received data;
determining a plurality of data receiving interfaces according to the identification of the target processor, and searching the data transmission rate of each data receiving interface; the data receiving interface comprises a peripheral interface for data transmission with peripheral equipment;
dividing data to be transmitted into a plurality of subdata with data volume matched with each data transmission rate, and respectively sending the plurality of subdata to each data receiving interface for the target processor to obtain the plurality of subdata from each data receiving interface;
the sending the plurality of subdata to each data receiving interface respectively comprises:
calling a plurality of data sending interfaces matched with the data receiving interfaces locally;
simultaneously sending a plurality of subdata to each data receiving interface by using each data sending interface;
the interface type of each data sending interface and the interface type of each data receiving interface have a corresponding relation.
2. The method of claim 1, wherein the dividing the data to be transmitted into a plurality of sub-data having a data volume matching each data transmission rate comprises:
calculating the sum of the data transmission rates of all the data receiving interfaces;
calculating the rate ratio of each data transmission rate relative to the sum of the rates;
multiplying each rate ratio by the data quantity of the data to be transmitted to obtain the data quantity to be distributed of each data receiving interface;
and dividing the data to be transmitted into a plurality of subdata of which the data volume accords with the data volume to be distributed.
3. The method of claim 1, wherein prior to sending the plurality of sub-data to the respective data receiving interfaces, the method further comprises:
and adding a data identifier to be transmitted to the subdata, so that the target processor can restore the subdata into the data to be transmitted according to the data identifier to be transmitted after acquiring the subdata.
4. A method for multiprocessor-based data transfer, the method comprising:
acquiring a plurality of subdata added with data identification to be transmitted from each data receiving interface; the subdata is the data transmission rate of a plurality of data receiving interfaces determined according to the identification of the target processor after the data transmission processor receives the data transmission task carrying the identification of the target processor of the currently received data, and divides the data to be transmitted into data with the data volume matched with the data transmission rate and transmitted to each data receiving interface; the data receiving interface comprises a peripheral interface for data transmission with peripheral equipment; the data receiving interface is matched with the data sending interface; the interface type of each data sending interface and the interface type of each data receiving interface have a corresponding relation;
and restoring the plurality of subdata into the data to be transmitted according to the data identification to be transmitted.
5. A multiprocessor-based data transfer apparatus, comprising:
the task receiving module is used for receiving a data transmission task; the data transmission task carries the identification of a target processor of the currently received data;
the interface determining module is used for determining a plurality of data receiving interfaces according to the identification of the target processor and searching the data transmission rate of each data receiving interface; the data receiving interface comprises a peripheral interface for data transmission with peripheral equipment;
the data dividing module is used for dividing the data to be transmitted into a plurality of subdata of which the data volume is matched with each data transmission rate, and respectively sending the plurality of subdata to each data receiving interface so that the target processor can obtain the plurality of subdata from each data receiving interface;
the data partitioning module includes:
the interface calling module is used for calling a plurality of data sending interfaces matched with the data receiving interfaces locally;
the data sending submodule is used for sending a plurality of subdata to each data receiving interface by adopting each data sending interface; the interface type of each data sending interface and the interface type of each data receiving interface have a corresponding relation.
6. The apparatus of claim 5, wherein the data partitioning module comprises:
the rate sum computing submodule is used for computing the rate sum of the data transmission rate of each data receiving interface;
the rate ratio submodule is used for calculating the rate ratio of each data transmission rate relative to the sum of the rates;
the data amount to be distributed operator module is used for multiplying the rate ratios and the data amount of the data to be transmitted to obtain the data amount to be distributed of each data receiving interface;
and the data dividing submodule is used for dividing the data to be transmitted into a plurality of subdata of which the data volume accords with the data volume to be distributed.
7. The apparatus of claim 5, further comprising:
and the identifier adding module is used for adding a data identifier to be transmitted to the subdata, so that the target processor can restore the subdata into the data to be transmitted according to the data identifier to be transmitted after acquiring the subdata.
8. A multiprocessor-based data transfer apparatus, comprising:
the subdata acquisition module is used for acquiring a plurality of subdata added with the data identifier to be transmitted from each data receiving interface; the subdata is the data transmission rate of a plurality of data receiving interfaces determined according to the identification of the target processor after the data transmission processor receives the data transmission task carrying the identification of the target processor of the currently received data, and divides the data to be transmitted into data with the data volume matched with the data transmission rate and transmitted to each data receiving interface; the data receiving interface comprises a peripheral interface for data transmission with peripheral equipment; the data receiving interface is matched with the data sending interface; the interface type of each data sending interface and the interface type of each data receiving interface have a corresponding relation;
and the data reduction module is used for reducing the plurality of subdata into the data to be transmitted according to the data identification to be transmitted.
CN201710199144.8A 2017-03-29 2017-03-29 Data transmission method and device based on multiple processors Active CN108664323B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710199144.8A CN108664323B (en) 2017-03-29 2017-03-29 Data transmission method and device based on multiple processors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710199144.8A CN108664323B (en) 2017-03-29 2017-03-29 Data transmission method and device based on multiple processors

Publications (2)

Publication Number Publication Date
CN108664323A CN108664323A (en) 2018-10-16
CN108664323B true CN108664323B (en) 2021-06-11

Family

ID=63786835

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710199144.8A Active CN108664323B (en) 2017-03-29 2017-03-29 Data transmission method and device based on multiple processors

Country Status (1)

Country Link
CN (1) CN108664323B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113556813A (en) * 2020-04-23 2021-10-26 京东方科技集团股份有限公司 Uplink data transmission method, device and system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN202750089U (en) * 2012-04-19 2013-02-20 中国联合网络通信集团有限公司 Bluetooth device and integrated peripheral devices
CN103580966A (en) * 2013-11-04 2014-02-12 惠州Tcl移动通信有限公司 Wireless link and wire link parallel data transmission method and system
CN104735818A (en) * 2013-12-23 2015-06-24 京信通信系统(中国)有限公司 Access point equipment of wireless local area network and signal processing method thereof
CN105847139A (en) * 2016-03-25 2016-08-10 乐视控股(北京)有限公司 Data transmission method, apparatus and system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106488499A (en) * 2015-08-25 2017-03-08 中兴通讯股份有限公司 A kind of service shunting method and device
CN105578528A (en) * 2016-01-08 2016-05-11 努比亚技术有限公司 Data interface distribution method and apparatus and terminal device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN202750089U (en) * 2012-04-19 2013-02-20 中国联合网络通信集团有限公司 Bluetooth device and integrated peripheral devices
CN103580966A (en) * 2013-11-04 2014-02-12 惠州Tcl移动通信有限公司 Wireless link and wire link parallel data transmission method and system
CN104735818A (en) * 2013-12-23 2015-06-24 京信通信系统(中国)有限公司 Access point equipment of wireless local area network and signal processing method thereof
CN105847139A (en) * 2016-03-25 2016-08-10 乐视控股(北京)有限公司 Data transmission method, apparatus and system

Also Published As

Publication number Publication date
CN108664323A (en) 2018-10-16

Similar Documents

Publication Publication Date Title
US10831562B2 (en) Method and system for operating a data center by reducing an amount of data to be processed
CN108279974B (en) Cloud resource allocation method and device
CN105094981A (en) Method and device for processing data
US20200004464A1 (en) Method and apparatus for storing data
CN112905342A (en) Resource scheduling method, device, equipment and computer readable storage medium
CN114884962B (en) Load balancing method and device and electronic equipment
US10133688B2 (en) Method and apparatus for transmitting information
CN114138468B (en) Self-adaptive distribution method and device for packaging task amount and storage medium
CN114036031B (en) Scheduling system and method for resource service application in enterprise digital middleboxes
CN108664323B (en) Data transmission method and device based on multiple processors
CN110489356B (en) Information processing method, information processing device, electronic equipment and storage medium
CN108023920B (en) Data packet transmission method, equipment and application interface
CN111600943B (en) Method and equipment for acquiring target data
CN112839071B (en) Training system, training data access method and device, electronic equipment and medium
CN111221644B (en) Resource scheduling method, device and equipment
CN112866354B (en) Resource packaging method and device and asset packaging method
CN110895479A (en) Data processing method, device and equipment
US11394780B2 (en) System and method for facilitating deduplication of operations to be performed
CN111629395B (en) Multi-mode communication antenna unit, system and method
CN111258978B (en) Data storage method
CN113296928A (en) Processor allocation method and device, electronic equipment and storage equipment
CN112148740B (en) Data transmission method and device, storage medium and electronic device
US10459633B1 (en) Method for efficient load balancing in virtual storage systems
CN116310731A (en) Image recognition method and device based on neural network and electronic equipment
CN114443640A (en) Data block output method and device, electronic equipment and computer readable storage medium

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
CB02 Change of applicant information

Address after: 100000 Dongcheng District, Beijing, Qinglong Hutong 1, 1103 house of Ge Hua building.

Applicant after: VISIONVERA INFORMATION TECHNOLOGY Co.,Ltd.

Address before: A1103-1113, Gehua building, No.1 Qinglong Hutong, Dongcheng District, Beijing

Applicant before: BEIJING VISIONVERA INTERNATIONAL INFORMATION TECHNOLOGY Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant