CN111026528A - High-performance large-scale dyeing array program scheduling and distributing system - Google Patents
High-performance large-scale dyeing array program scheduling and distributing system Download PDFInfo
- Publication number
- CN111026528A CN111026528A CN201911125597.1A CN201911125597A CN111026528A CN 111026528 A CN111026528 A CN 111026528A CN 201911125597 A CN201911125597 A CN 201911125597A CN 111026528 A CN111026528 A CN 111026528A
- Authority
- CN
- China
- Prior art keywords
- scheduling
- program
- module
- task
- level
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Devices For Executing Special Programs (AREA)
- Debugging And Monitoring (AREA)
Abstract
The invention belongs to the field of computer graphics, and particularly relates to a high-performance large-scale dyeing array program scheduling and distributing system which comprises a scheduling level configuration module (1), a task generation module (2), a task analysis module (3) and a stainer program operation module (4). According to different configured scheduling levels, the dyeing program is scheduled to different degrees in three different stages of task generation, task analysis and stainer program operation, and the scheduling and distribution efficiency of the large-scale dyeing array program is realized.
Description
Technical Field
The invention belongs to the field of computer graphics, and particularly relates to a high-performance large-scale dyeing array program scheduling and distributing system.
Background
The programmable stainer is used as the core and key of a high-performance graphics processor, the performance of the programmable stainer directly determines the success or failure of development of the graphics processor, and when the dyeing task is characterized by high parallelism, the utilization efficiency of the stainer is low if the programmable stainer is scheduled at a host end, so that the reasonable use of the programmable stainer is a hotspot of current research. Companies such as foreign england and AMD maintain their own dyeing program scheduling methods, but do not disclose them. In the published data, most scheduling modes for programmable stainer programs are single modes, and scheduling modes with different parallelism degrees cannot be selected according to task characteristics, so that efficient utilization of stainers cannot be achieved.
Disclosure of Invention
The purpose of the invention is:
the invention mainly provides a high-performance large-scale dyeing array program scheduling and distributing system, which is used for scheduling dyeing programs in different degrees in three different stages of task generation, task analysis and stainer program operation according to different configured scheduling levels, so that the high efficiency of large-scale dyeing array program scheduling and distributing is realized.
The solution of the invention is:
the utility model provides a high performance large-scale staining array program scheduling distribution system, this system includes dispatch level configuration module (1), task generation module (2), task analysis module (3), stainer program operation module (4).
Further, the scheduling level configuration module (1) is configured to configure the scheduling level of the dyeing program as a primary scheduling, a secondary scheduling or a tertiary scheduling, and send scheduling level information to the task generation module (2), the task analysis module (3) and the dyeing machine program running module (4).
Further, the task generating module (2) is configured to receive an application program input by a user and scheduling level information sent by the scheduling level configuring module (1);
when the scheduling level is primary scheduling, the scheduling mode is a scheduling mode at the stage, task data accumulation and task switching detection are carried out according to an application program input by a user, when the task switching is detected to be required, a program, data and configuration information required by dyeing operation are generated, then the dyeing task state in a production line is inquired, and if the tasks in the whole production line are executed completely, the program, data and configuration information required by dyeing operation are sent to a stainer program operation module (4); simultaneously, sending the graphics command to a task analysis module (3);
and when the scheduling level is the secondary scheduling or the tertiary scheduling, the mode is a non-scheduling mode at the stage, and the dyeing task is generated only according to the application program input by the user and is sent to the task analysis module (3).
Further, the task analysis module (3) is configured to receive scheduling level information sent by the scheduling level configuration module (1);
when the scheduling level is primary scheduling, the stage is a non-scheduling mode, the received graphic command sent by the task generation module (2) is subjected to task analysis, and an analysis result is sent to the stainer program operation module (4);
if the scheduling level is the second-level scheduling, the stage is a scheduling mode, the dyeing tasks sent by the task generation module (2) are received, the tasks are analyzed, the running state of the stainer is inquired, and when the stainer is inquired to be in an idle state, the analyzed programs, data and configuration information needed by dyeing running are sent to the stainer program running module (4);
and if the scheduling level is three-level scheduling, the stage is in a non-scheduling mode, the dyeing task sent by the task generation module (2) is analyzed, and the analysis result is sent to the stainer program operation module (4).
Further, the stainer program running module (4) receives the scheduling level information sent by the scheduling level configuration module (1),
if the scheduling level is primary scheduling, the stage is a non-scheduling mode, receives a task analysis result sent by the task analysis module (3), and enters a corresponding program entry address to perform dyeing program execution according to the program, data and configuration information sent by the task generation module (2);
if the scheduling level is the secondary scheduling, the stage is in a non-scheduling mode, and enters a corresponding program entry address to perform dyeing program execution according to the program, data and configuration information sent by the task analysis module (3);
and if the scheduling level is three-level scheduling, the scheduling mode is a scheduling mode at the stage, the program, the data and the configuration information sent by the task analysis module (3) are received, the execution state of the thread is inquired, and after the execution of the thread corresponding to certain data is finished, a program entry can be set for the received data according to the configuration information of the received data, and the received data enters a corresponding program entry address for execution.
Has the advantages that: the invention provides a high-performance large-scale dyeing array program scheduling and distributing system, which is used for scheduling dyeing programs in different degrees in three different stages of task generation, task analysis and stainer program operation according to different configured scheduling levels, so that the high efficiency of large-scale dyeing array program scheduling and distributing is realized.
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 high-performance large-scale staining array program scheduling and distributing system according to an embodiment of the present invention includes a scheduling level configuration module (1), a task generation module (2), a task analysis module (3), and a stainer program running module (4).
The scheduling level configuration module (1) is used for configuring the scheduling level of the dyeing program to be primary scheduling, secondary scheduling or tertiary scheduling, and sending scheduling level information to the task generation module (2), the task analysis module (3) and the dyeing machine program operation module (4).
The task generation module (2) is used for receiving an application program input by a user and scheduling level information sent by the scheduling level configuration module (1);
when the scheduling level is primary scheduling, the scheduling mode is a scheduling mode at the stage, task data accumulation and task switching detection are carried out according to an application program input by a user, when the task switching is detected to be required, a program, data and configuration information required by dyeing operation are generated, then the dyeing task state in a production line is inquired, and if the tasks in the whole production line are executed completely, the program, data and configuration information required by dyeing operation are sent to a stainer program operation module (4); simultaneously, sending the graphics command to a task analysis module (3);
and when the scheduling level is the secondary scheduling or the tertiary scheduling, the mode is a non-scheduling mode at the stage, and the dyeing task is generated only according to the application program input by the user and is sent to the task analysis module (3).
The task analysis module (3) is used for receiving the scheduling level information sent by the scheduling level configuration module (1);
when the scheduling level is primary scheduling, the stage is a non-scheduling mode, the received graphic command sent by the task generation module (2) is subjected to task analysis, and an analysis result is sent to the stainer program operation module (4);
if the scheduling level is the second-level scheduling, the stage is a scheduling mode, the dyeing tasks sent by the task generation module (2) are received, the tasks are analyzed, the running state of the stainer is inquired, and when the stainer is inquired to be in an idle state, the analyzed programs, data and configuration information needed by dyeing running are sent to the stainer program running module (4);
and if the scheduling level is three-level scheduling, the stage is in a non-scheduling mode, the dyeing task sent by the task generation module (2) is analyzed, and the analysis result is sent to the stainer program operation module (4).
The stainer program running module (4) receives the scheduling level information sent by the scheduling level configuration module (1),
if the scheduling level is primary scheduling, the stage is a non-scheduling mode, receives a task analysis result sent by the task analysis module (3), and enters a corresponding program entry address to perform dyeing program execution according to the program, data and configuration information sent by the task generation module (2);
if the scheduling level is the secondary scheduling, the stage is in a non-scheduling mode, and enters a corresponding program entry address to perform dyeing program execution according to the program, data and configuration information sent by the task analysis module (3);
and if the scheduling level is three-level scheduling, the scheduling mode is a scheduling mode at the stage, the program, the data and the configuration information sent by the task analysis module (3) are received, the execution state of the thread is inquired, and after the execution of the thread corresponding to certain data is finished, a program entry can be set for the received data according to the configuration information of the received data, and the received data enters a corresponding program entry address for execution.
The workflow of the above embodiment:
the scheduling level configuration module (1) configures the scheduling level of the dyeing program into primary scheduling, secondary scheduling or tertiary scheduling, and sends scheduling level information to the task generation module (2), the task analysis module (3) and the dyeing machine program operation module (4)
If the scheduling level is primary scheduling, the task generation module (2) performs task data accumulation and task switching detection according to an application program input by a user, generates a program, data and configuration information required by dyeing operation when detecting that task switching is required, then performs dyeing task state query in a production line, and sends the program, data and configuration information required by dyeing operation to the stainer program operation module (4) if tasks in the whole production line are all executed; simultaneously, sending the graphics command to a task analysis module (3); the task analysis module (3) performs task analysis on the received graphic command sent by the task generation module (2), and sends an analysis result to the stainer program operation module (4); and the stainer program running module (4) receives the task analysis result sent by the task analysis module (3), and enters a corresponding program entry address to execute the staining program according to the program, data and configuration information sent by the task generation module (2).
If the scheduling level is the second-level scheduling, the task generating module (2) generates a dyeing task according to an application program input by a user and sends the dyeing task to the task analyzing module (3), the task analyzing module (3) receives the dyeing task sent by the task generating module (2), performs task analysis, inquires the running state of the stainer, and sends the analyzed program, data and configuration information required by dyeing running to the stainer program running module (4) when the stainer is inquired to be in the idle state; the stainer program running module (4) enters a corresponding program entry address to execute the staining program according to the program, data and configuration information sent by the task analysis module (3);
if the scheduling level is three-level scheduling, the task generating module (2) generates a dyeing task according to an application program input by a user, the dyeing task is sent to the task analyzing module (3), the task analyzing module (3) analyzes the dyeing task sent by the task generating module (2), an analysis result is sent to the stainer program running module (4), the stainer program running module (4) receives the program, data and configuration information sent by the task analyzing module (3), the execution state of the thread is inquired, after the execution of the thread corresponding to certain data is finished, a program entry can be set for the received data according to the configuration information, and the received data enters a corresponding program entry address to be 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 (5)
1. The system is characterized by comprising a scheduling level configuration module (1), a task generation module (2), a task analysis module (3) and a stainer program operation module (4).
2. The high-performance large-scale dyeing array program scheduling and distributing system according to claim 1, wherein the scheduling level configuring module (1) is configured to configure the scheduling level of the dyeing program as a primary scheduling, a secondary scheduling or a tertiary scheduling, and send the scheduling level information to the task generating module (2), the task parsing module (3) and the stainer program running module (4).
3. The high-performance large-scale dyeing array program scheduling and distributing system according to claim 1, wherein the task generating module (2) is configured to receive an application program input by a user and scheduling level information sent by the scheduling level configuring module (1);
when the scheduling level is primary scheduling, the scheduling mode is a scheduling mode at the stage, task data accumulation and task switching detection are carried out according to an application program input by a user, when the task switching is detected to be required, a program, data and configuration information required by dyeing operation are generated, then the dyeing task state in a production line is inquired, and if the tasks in the whole production line are executed completely, the program, data and configuration information required by dyeing operation are sent to a stainer program operation module (4); simultaneously, sending the graphics command to a task analysis module (3);
and when the scheduling level is the secondary scheduling or the tertiary scheduling, the mode is a non-scheduling mode at the stage, and the dyeing task is generated only according to the application program input by the user and is sent to the task analysis module (3).
4. The high-performance large-scale dyeing array program scheduling and distributing system according to claim 1, wherein the task parsing module (3) is configured to receive the scheduling level information sent by the scheduling level configuration module (1);
when the scheduling level is primary scheduling, the stage is a non-scheduling mode, the received graphic command sent by the task generation module (2) is subjected to task analysis, and an analysis result is sent to the stainer program operation module (4);
if the scheduling level is the second-level scheduling, the stage is a scheduling mode, the dyeing tasks sent by the task generation module (2) are received, the tasks are analyzed, the running state of the stainer is inquired, and when the stainer is inquired to be in an idle state, the analyzed programs, data and configuration information needed by dyeing running are sent to the stainer program running module (4);
and if the scheduling level is three-level scheduling, the stage is in a non-scheduling mode, the dyeing task sent by the task generation module (2) is analyzed, and the analysis result is sent to the stainer program operation module (4).
5. The high-performance large-scale dyeing array program scheduling distribution system according to claim 1, wherein the stainer program execution module (4) receives the scheduling level information transmitted by the scheduling level configuration module (1),
if the scheduling level is primary scheduling, the stage is a non-scheduling mode, receives a task analysis result sent by the task analysis module (3), and enters a corresponding program entry address to perform dyeing program execution according to the program, data and configuration information sent by the task generation module (2);
if the scheduling level is the secondary scheduling, the stage is in a non-scheduling mode, and enters a corresponding program entry address to perform dyeing program execution according to the program, data and configuration information sent by the task analysis module (3);
and if the scheduling level is three-level scheduling, the scheduling mode is a scheduling mode at the stage, the program, the data and the configuration information sent by the task analysis module (3) are received, the execution state of the thread is inquired, and after the execution of the thread corresponding to certain data is finished, a program entry can be set for the received data according to the configuration information of the received data, and the received data enters a corresponding program entry address for execution.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201911125597.1A CN111026528B (en) | 2019-11-18 | 2019-11-18 | High-performance large-scale dyeing array program scheduling distribution system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201911125597.1A CN111026528B (en) | 2019-11-18 | 2019-11-18 | High-performance large-scale dyeing array program scheduling distribution system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN111026528A true CN111026528A (en) | 2020-04-17 |
| CN111026528B CN111026528B (en) | 2023-06-30 |
Family
ID=70200390
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201911125597.1A Active CN111026528B (en) | 2019-11-18 | 2019-11-18 | High-performance large-scale dyeing array program scheduling distribution system |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN111026528B (en) |
Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20110158091A1 (en) * | 2008-06-30 | 2011-06-30 | Zte Corporation | Method and device for packet scheduling |
| US8346755B1 (en) * | 2010-05-04 | 2013-01-01 | Google Inc. | Iterative off-line rendering process |
| CN103336718A (en) * | 2013-07-04 | 2013-10-02 | 北京航空航天大学 | GPU thread scheduling optimization method |
| CN103605565A (en) * | 2013-12-05 | 2014-02-26 | 用友软件股份有限公司 | Processing method based on mass service data early-warning and reminding |
| CN105550443A (en) * | 2015-12-11 | 2016-05-04 | 中国航空工业集团公司西安航空计算技术研究所 | SystemC based unified stainer array TLM model with accurate cycle |
| CN106683032A (en) * | 2016-12-12 | 2017-05-17 | 中国航空工业集团公司西安航空计算技术研究所 | GPU (graphics processing unit) dyeing array idle unit inquiry circuit |
| CN106709860A (en) * | 2016-12-12 | 2017-05-24 | 中国航空工业集团公司西安航空计算技术研究所 | Debugging structure for GPU unified dyeing processing array |
| CN108109104A (en) * | 2017-12-06 | 2018-06-01 | 中国航空工业集团公司西安航空计算技术研究所 | A kind of three-level task scheduler circuitry towards unified dyeing framework GPU |
-
2019
- 2019-11-18 CN CN201911125597.1A patent/CN111026528B/en active Active
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20110158091A1 (en) * | 2008-06-30 | 2011-06-30 | Zte Corporation | Method and device for packet scheduling |
| US8346755B1 (en) * | 2010-05-04 | 2013-01-01 | Google Inc. | Iterative off-line rendering process |
| CN103336718A (en) * | 2013-07-04 | 2013-10-02 | 北京航空航天大学 | GPU thread scheduling optimization method |
| CN103605565A (en) * | 2013-12-05 | 2014-02-26 | 用友软件股份有限公司 | Processing method based on mass service data early-warning and reminding |
| CN105550443A (en) * | 2015-12-11 | 2016-05-04 | 中国航空工业集团公司西安航空计算技术研究所 | SystemC based unified stainer array TLM model with accurate cycle |
| CN106683032A (en) * | 2016-12-12 | 2017-05-17 | 中国航空工业集团公司西安航空计算技术研究所 | GPU (graphics processing unit) dyeing array idle unit inquiry circuit |
| CN106709860A (en) * | 2016-12-12 | 2017-05-24 | 中国航空工业集团公司西安航空计算技术研究所 | Debugging structure for GPU unified dyeing processing array |
| CN108109104A (en) * | 2017-12-06 | 2018-06-01 | 中国航空工业集团公司西安航空计算技术研究所 | A kind of three-level task scheduler circuitry towards unified dyeing framework GPU |
Non-Patent Citations (1)
| Title |
|---|
| 马凯;黄曙;余南华;慕宗君;方伟;张巧霞;: "网络代理在新型远动装置中的应用研究", 计算机工程与设计 * |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111026528B (en) | 2023-06-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Zhu et al. | Real-time tasks oriented energy-aware scheduling in virtualized clouds | |
| CN111045911B (en) | Performance test method, performance test device, storage medium and electronic equipment | |
| CN112000350B (en) | Dynamic rule updating method, device and storage medium | |
| CN111475564A (en) | Streaming data processing method, system, computer equipment and storage medium | |
| CN102420714A (en) | Test management method, test management system master control center and test management system | |
| CN110851234A (en) | Log processing method and device based on docker container | |
| CN102467412A (en) | Method, device and business system for processing operation request | |
| CN103198007A (en) | Multi-process log output method and system | |
| CN102708006A (en) | Processing optimization load adjustment | |
| WO2024066635A1 (en) | Method and system for intelligently optimizing database performance | |
| US8938634B2 (en) | User generated data center power savings | |
| CN102455932B (en) | Serial execution method, device and system for task instances | |
| CN101980546B (en) | Intelligent network platform, service execution method and method for analyzing service abnormity | |
| CN111679899B (en) | Task scheduling method, device, platform equipment and storage medium | |
| Krish et al. | Towards energy awareness in hadoop | |
| CN117156010A (en) | Task processing methods, devices, storage media and electronic equipment | |
| CN103927244A (en) | Plug-in scheduling process monitoring method implemented based on dynamic proxy | |
| CN103544060A (en) | WEBSERVICE based service dispatching system and method | |
| CN113360413A (en) | Code testing method and device | |
| CN111026528A (en) | High-performance large-scale dyeing array program scheduling and distributing system | |
| CN110879753A (en) | GPU-accelerated performance optimization method and system based on automated cluster resource management | |
| CN116974994B (en) | High-efficiency file collaboration system based on clusters | |
| CN111026809B (en) | Distributed execution system for scheduling process | |
| CN112559224A (en) | Input event statistical method, device, equipment and storage medium | |
| CN113157475A (en) | Log processing method and device, storage medium and electronic equipment |
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 |