• 제목/요약/키워드: 병렬

검색결과 6,649건 처리시간 0.031초

2-단계 병렬 유전자 알고리즘 (A Two-Phase Parallel Genetic Algorithm)

  • 길원배;이승구
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2003년도 봄 학술발표논문집 Vol.30 No.1 (A)
    • /
    • pp.40-42
    • /
    • 2003
  • 본 논문에서는 유전자 알고리즘(Genetic Algorithm: GA)의 새로운 병렬화 방법을 제안 하고 있다. 기존의 병렬 유전자 알고리즘(Parallel Genetic Algorithm: PGA)은 전체 개체집단을 부개체집단 (Subpopulation)으로 나누어 해의 가능 영역을 동시에 탐색하는 것이 일반적인 방법인데 반해. 본 논문에서 제안하는 병렬화 방법은 전체 해의 영역을 나누어 각각의 영역에서 독립된 개체집단들이 서로 다른 영역을 탐색하게 하는 방법이다. 이 방법은 두 가지 단계의 병렬 유전자 알고리즘으로 구성된다. 먼저 적응교배 연산자(Adaptive Crossover Operator: ACO)를 이용한 PGA를 통해 지역해에 인접한 범위들로 해의 영역을 나누고, 이렇게 나누어진 각각의 영역들에서 다시 병렬로 GA를 적용시켜 자세하게 탐색하는 방법이다. 첫 번째 수행되는 PGA 단계에서는 탐색 시간을 줄이고 두 번째 PGA 단계에서는 보다 자세한 탐색을 하기 위해 정밀도(Precision)의 조정을 유전자 알고리즘의 병렬화에 적용하였으며. 이를 통해 빠르고 자세한 탐색이 가능한 유전자 알고리즘의 병렬화 방법을 제안하고 있다.

  • PDF

병렬 계산을 위한 최대 병렬성 추출 방법 (Extracting Maximum Parallelism for Parallel Computing)

  • 박두순
    • 컴퓨터교육학회논문지
    • /
    • 제8권1호
    • /
    • pp.93-103
    • /
    • 2005
  • 대부분의 프로그램 실행 시간은 루프 구조에서 소비되기 때문에 순차 루프 프로그램으로부터 병렬성을 추출하는 것은 프로그램을 빠르게 실행하는 데 필수적이다. 병렬성을 추출하기 위한 기존의 연구들은 주로 불변 자료 종속 거리에 초점을 맞추어왔다. 본 논문에서는 중첩 루프에서 자료 종속성을 제거하는 방법과 자료 종속성 제거 방법을 확장한 프로시저 호출을 가진 루프에서 병렬성을 추출하는 방법을 제안한다. 이 두 가지 방법들은 모두 자료 종속 거리에 관계없이 적용할 수 있다. 중첩 루프에서의 자료 종속성 제거 방법과 프로시저 호출을 가진 루프에서 병렬성을 추출하는 방법을 기존의 방법들과 CRAY-T3E에서 성능 평가를 하였다. 두 개의 방법 모두가 기존의 방법들보다 매우 우수함을 보였다.

  • PDF

프레임 분할 기반 병렬화 H.264/AVC 디코더 (Frame Partition based Parallelization of H.264/AVC decoder)

  • 김원진;박주열;정기석
    • 한국방송∙미디어공학회:학술대회논문집
    • /
    • 한국방송공학회 2010년도 하계학술대회
    • /
    • pp.252-255
    • /
    • 2010
  • 고해상도의 동영상 서비스가 보편화 되면서 동영상을 빠르게 처리를 위한 연구가 활발히 이루어 지고 있다. 그리고 멀티코어 프로세서의 사용이 증가 하고 멀티코어 시스템에서 H.264/AVC 디코더를 구현하기 위하여 다양한 병렬화 방법이 제안되고 있다. 하지만 H.264/AVC디코더의 병렬화를 진행하는 과정에서 각 스레드에서 처리하는 데이터의 처리시간 차이로 인하여 스레드의 동기를 확인 해야 한다. 이로 인하여 병렬화를 통한 성능 향상의 걸림돌이 된다. 우리는 이러한 병렬화 과정에서 발생하는 문제점을 고려하여 효과적으로 H.264/AVC 디코더를 병렬화 하는 방법에 대하여 연구하였다. 우리가 제안하는 Frame Partition based Parallelization (FPP) 방법은 프레임을 매크로 블록 묶음으로 나누어 병렬화 한다. 그리고 병렬화 과정에서 스레드를 처리하는 방법을 개선하여 성능을 향상 시켰다. 본 논문에서는 FFmpeg H.264/AVC 디코더를 이용하여 실험 하였고 인텔 쿼드 코어 기반의 멀티코어 시스템에서 멀티 스레드로 구현하였다. 우리는 FPP 방법을 적용하여 병렬화 방법 적용 전 H.264/AVC 디코더와 비교하여 최대 53%의 성능 향상을 보였다.

  • PDF

