• Title/Summary/Keyword: task parallelism

검색결과 40건 처리시간 0.022초

다중스레드 데이타 병렬 프로그램의 표현 : PCFG(Parallel Control Flow Graph) (A Representation for Multithreaded Data-parallel Programs : PCFG(Parallel Control Flow Graph))

  • 김정환
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제29권12호
    • /
    • pp.655-664
    • /
    • 2002
  • 데이타 병렬 모델은 대규모 병렬성을 용이하게 얻을 수 있는 장점이 있지만, 데이타 분산으로 인한 통신 지연시간은 상당한 부담이 된다. 본 논문에서는 데이타 병렬 프로그램에 내재되어 있는 태스크 병렬성을 추출하여 이러한 통신 지연시간을 감추는데 이용할 수 있음을 보인다. 기존의 태스크 병렬성 추출은 데이타 병렬성을 고려하지 않았지만, 여기서는 데이타 병렬성을 그대로 유지하면서 태스크 병렬성을 활용하는 방법에 대해 설명한다. 데이타 병렬 루프를 포함할 수 있는 다수의 태스크 스레드들로 구성된 다중스레드 프로그램을 표현하기 위해 본 논문에서는 PCFG(Parallel Control Flow Graph)라는 표현 형태를 제안한다. PCFG는 단일 스레드인 원시 데이타 병렬 프로그램으로부터 HDG(Hierarchical Dependence Graph)를 통해 생성될 수 있으며, 또한 PCFG로부터 다중스레드 코드를 쉽게 생성할 수 있다.

Effect of Representation Methods on Time Complexity of Genetic Algorithm based Task Scheduling for Heterogeneous Network Systems

  • Kim, Hwa-Sung
    • Journal of the Korean Society for Industrial and Applied Mathematics
    • /
    • 제1권1호
    • /
    • pp.35-53
    • /
    • 1997
  • This paper analyzes the time complexity of Genetic Algorithm based Task Scheduling (GATS) which is designed for the scheduling of parallel programs with diverse embedded parallelism types in a heterogeneous network systems. The analysis of time complexity is performed based on two representation methods (REIA, REIS) which are proposed in this paper to encode the scheduling information. And the heterogeneous network systems consist of a set of loosely coupled parallel and vector machines connected via a high-speed network. The objective of heterogeneous network computing is to solve computationally intensive problems that have several types of parallelism, on a suite of high performance and parallel machines in a manner that best utilizes the capabilities of each machine. Therefore, when scheduling in heterogeneous network systems, the matching of the parallelism characteristics between tasks and parallel machines should be carefully handled in order to obtain more speedup. This paper shows how the parallelism type matching affects the time complexity of GATS.

  • PDF

분산병렬 시스템에서 유전자 알고리즘을 이용한 스케쥴링 방법 (Generic Scheduling Method for Distributed Parallel Systems)

  • 김화성
    • 한국통신학회논문지
    • /
    • 제28권1B호
    • /
    • pp.27-32
    • /
    • 2003
  • 본 논문에서는 고속 네트웍 기반의 분산 병렬 시스템에서 다양한 내재 병렬 형태를 갖는 프로그램의 효과적인 수행을 위한 유전자 알고리즘 기반의 태스크 스케쥴링 방법(Genetic Algorithm based Task Scheduling GATS)을 제안한다. 분산병렬 시스템은 고속 네트웍을 통해 연결되어진 다수의 범용, 병렬, 벡터 컴퓨터들로 구성되어진다. 분산병렬 처리의 목적은 다양한 내재 병렬 형태를 갖는 연산 집약적인 문제들을 다수의 고성능 및 병렬 컴퓨터들의 각기 다른 능력을 최대한 이용하여 해결함에 있다 분산병렬 시스템에서 스케쥴링을 통하여 더 많은 속도향상을 얻기 위해서는 시스템간의 부하 균형보다는 태스크와 병렬 컴퓨터간의 병렬특성의 일치가 주의 깊게 다루어져야 하며 태스크의 이동으로 인한 통신 오버헤드가 최소화되어야 한다 본 논문에서는 유전자 알고리즘의 동작이 병렬 특성을 감안하여 이루어질 수 있도록 초기화 방법과 지식 기반의 mutation 방법을 제안한다.

