Cluster System Parallel Computing Framework Host Node

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing parallel computing frameworks, such as OpenCL, are limited to single node systems and require cumbersome message passing libraries, making it difficult to write applications that operate efficiently across cluster systems.

Innovation Solution

A cluster system architecture that includes a host node and computing nodes connected via a network, where the host node generates request messages for kernel program execution and exchanges messages with computing nodes to execute commands, eliminating the need for additional message passing libraries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If OpenCL is used for parallel computing, then task-based and data-based parallelism can be achieved, but it cannot operate in cluster systems and requires additional message passing libraries

Engineering Contradiction:
Improveparallel computing capabilityVSAvoidapplication development ease
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent introduces an intermediary layer (cluster management module) that sits between the OpenCL framework and the cluster system infrastructure. This intermediary automatically handles message passing operations, allowing OpenCL applications to run on clusters without requiring programmers to manually use message passing libraries. The intermediary translates high-level OpenCL commands into appropriate network messages, thus resolving the contradiction between parallel computing capability and ease of operation.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If message passing libraries are added to enable cluster operation, then cluster system compatibility is achieved, but application complexity increases

Engineering Contradiction:
Improvecluster system compatibilityVSAvoidapplication code complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a self-service mechanism where the cluster management module automatically manages message passing operations without requiring programmer intervention. The system itself handles the complexity of cluster communication by providing automated message generation, routing, and synchronization. This allows the application code to remain simple while the underlying system handles the complex cluster coordination tasks autonomously.

Inventive Principle:
Principle #25Self-service

3Ease of manufacture

If OpenCL is designed for single node systems, then implementation simplicity is maintained, but cluster system execution is not supported

Engineering Contradiction:
Improveframework implementation simplicityVSAvoidcluster system support
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The patent segments the system into distinct functional modules: a core OpenCL execution engine that maintains its simple single-node design, and a separate cluster management layer that handles distributed system operations. This segmentation allows the original simple implementation to be preserved while adding cluster support through the modular management layer. The core OpenCL code remains unchanged and simple, while the cluster functionality is added as an independent segment that interfaces with the existing system.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9485303B2Cluster system based on parallel computing framework, and host node, computing node and method for executing application therein
Publication Date: 2016.11.01 SEOUL NATIONAL UNIVERSITY R&DB FOUNDATION
  • US9485303B2 patent drawing
  • US9485303B2 patent drawing
  • US9485303B2 patent drawing

AI summary

A cluster system based on a parallel computing framework is provided, and the cluster system includes a host node configured to execute a host program for a parallel computing framework and a computing node configured to be connected to the host node and execute a kernel program for the parallel computing frame work.