JAVA 프로그래밍 언어에서 단일루프구조의 무시적 병렬성 검출 (Exploiting Implicit Parallelism for Single Loops in Java Programming Language)

  • 권오진
    • 정보관리연구
    • /
    • 제29권3호
    • /
    • pp.1-26
    • /
    • 1998
  • 순차 Java 프로그램을 병렬 머쉰에서 실행할 경우 루프는 전체 수행 시간 중 많은 부분을 차지하므로 병렬성 검출의 기본이 된다. 본 논문은 기존에 작성된 단일 루프 구조를 갖는 Java 프로그래밍 언어에서 종속성 분석을 수행하여 묵시적 병렬성을 검출하는 방법을 제안한다. 또한 재구성 컴파일러에 의하여 병렬 코드를 생성하는 방법과 Java 원시 프로그램을 Java 프로그래밍 언어 자체에서 지원하는 다중스레드 기법으로 변환하는 방법을 제안한다. 스레드 문장으로 변환된 프로그램에 대해 루프의 반복계수와 쓰레드 수를 매개변수로 하여 성능 분석을 하였다. 재구성 컴파일러에 의한 장점은 사용자의 병렬성 검출에 대한 오버헤드를 줄이고, 순차 Java 프로그램에 대한 효과적인 병렬성 검출을 가능하게 한다.

  • PDF

그래프 중간표현 형태를 기반으로 한 병렬 프로그래밍 환경 (A Parallel Programming Environment using Graph Type Intermediate Representation Form)

  • 이원용;박두순
    • 인터넷정보학회논문지
    • /
    • 제2권4호
    • /
    • pp.69-81
    • /
    • 2001
  • 본 논문에서는 사용자의 병렬 프로그램 작성을 도와주는 병렬 프로그래밍 환경을 제공한다. 병렬 프로그램은 다양한 하드웨어의 특성에 따라 또는 프로그램의 특성에 따라 사용자가 병렬 프로그램을 작성하여야 하기 때문에 프로그래머는 병렬프로그램을 작성하는 것이 매우 어렵다. 본 논문에서는 사용자가 쉽게 프로그램을 작성할 수 있도록 하기 위하여 많은 병렬 화 연구에서 제시되고 있는 그래프 중간 표현 형태를 그래프 사용자 인터페이스로 구현하였다. 이 병렬 환경에서는 프로그램 편집기능, 종속성 분석기능, 루프 변환기능, CFG, PDG, HTG 등 중간 코드를 그래프 중간 표현 형태를 통해 보여 줌으로 사용자에게 병렬화, 최적화 작업에 용이하도록 한다.

  • PDF

POSIX스레드에 의한 재귀적 알고리즘의 병렬화에서 병렬성 제어 방안 (A Device of Parallelism Control in POSIX Based Parallelization of Recursive Algorithms)

  • 이형봉;백청호
    • 정보처리학회논문지A
    • /
    • 제9A권2호
    • /
    • pp.249-258
    • /
    • 2002
  • 처리기를 여러 개 장착한 다중처리기 시스템의 근본 목적은 적은 비용으로 많은 성능 향상을 얻자는 데에 있다. 그러나 다중처리기 시스템을 충분히 활용하기 위해서는 병렬처리를 지원하는 특별한 언어를 사용하거나 병렬성을 탐색하는 도구의 도움을 얻어야 하는 경우가 대부분이다. 일반적으로 알고리즘에서 병렬화에 적합한 대표적인 영역으로 루프와 재귀호출 등이 알려져 있다. 이 중 재귀호출은 특별한 도구나 언어의 지원 없이 개념적인 측면에서 비교적 쉽게 병렬화 시킬 수 있다. 그러나 재귀호출이 깊어지면 통제되지 않은 병렬성이 과도하게 높아져 오히려 수행불능 상태가 되고 만다. 본 논문은 POSIX스레드를 이용하여 재귀호출로 구성된 알고리즘을 병렬화시키는 과정에서 병렬성을 제어하는 방안을 제시한다. 이를 위하여 유닉스 시스템에서 프로세스와 스레드의 개념을 정립하고, 제안된 병렬성 제어 방안을 퀵 정렬에 적용한 결과를 실증적으로 분석하여 그 효용성을 검증한다.

옥트리로 색인한 3차원 포인트 클라우드의 다중코어 기반 병렬 탐색 (Multi-core-based Parallel Query of 3D Point Cloud Indexed in Octree)

  • 한수희
    • 한국측량학회지
    • /
    • 제31권4호
    • /
    • pp.301-310
    • /
    • 2013
  • 본 연구는 옥트리로 색인한 대용량 3차원 포인트 클라우드를 다중코어를 이용하여 병렬로 탐색함으로써 탐색 속도를 향상시키는 것을 목표로 한다. 특히 주어진 좌표로부터 일정 반경 내에 존재하는 포인트를 병렬로 탐색하기 위하여 다수의 리프 노드에 동시에 접근하는 방식을 개발하는 것에 초점을 두었다. 이를 위하여, 탐색 부하를 각 코어에 분배하는 과정에서 코드 중 for 루틴을 OpenMP에 의하여 자동으로 나누는 방식과 공간적 분할을 고려하는 방식 등 두 가지 병렬 탐색 방식을 제안하였다. 병렬 및 비병렬 탐색 방식을 평가하기 위하여 지상 레이저 스캐너로 취득한 약 1800만개의 3차원 포인트로부터 옥트리를 생성하고 8개 코어가 집적된 CPU가 1개 장착된 시스템에 적용하였다. 결과적으로 두 가지 병렬 탐색 방식 모두 비병렬 탐색 방식보다 수배의 성능 향상 효과를 나타내었으며, 두 병렬 방식은 탐색 반경에 따라 서로 경합하는 양상을 나타내었다. 향후 코어별 탐색 부하 분배 방식을 개선하여 병렬 탐색 속도를 향상시킬 수 있을 것으로 기대된다.

자바 프로그래밍에서 병렬처리를 위한 중첩 루프 구조의 다중스레드 변환 (Transform Nested Loops into MultiThread in Java Programming Language for Parallel Processing)

  • 황득영;최영근
    • 한국정보처리학회논문지
    • /
    • 제5권8호
    • /
    • pp.1997-2012
    • /
    • 1998
  • 병렬 시스템에서 순차 자바 프로그램을 재 사용할 수 있기 위해서는 자바 프로그램 내에 존재하는 병렬성을 찾아내는 것이 중요하다. 자바 프로그램을 병렬 시스템에서 실행할 경우 루프는 전체 수행 시간 중 많은 부분을 차지하므로 병렬성 검출의 기본이 되지만 데이터 종속으로 인하여 완전한 병렬 수행을 쉽게 이룰 수 없다. 따라서, 본 논문은 기존의 중첩 루프 구조를 갖는 자바 프로그래밍에서 데이터 종속성 분석에 의한 종속 그래프를 구성하여 묵시적 병렬성을 검출하는 방법을 제안한다. 또한 재구성 컴파일러에 의하여 자바 원시 프로그램을 자바 프로그래밍 언어 자체에서 지원하는 다중스레드 기법으로 변환하여 병렬 시스템에서 실행하는 방법을 제안한다. 스레드 문장으로 변환된 프로그램에 대해 루프의 반복계수와 스레드 수를 매개변수로 하여 성능 분석을 하였다. 재구성 컴파일러에 의한 장점은 사용자의 병렬성 검출에 대한 오버해드를 줄이고, 순차 자바 프로그램에 대한 효과적인 병렬성 검출을 가능하게 하여 병렬 시스템에서 실행 시간을 단축할 수 있다.

  • PDF

과학계산전용 병렬처리 컴퓨터 구조 (High Performance Parallel Computer for Scientific Computations)

  • 박규호;정봉준
    • 전자공학회지
    • /
    • 제22권9호
    • /
    • pp.14-27
    • /
    • 1995
  • KAICUBE/한빛-1호는 하이퍼큐브 형태의 연결망을 가진 병렬 컴퓨터이고 각 노드는 i860프로세서와 통신용의 i82380 DMA 콘트롤러를 탑재하고 있다. 40Mh2 CPU클럭을 사용하는 32노드로 구성되어 있고 컴퓨터의 최고 속도는 2.5G-flops 정도로써 이것은 국내 최초의 Giga급 컴퓨터이다. DMA콘트롤러에 의해 구동되는 노드간 통신은 채널 대역폭이 100Mbps정도이다. 0번 노드는 UNIX를 탑재한 호스트 컴퓨터와 연결되어 있고 호스트 컴퓨터는 병렬 프로그래밍 환경과 각 노드를 관리하는 역할을 한다. 익스프레스는 호스트 컴퓨터에 탑재된 병렬 운영 체제이고 사용하기 간편한 사용자 환경과 프로그래밍 방법에 따라 호스트-노드방법과 cubits 프로그래밍 환경을 각각 제공한다. 그밖에 고수준의 병렬 프로그래밍 환경으로써 기존의 순차 프로그램에 기초한 입력 프로그램을 병렬 프로그램으로 자동 변환 해주는 KAPPA가 있다. 여러 분야의 과학 계산용 프로그램이 수행되고 있으며 그의 성능 측정을 통하여 탁월한 성능을 보여 주었다. 보다 편리한 병렬 프로그래밍 환경의 개발과 범용 계산 전응 서버로써 자유로이 사용할 수 있도록 네트워크 기능을 강화하는 일이 남아있다.

  • PDF

메시지 패싱 병렬 처리 시스템의 상호연결망 비교 (Comparison of Interconnection Networks for Message Passing Parallel Processing Systems)

  • 한종석;심원세한우종
    • 대한전자공학회:학술대회논문집
    • /
    • 대한전자공학회 1998년도 추계종합학술대회 논문집
    • /
    • pp.463-466
    • /
    • 1998
  • 본 논문에서는 메시지 패싱 전송을 기반으로 하는 병렬 처리 시스템의 상호연결망 구조와 특성을 조사하고 비교한다. 특히, 상용 시장에서 널리 알려진 대표적인 병렬 처리 시스템의 상호연결망 특성과 ETRI에서 개발된 고속 병렬 컴퓨터(SPAX)의 계층 크로스바 상호 연결망(Xcent-Net) 특성을 상호 비교한다. 메시지 패싱 전송 기반의 상호연결망은 일반적으로 확장성이 우수하여 대규모 병렬 처리 시스템을 구축하는데 유리하다. Cray T3E 시스템, Intel ASCI TFLOPS 시스템, Tandem Himalaya S70000 시스템, IBM RS6000 SP2 시스템등은 메시지 패싱 상호연결망을 기반으로 수백개에서 수천개의 대규모 프로세서를 연결한 병렬 처리 시스템이다. ETRI SPAX 시스템은 Xcent-Net 메시지 패싱 상호연결망을 기반으로 최대 256개 프로세서를 연결한 고속 병렬 처리 시스템으로 우수한 확장성과 높은 성능을 제공한다. 본 논문에서는 상호연결망의 구조와 함께 라우팅 스위치 구조 및 특성을 중심으로 전송 지연시간, 그리고 노드당 전송 대역폭 특성을 비교한다.

  • PDF