스레드를 이용한 계층적 태스크 그래프(HTG)의 복합 노드 스케쥴링 기법 (Scheduling Scheme for Compound Nodes of Hierarchical Task Graph using Thread)

  • 김현철;김효철
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제29권8호
    • /
    • pp.445-455
    • /
    • 2002
  • 본 논문은 공유 메모리 시스템에서 계층적 태스크 그래프(Hierarchical Task Graph, HTG)의 복합 노드 태스크들을 효율적으로 수행하기 위한 새로운 태스크 스케쥴링 기법을 소개한다. 함수 병렬성 추출을 위해 제안된 기법은 별도의 전역 스케쥴러가 필요 없이 프로세서 스스로가 스케쥴링 기능을 행하는 자동 스케쥴링이다. 제안된 스케쥴링 기법을 단일처리기 시스템을 비롯한 여러 플랫폼에 적용하기 위해 자바 스레드를 이용하여 구현하였으며, 기존의 비트 벡터 방법과 성능을 비교 분석하였다. 실험 파라메터 값을 이용한 실험 결과, 제안된 스케쥴링 기법은 수행 시간 측면에서 효율적이며 양호한 부하 균형을 유지하였다. 또한, 제안된 기법은 기존의 방법에 비해 메모리 사용량을 줄일 수 있었다.

GPU를 이용한 Quantum-Inspired Evolutionary Algorithm 가속 (GPU-Based Acceleration of Quantum-Inspired Evolutionary Algorithm)

  • 류지현;박한민;최기영
    • 대한전자공학회논문지SD
    • /
    • 제49권8호
    • /
    • pp.1-9
    • /
    • 2012
  • Quantum-Inspired Evolutionary Algorithm(QEA)은 알고리즘 자체에 충분한 data-level parallelism이 내재되어 있어 GPU를 이용한 가속에 용이하다. 그러나 효과적인 실행시간의 단축을 위해서는 CPU와 GPU에의 적절한 task-mapping이 필요하다. 이때 단순히 함수 자체의 병렬성만을 고려하는 것이 아니라 CPU와 GPU간의 데이터 전송도 고려하여 task-mapping을 할 필요가 있다. 또한 추가적인 성능향상을 위하여 zero-copy host memory와 적절한 execution configuration의 사용, 그리고 memory coalescing 등을 이용할 수 있다. 그 결과 30,000개의 item수를 가진 0-1 knapsack problem에 대한 QEA의 수행을 multi-threading CPU에 비해 평균 3.69배 빠르게 할 수 있었다.

멀티코어 기반 모바일 플랫폼을 위한 애플리케이션의 태스크 병렬화 시스템 (Task Parallelism System of Application for Multicore-Based Mobile Platform)

  • 임근식;이세호;엄영익
    • 한국통신학회논문지
    • /
    • 제38C권6호
    • /
    • pp.521-530
    • /
    • 2013
  • 본 논문은 기존의 소프트웨어가 멀티코어기반의 모바일 디바이스를 인지할 수 있도록 태스크 병렬화 시스템(BioMP)을 제안한다. 애플리케이션 개발자가 기존의 소프트웨어에 병렬화 규약의 코드를 추가하였을 때, 제안 시스템은 호환성 뿐만 아니라 병렬 쓰레드의 수행을 지원한다. BioMP는 기존의 대용량 애플리케이션 소스코드를 단시일에 멀티코어를 인지하는 소프트웨어로 개선한다. 실험 결과, 우리의 아이디어는 쿼드 코어기반의 멀티코어 환경에서 기존의 시스템 대비 애플리케이션 실행속도를 약 64%까지 개선하였다. 또한, BioMP는 독립적인 컴포넌트이기 때문에 어떠한 플랫폼의 추가적인 수정도 필요로 하지 않는다. 그 결과, 애플리케이션 개발자는 멀티코어향 소프트웨어를 애플리케이션 스토어에 배포하였을 때, 사용자는 모바일 디바이스의 어떠한 수정도 없이 즉시 실행을 할 수 있다.

Proposition and Evaluation of Parallelism-Independent Scheduling Algorithms for DAGs of Tasks with Non-Uniform Execution Time

  • Kirilka Nikolova;Atusi Maeda;Sowa, Masa-Hiro
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 2000년도 ITC-CSCC -1
    • /
    • pp.289-293
    • /
    • 2000
  • We propose two new algorithms for parallelism-independent scheduling. The machine code generated from the compiler using these algorithms in its scheduling phase is parallelism-independent code, executable in minimum time regardless of the number of the processors in the parallel computer. Our new algorithms have the following phases: finding the minimum number of processors on which the program can be executed in minimal time, scheduling by an heuristic algorithm for this predefined number of processors, and serialization of the parallel schedule according to the earliest start time of the tasks. At run time tasks are taken from the serialized schedule and assigned to the processor which allows the earliest start time of the task. The order of the tasks decided at compile time is not changed at run time regardless of the number of the available processors which means there is no out-of-order issue and execution. The scheduling is done predominantly at compile time and dynamic scheduling is minimized and diminished to allocation of the tasks to the processors. We evaluate the proposed algorithms by comparing them in terms of schedule length to the CP/MISF algorithm. For performance evaluation we use both randomly generated DAGs (directed acyclic graphs) and DACs representing real applications. From practical point of view, the algorithms we propose can be successfully used for scheduling programs for in-order superscalar processors and shared memory multiprocessor systems. Superscalar processors with any number of functional units can execute the parallelism-independent code in minimum time without necessity for dynamic scheduling and out-of-order issue hardware. This means that the use of our algorithms will lead to reducing the complexity of the hardware of the processors and the run-time overhead related to the dynamic scheduling.

  • PDF

