Workload Distribution Manager for Heterogeneous Manycore Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing OpenCL applications are limited to single nodes and require additional programming to distribute workload across a cluster environment, increasing complexity and reducing productivity and portability due to differences in compute devices within a manycore cluster system.

Innovation Solution

A method that uses a machine learning model to predict data throughput of each compute device in a manycore cluster system, allowing automatic workload distribution without modifying source codes, by sampling workload portions, extracting hardware performance values, and predicting execution times to optimize workload allocation across heterogeneous nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If MPI is added to OpenCL application for communication between devices and nodes, then workload distribution capability is improved, but coding complexity increases

Engineering Contradiction:
Improveworkload distribution capabilityVSAvoidcoding complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

A workload distribution manager is introduced as an intermediary component between the OpenCL application and the compute devices. This manager automatically handles workload distribution across nodes and devices, eliminating the need for developers to manually implement MPI-based communication and distribution logic, thus reducing coding complexity while maintaining workload distribution capability

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The workload distribution manager performs self-service by automatically predicting data throughput of compute devices and distributing workloads without requiring explicit programming instructions from developers. The system autonomously manages communication and workload allocation, transforming a complex manual process into an automated one

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If workload is manually distributed across heterogeneous nodes, then workload distribution is achieved, but programming time and productivity decrease

Engineering Contradiction:
Improveworkload distributionVSAvoidprogramming productivity
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The workload distribution manager automatically predicts data throughput for each compute device and distributes workloads without requiring manual programming intervention. This self-service approach eliminates time-consuming manual workload distribution tasks, significantly improving programming productivity while adapting to heterogeneous node configurations

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system changes the parameter of workload distribution from manual configuration to automated prediction-based allocation. By using machine learning models to predict data throughput and automatically adjust workload distribution parameters, the system eliminates manual programming efforts and improves developer productivity

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If OpenCL application is extended to cluster environment, then workload capacity is improved, but source code modification is required

Engineering Contradiction:
Improveworkload capacityVSAvoidsource code modification
Core Design Contradiction:
Quantity of substanceVSEase of manufacture

Solution Approach 1:

The workload distribution manager serves as an intermediary layer that enables OpenCL applications to operate in cluster environments without modifying the original source code. The manager handles cluster-specific functionalities such as node discovery, device registration, and workload distribution, allowing existing OpenCL applications to maintain their simplicity while gaining cluster scalability

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The workload distribution manager provides universal functionality that works across different cluster configurations and hardware platforms. It abstracts the complexity of heterogeneous systems, enabling a single OpenCL application to run on diverse cluster environments without requiring platform-specific code modifications

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS9396033B2Method of executing parallel application on manycore cluster system and the manycore cluster system
Publication Date: 2016.07.19 SEOUL NATIONAL UNIVERSITY R&DB FOUNDATION
  • US9396033B2 patent drawing
  • US9396033B2 patent drawing
  • US9396033B2 patent drawing

AI summary

Provided are a method of executing parallel programming on a manycore cluster system and the manycore cluster system, both of which may make a parallel application targeting on one compute device operate on a heterogeneous manycore cluster system configured of a plurality of compute devices, without modifying source codes. Up to now, programmers have had to manually distribute an appropriate workload amount to the compute devices according to a throughput of each compute device. However, since the method and the manycore cluster system can reduce the complexity of programming and provide an heterogeneous manycore cluster environment that allows programmers to develop easily.