• Title/Summary/Keyword: 병렬 프로그래밍

Search Result 225, Processing Time 0.028 seconds

Implementation and analysis of a parallel suffix tree construction algorithm using TBB and Cilk Plus (TBB, Cilk Plus를 이용한 병렬 접미사 트리 생성 알고리즘 구현 및 성능 분석)

  • Seo, Jun-Ho;Na, Joong-Chae
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2012.06a
    • /
    • pp.403-405
    • /
    • 2012
  • 접미사 트리는 문자열 압축, 텍스트 처리, 생물정보학 등 다양한 응용 분야에서 사용되는 인덱스 자료구조이다. 최근 64bit 하드웨어와 멀티코어 CPU가 보급됨에 따라 메모리상에서 병렬로 접미사 트리를 생성하는 알고리즘이 활발히 연구되고 있다. 본 논문에서는 McCreight의 선형시간 알고리즘과 Chen의 병렬 알고리즘을 기반으로 메모리상에서 접미사 트리를 병렬로 생성하는 구현 방법을 보였으며, TBB, Cilk Plus와 같은 병렬 프로그래밍 라이브러리를 이용하여 병렬 알고리즘을 구현하였다. 알고리즘 실험 결과 병렬로 수행한 알고리즘이 직렬로 수행한 결과보다 최대 4배 가량 성능 향상을 얻을 수 있었으며, 병렬 라이브러리를 사용함으로써 가지는 오버헤드는 극히 적은 것으로 나타났다.

Design and Implementation of Parallelized Linked List Class Library using Pthread Library (Pthread 라이브러리를 이용한 Linked List 병렬화 클래스 라이브러리의 설계 및 구현)

  • 김홍숙;한동수
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 1999.10c
    • /
    • pp.780-782
    • /
    • 1999
  • 병렬 프로세서 시스템이 제고하는 하드웨어적인 장점을 이용하기 위해서는 병렬 프로그래밍을 통한 애플리케이션의 병렬화가 필요하다. 기존의 순차적 코드의 경우에 자동 병렬화 컴파일러 기법을 통하여 병렬 프로세서시스템이 제공하는 성능을 극대화하고 있다. 그러나 자동병렬화는 과학 기술 계산용 코드와 같은 정형성을 지닌 코드에서는 유용하지만 비즈니스 응용에서 사용되는 동적인 자료구조를 사용하는 코드에서는 포인터에 의한 별명과 이에 따른 의존성 분석에 어려움으로 인해 많이 응용되고 있지는 못하다. 본 논문은 병렬 프로세서 시스템이 제공하는 기능을 이용하기 위한 한 방법으로 비즈니스 응용에서 많이 사용되는 동적인 자료 구조 중 linked list 클래스 라이브러리의 설계와 구현에 대하여 기술한다.

  • PDF

Particle Dispersion Model Speed Improvement and Evaluation for Quick Reaction to Pollutant Accidents (신속한 오염사고 대응을 위한 입자 분산 모형의 속도 개선 및 평가)

  • Shin, Jaehyun;Seong, Hoje;Park, Inhwan;Rhee, Dong Sop
    • The Journal of the Korea Contents Association
    • /
    • v.20 no.12
    • /
    • pp.537-546
    • /
    • 2020
  • This study deals with the development and improvement of a particle dispersion model for quick response to water pollutant accidents. The developed model is based on the shear dispersion theory where vertical mixing is done by step by step mixing by vertical and molecular diffusion algorithm. For the quick response to chemical accidents, an algorithm for multi-core modeling for the particle dispersion model is applied. After the application of multi-core operation using OpenMP directives to the model, the relation for the calculation time and particle size were determined along with the number of cores used for parallel programming to determine the model time for chemical accident responses. The results showed the adequate conditions for the modeling of chemical accidents for quick response and to increase the applicability of the model.

Survey on GPGPU Programing Models (GPGPU 프로그래밍 모델의 기술 동향)

  • Lee, Hyunjin;Jeong, Yuna;Lee, Sungkil
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2013.05a
    • /
    • pp.389-391
    • /
    • 2013
  • 대용량 영상 데이터 처리를 위한 GPU 는 많은 코어들을 이용한 병렬 작업을 통해 결과를 도출한다. 단순 수치 연산에 특화된 이러한 GPU 의 계산 능력을 다른 분야로 확장시켜 적용하고자 하는 시도인 GPGPU 는 이전부터 꾸준히 시도되고 있다. 그러나 GPU 의 난해하고 생소한 프로그래밍으로, 작성이 쉽지 않고 현격한 성능 향상을 기대하기 어렵다. 이에, 이러한 GPGPU 프로그래밍의 어려움을 해결하고자 여러 프로그래밍 모델들이 등장하였다. 본 논문에서는 GPGPU 프로그래밍을 위한 대표적인 모델인 CUDA, OpenCL, C++ AMP, 그리고 OpenACC 에 대해 살펴본다.

Distributed Parallel Computing Environment for Java (자바를 위한 분산된 병렬 컴퓨팅 환경)

  • 이상윤;김승호
    • Journal of the Institute of Electronics Engineers of Korea CI
    • /
    • v.41 no.6
    • /
    • pp.23-37
    • /
    • 2004
  • Since java thread is an object which is treated as independent process within one execution space in the multiprocessing environment, we can use it for independent process of parallel processing. Using thread and synchronization mechanism of java enables us to write parallel application program easily. Therefore, a lot of results are exist which is apply the feature of java that support parallel processing to the distributed computing environment. In this paper, we introduce a system of environment that support parallel execution of thread which is included in legacy java program. The system named TORB(Transparent Object Request Broker) enables us parallel execution of legacy java program after simple converting process, since it support the feature of programming transparency. TORB is extended version of distributed programming tool that is published by our research team. And it had only typical distributed processing feature that is execute a specified function at the specified computer.

A Java Debugger for Replaying Parallel Programs on a Distributed Environment (분산환경에서 병렬프로그램 재실행을 위한 자바 디버거)

  • 최동순;김남훈;김명호
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.04a
    • /
    • pp.657-659
    • /
    • 2000
  • 네트워크 처리속도의 증가로 네트워크 컴퓨팅 환경에서의 작업이 늘고 있다. 플랫폼 독립성이라는 특성을 내세운 자바는 일반적인 이 기종간의 네트워크에서의 프로그래밍 언어로 많이 이용되고 있다. 그리고 이러한 네트워크 컴퓨팅 환경에서 병렬 프로그램 디버깅의 어려움으로 인해 자바 병렬 프로그램을 위한 디버거의 필요성이 요구되고 있다. 기존의 디버거들은 이런 병렬 환경에서의 디버깅을 각 프로세서에 하나의 순차디버거를 붙인 디버깅 환경을 제공한다. 그러나 병렬 프로그램은 순차프로그램과 다른 재실행시의 비결정적인 특성을 가지고 있음으로 일반적인 순차 디버거를 이용한 디버깅은 의미가 없다. 본 논문에서는 자바로 구현된 네트워크 컴퓨터(JaNeC)에서 병렬프로그램을 디버기하기 위하여 재실행 시 실행 순서를 보장하는 자바 디버거를 소개한다.

  • PDF