평활량 선택문제 측면에서 본 중첩병렬화 상황에서 병렬처리 포인트선택 (Parallelism point selection in nested parallelism situations with focus on the bandwidth selection problem)

  • 조가영;노호석
    • 응용통계연구
    • /
    • 제31권3호
    • /
    • pp.383-396
    • /
    • 2018
  • 빅데이터의 시대가 열림에 따라 데이터의 빠른 처리와 분석을 위한 방법의 하나로 R 프로그램 기반의 다양한 병렬처리 패키지가 사용되고 있다. 병렬처리는 수행하려는 작업이 상호의존적이지 않은 작업들로 분해될 수 있을 때 사용하게 되는데, 경우에 따라서는 병렬처리를 위해 분해된 각각의 작업들이 또 다시 상호의존적이지 않은 세부작업으로 분해되기도 한다. 이러한 중첩병렬화 상황에서는 일반적으로 처음 단계에서 분해된 작업들에 대해 병렬처리를 할지, 두 번째 단계에서 세분화되는 작업들에 대해 병렬처리를 할지 선택하게 된다. 그러한 선택이 계산 속도에 상당한 영향을 주는 경우가 많기 때문에 수행하고자 하는 작업의 상황에 따라 병렬처리를 실시할 곳을 잘 결정하는 것이 중요하다. 본 논문에서는 이러한 병렬화 포인트 선택이라는 문제에 대한 이해를 돕고 자신의 문제에 효과적으로 병렬컴퓨팅을 적용하려는 사람들에게 필요한 아이디어를 제공하려는 시도의 하나로 비모수적 함수 추정의 평활량 선택이라는 구체적인 통계문제에 대해 효율적인 계산을 위한 병렬화 포인트 선택 과정을 제시하였다.

한국아동의 친척명 분류, 서열, 군집 수행의 비교 (Comparison of Performance in Classification, Seriation, and Grouping of Kin Terms in Korean Children)

  • 이순형
    • 아동학회지
    • /
    • 제9권2호
    • /
    • pp.133-156
    • /
    • 1988
  • This study investigated developmental change with reference to continuity theory in the acquisition of concepts of kin relation, task difficulty with reference to cognitive complexity, and interrelationships in the performance of cognitive tasks of kinship concepts with reference to cognitive parallelism. The subjects consisted of 6-, 8-, 10, and 12-year-old randomly selected children attending kindergartens or elementary schools in Seoul. The schools were located in various residental areas regarded as either middle or lower class. The 81 boys and 80 girls participated in 3 experiments on classification, seriation, and grouping. The instrument for the classification, seriation, and grouping tasks was composed of 10 10cm black on white line drawings of the head and upper torso area of persons in kin relationship. The data was analyzed with MANOVA. A significant age effect was found in the 3 quasi- experiments. There were significant effects on task difficulty. The biosocial power distribution indirectly influenced children's acquisition of kin relational concepts; that is, children performed better in male-kin than in female-kin tasks. There was a high correlation in performance between the 3 cognitive tasks. These findings support the continuity theory (except for seriation), a model which arranges kin-names in order of cognitive load, the centric status of men in society, and the theory of cognitive developmental parallelism.

  • PDF

시뮬레이션 기법을 이용한 프로세러 할당 알고리즘들의 성능비교 (Performance Comparisons on Processor Allocation Algorithms by Using Simulation Techniques)

  • 최준구
    • 한국시뮬레이션학회논문지
    • /
    • 제3권1호
    • /
    • pp.43-53
    • /
    • 1994
  • With remarkable progress of hardware technologies, multiprocessor systems equipped with thousands of processors will be available in near future. In order to increase the performance of these systems, many processor allocation algorithms have been proposed. However, few studies have been conducted in order to compare the performance of these algorithms. In this paper, simulation techniques are used in order to compare the performance of the processor allocation algorithms proved to be useful. These are: an algorithm using equipartion, an algorithm using average parallelism, an algorithm using execution signatures, and an algorithm using the number of tasks in a task precedence graph. Simulation shows that the algorithm using execution signatures performs best while the algorithm using average parallelism performs worst with small allocated processors. Surprisingly, the algorithm using equipartition performs well despite the fact that it has smallest overhead. Overall, it can be recommended that the algorithm using equipartition be used without any execution history and that the algorithm using execution signatures be used with some execution history.

  • PDF