[go: up one dir, main page]

CN106708594B - Implementation method of hierarchical OpenGL runtime compiling software - Google Patents

Implementation method of hierarchical OpenGL runtime compiling software Download PDF

Info

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
Application number
CN201611139586.5A
Other languages
Chinese (zh)
Other versions
CN106708594A (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.)
Xian Aeronautics Computing Technique Research Institute of AVIC
Original Assignee
Xian Aeronautics Computing Technique Research Institute of AVIC
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 Xian Aeronautics Computing Technique Research Institute of AVIC filed Critical Xian Aeronautics Computing Technique Research Institute of AVIC
Priority to CN201611139586.5A priority Critical patent/CN106708594B/en
Publication of CN106708594A publication Critical patent/CN106708594A/en
Application granted granted Critical
Publication of CN106708594B publication Critical patent/CN106708594B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation

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

Implementation method of hierarchical OpenGL runtime compiling software
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;
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.
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;
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.
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.
CN201611139586.5A 2016-12-12 2016-12-12 Implementation method of hierarchical OpenGL runtime compiling software Active CN106708594B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
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