CN106708594B - Implementation method of hierarchical OpenGL runtime compiling software - Google Patents
Implementation method of hierarchical OpenGL runtime compiling software Download PDFInfo
- Publication number
- CN106708594B CN106708594B CN201611139586.5A CN201611139586A CN106708594B CN 106708594 B CN106708594 B CN 106708594B CN 201611139586 A CN201611139586 A CN 201611139586A CN 106708594 B CN106708594 B CN 106708594B
- Authority
- CN
- China
- Prior art keywords
- instruction
- interface
- layer
- mapping
- execution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Image Generation (AREA)
Abstract
The invention belongs to the field of computer graphics, and particularly relates to a method for realizing hierarchical OpenGL runtime compiling software, which comprises the following steps: detecting the current running state, transmitting parameters to the interface classification layer (1), and transmitting the processed parameters to the instruction mapping layer (3) for instruction mapping; carrying out graphic instruction mapping on an interface needing instruction mapping in the interface classification layer (1), and transmitting the mapped graphic instruction to the instruction execution classification layer (4) for classification; transmitting the delayed execution instruction and the immediate execution instruction to an instruction code generation layer (5) for generating a graphic instruction; and the two types of instruction codes transmitted by the instruction execution classification layer (4) are encoded to generate corresponding binary graphics instructions, and the binary graphics instructions are transmitted to the instruction code storage layer (6) for storage. By carrying out layered processing on the OpenGL interface, the efficient mapping from the OpenGL interface to the graphics instruction is realized, and the efficient execution of the graphics instruction is realized.
Description
Technical Field
The invention belongs to the field of computer graphics, and particularly relates to a method for realizing hierarchical OpenGL runtime compiling software.
Background
OpenGL runtime compiling software is an important component of an OpenGL product, the function and performance of the OpenGL runtime compiling software directly determine the function and performance of an OpenGL interface, and each graphics processor research and development manufacturer has its own implementation method, but most of them are not disclosed, and in public materials, the implementation of the OpenGL interface mainly directly corresponds to a graphics coding mode, and no hierarchical implementation method is found.
Disclosure of Invention
The purpose of the invention is:
the invention mainly provides a method for realizing layered OpenGL runtime compiling software, which realizes the efficient mapping from an OpenGL interface to a graphic instruction and the efficient execution of the graphic instruction by performing layered processing on the OpenGL interface.
The solution of the invention is:
a method for realizing hierarchical OpenGL runtime compiling software comprises
Step 1, dividing an attribute setting interface into an instruction-required mapping interface according to the function and implementation mode of an OpenGL interface, dividing a functional operation command into a direct instruction generation interface, transmitting input parameters of the OpenGL interface to a parameter and state processing layer (2), and processing the input parameters of the interface and an operation state;
step 2, detecting the current running state, processing the parameters transmitted by the interface classification layer (1), and transmitting the processed parameters to the instruction mapping layer (3) for instruction mapping;
step 3, according to the required instruction mapping interface in the interface classification layer (1) and the parameters transmitted by the parameter and state processing layer (2), carrying out graphic instruction mapping on the required instruction mapping interface in the interface classification layer (1), and transmitting the mapped graphic instruction to the instruction execution classification layer (4) to classify the instruction according to the graphic instruction function;
step 4, dividing the instruction transmitted by the instruction mapping layer (3) into a delayed execution instruction and an immediate execution instruction according to functions, if the instruction transmitted by the instruction mapping layer (3) is the same as the type of the instruction transmitted before, the delayed execution instruction is a delayed execution instruction, otherwise, the delayed execution instruction is an immediate execution instruction; transmitting the delayed execution instruction and the immediate execution instruction to an instruction code generation layer (5) for generating a graphic instruction;
and 6, receiving the graphics instruction codes generated by the instruction code generation layer (5) and storing the influence on the drawing results into a delay execution buffer, wherein the storage of the drawing results is not influenced and the buffer is immediately executed.
The invention has the advantages that: according to the method for reconstructing the dyer during driving operation, provided by the invention, the dyer attribute information, the dyer processing data information, the dyer operation management information and the dyer driving software which are contained in the dyer application operation are collected, and then the dyer is operated with the targeted optimized dyer driving software, so that the dyer is operated with high performance under the condition of ensuring the correct function.
Drawings
FIG. 1 is a block diagram of the method of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail with reference to the following embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
The technical solution of the present invention is further described in detail with reference to the accompanying drawings and specific embodiments.
As shown in fig. 1, a method for implementing hierarchical OpenGL runtime compiling software according to an embodiment of the present invention includes
Step 1, dividing an attribute setting interface into an instruction-required mapping interface according to the function and implementation mode of an OpenGL interface, dividing a functional operation command into a direct instruction generation interface, transmitting input parameters of the OpenGL interface to a parameter and state processing layer (2), and processing the input parameters of the interface and an operation state;
step 2, detecting the current running state, processing the parameters transmitted by the interface classification layer (1), and transmitting the processed parameters to the instruction mapping layer (3) for instruction mapping;
step 3, according to the required instruction mapping interface in the interface classification layer (1) and the parameters transmitted by the parameter and state processing layer (2), carrying out graphic instruction mapping on the required instruction mapping interface in the interface classification layer (1), and transmitting the mapped graphic instruction to the instruction execution classification layer (4) to classify the instruction according to the graphic instruction function;
step 4, dividing the instruction transmitted by the instruction mapping layer (3) into a delayed execution instruction and an immediate execution instruction according to functions, if the instruction transmitted by the instruction mapping layer (3) is the same as the type of the instruction transmitted before, the delayed execution instruction is a delayed execution instruction, otherwise, the delayed execution instruction is an immediate execution instruction; transmitting the delayed execution instruction and the immediate execution instruction to an instruction code generation layer (5) for generating a graphic instruction;
and 6, receiving the graphics instruction codes generated by the instruction code generation layer (5) and storing the influence on the drawing results into a delay execution buffer, wherein the storage of the drawing results is not influenced and the buffer is immediately executed.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.
Claims (1)
1. A realization method for hierarchical OpenGL runtime compiling software is characterized by comprising
Step 1, dividing an attribute setting interface into an instruction-required mapping interface according to the function and implementation mode of an OpenGL interface, dividing a functional operation command into a direct instruction generation interface, transmitting input parameters of the OpenGL interface to a parameter and state processing layer (2), and processing the input parameters of the interface and an operation state;
step 2, detecting the current running state, processing the parameters transmitted by the interface classification layer (1), and transmitting the processed parameters to the instruction mapping layer (3) for instruction mapping;
step 3, according to the required instruction mapping interface in the interface classification layer (1) and the parameters transmitted by the parameter and state processing layer (2), carrying out graphic instruction mapping on the required instruction mapping interface in the interface classification layer (1), and transmitting the mapped graphic instruction to the instruction execution classification layer (4) to classify the instruction according to the graphic instruction function;
step 4, dividing the instruction transmitted by the instruction mapping layer (3) into a delayed execution instruction and an immediate execution instruction according to functions, if the instruction transmitted by the instruction mapping layer (3) is the same as the type of the instruction transmitted before, the delayed execution instruction is a delayed execution instruction, otherwise, the delayed execution instruction is an immediate execution instruction; transmitting the delayed execution instruction and the immediate execution instruction to an instruction code generation layer (5) for generating a graphic instruction;
step 5, the two types of instructions transmitted by the instruction execution classification layer (4) are encoded according to the corresponding commands realized by the OpenGL interface to generate corresponding binary graphics instructions, and the generated graphics instructions are transmitted to the instruction storage layer (6) to be stored;
and 6, receiving the graphics instruction codes generated by the instruction code generation layer (5) and storing the influence on the drawing results into a delay execution buffer, wherein the storage of the drawing results is not influenced and the buffer is immediately executed.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201611139586.5A CN106708594B (en) | 2016-12-12 | 2016-12-12 | Implementation method of hierarchical OpenGL runtime compiling software |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201611139586.5A CN106708594B (en) | 2016-12-12 | 2016-12-12 | Implementation method of hierarchical OpenGL runtime compiling software |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN106708594A CN106708594A (en) | 2017-05-24 |
| CN106708594B true CN106708594B (en) | 2020-06-09 |
Family
ID=58937201
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201611139586.5A Active CN106708594B (en) | 2016-12-12 | 2016-12-12 | Implementation method of hierarchical OpenGL runtime compiling software |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN106708594B (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107945099B (en) * | 2017-11-24 | 2021-06-01 | 中国航空工业集团公司西安航空计算技术研究所 | OpenGL-oriented attribute configuration optimization method |
| CN119149176B (en) * | 2024-11-19 | 2025-02-28 | 麒麟软件有限公司 | Method, device and storage medium for using virtual GPU |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6046747A (en) * | 1997-08-04 | 2000-04-04 | Hewlett-Packard Company | Graphics application programming interface avoiding repetitive transfer of texture mapping data |
| CN105677298A (en) * | 2015-12-30 | 2016-06-15 | 李朝波 | Method and device for extending immediate operand in computer instruction |
| CN105849780A (en) * | 2013-12-27 | 2016-08-10 | 高通股份有限公司 | Optimized multi-pass reproduction on tiled infrastructure |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7530062B2 (en) * | 2003-05-23 | 2009-05-05 | Microsoft Corporation | Optimizing compiler transforms for a high level shader language |
-
2016
- 2016-12-12 CN CN201611139586.5A patent/CN106708594B/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6046747A (en) * | 1997-08-04 | 2000-04-04 | Hewlett-Packard Company | Graphics application programming interface avoiding repetitive transfer of texture mapping data |
| CN105849780A (en) * | 2013-12-27 | 2016-08-10 | 高通股份有限公司 | Optimized multi-pass reproduction on tiled infrastructure |
| CN105677298A (en) * | 2015-12-30 | 2016-06-15 | 李朝波 | Method and device for extending immediate operand in computer instruction |
Also Published As
| Publication number | Publication date |
|---|---|
| CN106708594A (en) | 2017-05-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN104020994B (en) | Stream process definition device and stream process based on streaming system define method | |
| CN107027036A (en) | A kind of FPGA isomeries accelerate decompression method, the apparatus and system of platform | |
| CN110955410A (en) | Automatic code generation method, device, equipment and medium | |
| CN104985939B (en) | A kind of laser marking machine control method and laser marking machine | |
| US10445074B2 (en) | Method of optimally compiling PLC command | |
| CN113554161A (en) | Neural network accelerator compiling method and device | |
| CN106708594B (en) | Implementation method of hierarchical OpenGL runtime compiling software | |
| CN102214281A (en) | Software protecting method and device | |
| KR100678912B1 (en) | Method bytecode interpretation method and system operated by the method | |
| CN108509284A (en) | A kind of tree shaped model task management system applied to functional expression programming | |
| CN107945099B (en) | OpenGL-oriented attribute configuration optimization method | |
| CN108845844A (en) | A kind of state transition method and device | |
| KR102724444B1 (en) | Electronic device and control method thereof | |
| CN102629198A (en) | On-demand remote execution method of computational logic in software application | |
| CN105427359A (en) | Animation arrangement | |
| CN112445607A (en) | Method and device for executing method function by application program | |
| CN106708518B (en) | Reconstruction method during operation of stainer driver | |
| CN106709861B (en) | Stainer driving static reconstruction method | |
| CN117669443A (en) | Chip prototype verification method, device, equipment and medium | |
| CN112799724B (en) | Stable control device strategy table analysis and calculation method and device | |
| CN105117273A (en) | Method and system for obtaining client process information in xen virtualization platform | |
| CN104461619B (en) | A kind of embedded software function can configure method | |
| CN115687102A (en) | Vehicle-mounted controller test method, test script generation method and device | |
| US8495033B2 (en) | Data processing | |
| CN115237390A (en) | Relay protection device logic diagram code generation method and device and storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |