Method for realizing virtual execution environment of central processing unit (CPU)/graphics processing unit (GPU) heterogeneous platform

A heterogeneous platform and virtual execution technology, applied in the field of telecommunications, can solve problems such as time-consuming, heavy workload, and incompatibility

Active Publication Date: 2011-02-02
SHANGHAI JIAO TONG UNIV
View PDF0 Cites 33 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0003] 1. The problem of code rewriting cost: Since the program on the CPU cannot directly run on the GPU, the source code needs to be modified or rewritten according to the parallel model. At present, a large number of computationally intensive programs are developed with general-purpose C / C++. The program on the CPU is a time-consuming and heavy workload task
And the source code of many programs is difficult to obtain
[0004] 2. Binary compatibility issues: Specific programming environments will bring about compatibility issues. Due to the differences in the storage systems of different hardware and the number of processor cores, the compiled programs run on different GPU products, and some even run on the same GPU. It is also not compatible on different generations of the
In addition, it does not solve the compatibility problem of binary programs

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Examples

Experimental program
Comparison scheme
Effect test

Embodiment

[0035] GXBIT expands Crossbit's original intermediate command VINST, and designs GVINST. GVINST is a low-level, RISC-type instruction set that defines an infinite number of 32-bit virtual registers (v0 to vn) and 8 double-precision floating-point virtual registers (f0 to f7). GVINST defines RISC-like memory access instructions (only load and store can access memory), and the only addressing method is offset addressing. Most GVINST instructions also have a field specifying the type of the operand. GVINST instructions are divided into the following 6 categories:

[0036] 1 state map

[0037] 2 memory access

[0038] 3 data movement

[0039] 4 Arithmetic and Logical Calculations

[0040] 5 control transfer

[0041] 6 special instructions

[0042] The condition code is not used in the GVINST instruction. This is because the design principle of GXBIT's intermediate instructions is easy to analyze and transmit, and the dependence between instructions needs to be reduced. Theref...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

The invention relates to a method for realizing a virtual execution environment of a central processing unit (CPU)/graphics processing unit (GPU) heterogeneous platform, which belongs to the technical field of telecommunication. In the method, programs can be run on an X86CPU and NVIDIA GPU hybrid architecture by a dynamic binary translation technique; static information and dynamic information of the programs are acquired by the dynamic binary translation technique; program execution nested loops, a dependency relationship among the loops and data streams of inlet and outlet hot blocks are searched through the information; and the execution is implemented by two steps of: 1, acquiring information, optimizing the hot blocks and storing the hot blocks into files; 2, and generating a hybridprogram comprising a serial instruction and a parallel instruction and executing the program comprising the hybrid instructions. The method has the advantages that: the traditional serial programs can be run a CPU/GPU heterogeneous multi-core architecture by the dynamic binary translation technique, without modifying program source codes; and the execution of the programs can be accelerated by the GPU.

Description

technical field [0001] The invention relates to a method in the technical field of telecommunications, in particular to a method for realizing a virtual execution environment of a CPU / GPU heterogeneous platform. Background technique [0002] Multi-core technology is the current trend of processor development, but there is a certain limit to improve the parallel processing performance of the processor by simply increasing the number of CPU cores. Therefore, in order to meet the growing computing needs, processing cores for certain types of computing are introduced to form a heterogeneous multi-core architecture. For specific fields, heterogeneous cores can make up for the shortcomings of traditional CPU computing, while CPU / GPU is a heterogeneous multi-core architecture that has developed rapidly in recent years. GPU (Graphics Acceleration Unit) is suitable for processing a large number of computationally intensive tasks, such as image and multimedia processing. Due to its...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
Patent Type & Authority Applications(China)
IPC IPC(8): G06F15/16G06F9/455
Inventor 管海兵陈凯贾昭元董国星章一超
Owner SHANGHAI JIAO TONG UNIV
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products