• 제목/요약/키워드: 병렬 프로그래밍

검색결과 225건 처리시간 0.031초

분할 정복법을 이용한 Haskell GC 조정 시간 개선 (Improving Haskell GC-Tuning Time Using Divide-and-Conquer)

  • 안형준;김화목;류샤오;김연어;변석우;우균
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제6권9호
    • /
    • pp.377-384
    • /
    • 2017
  • 발열 때문에 더이상 회로 집적도를 높일 수 없기 때문에 단일 코어 프로세서의 성능 향상은 한계에 달했다. 그래서 코어를 여러 개 사용하는 멀티 코어, 매니 코어 형태의 프로세서가 등장했으며 병렬 프로그래밍이 중요해졌다. 이러한 상황에서 병렬 프로그래밍에 여러 장점이 있는 순수 함수형 언어 Haskell이 주목받고 있다. Haskell은 식 계산 방식에서 이미 병렬성이 내재되어 있으며 병렬 구조를 지원하는 모나드 도구를 제공한다. 그런데 Haskell 병렬 프로그램의 성능은 메모리 재사용 시스템을 포함한 실행시간 시스템에 큰 영향을 받는다. 이미 Haskell이 제공하는 메모리 프로파일링 도구로 GC-tune이 있지만, GC-tune은 가능한 모든 GC 옵션에 대해 프로그램 실행 시간을 반복 측정하기 때문에 GC 조정 시간이 너무 오래 걸린다. 그래서 본 연구에서는 기본적인 분할 정복법을 이용해서 GC-tune의 탐색 영역을 매 단계마다 4분의 1로 줄이는 방법을 제안한다. 제안하는 방법을 두 가지 병렬 프로그램(극대 독립 집합 프로그램과 K-평균 프로그램)에 적용한 결과, 평균 98%의 정확도로 실행 시간을 평균 7.78배 단축시켰다.

Grid workflow system을 이용한 인공 심장 Parallel pipelined volume render ing system (Parallel Pipelined volume rendering of artifical heart using WISE on Grid)

  • 박진성;류소현;권용원;정창성
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2004년도 봄 학술발표논문집 Vol.31 No.1 (A)
    • /
    • pp.67-69
    • /
    • 2004
  • 본 논문은 Grid상의 workflow 시스템인 Workflow based Grid Portal for PSE(이하 WISE)를 이용한 인공 심장의 3차원 병렬 volume rendering system 디자인과 구현에 대하여 기술한다. Grid는 전 세계에 분산되어 있는 고성능, 대용량 자원들을 고속 네트워크로 연동하여 사용할 수 있게 하는 환경이며, WISE 시스템은 workflow 개념을 도입하여, 이런 자원들의 효율적이고 편리하게 관리해주고 아울러 여러 가지 패턴을 이용해 프로그래밍 할 수 있게 해주는 middleware이다. 본 논문에서는 Grid 상에서 WISE system에서 제공하는 프로그래밍 패턴을 이용하여 구조화되어 있지 않은 인공심장 데이터를 병렬 processing Pipeline 모델을 바탕으로 효율적인 parallel 3차원 가시화를 하기 위한 parallel pipelined volume rendering system을 구현하였다.

  • PDF

ARM11MPCore에서 POSIX 쓰레드를 이용한 OpenMP 구현 (OpenMP Implementation using POSIX thread library on ARM11MPCore)

  • 이재원;전우철;하순회
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2007년도 가을 학술발표논문집 Vol.34 No.2 (B)
    • /
    • pp.414-418
    • /
    • 2007
  • 멀티프로세서 환경에서 OpenMP는 MPI 에 비해 병렬 프로그래밍을 쉽게 할 수 있다는 장점을 가지고 있고, OpenMP는 표준이 없는 병렬 프로그래밍 세계에서 실질적인 표준으로써 인정받고 있다. OPenMP는 대상 플랫폼에 따라 OpenMP 구현을 다르게 해야 하기 때문에 새로운 프로세서가 등장하면 그에 맞는 OpenMP구현을 만들어야 한다. 이 논문에선 다중 프로세서 시스템-온-칩 시스템인 ARM11MPCore 시스템 위에 POSIX 쓰레드에 기반하여 OpenMP 환경을 구축하고 그 성능을 측정한다.

  • PDF

동적 코드변환 기술을 이용한 소프트웨어 트랜잭션 메모리 기법 설계 (Design of Software Transactional Memory by Binary Translation)

  • 이동우;김지홍;엄영익
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2010년도 춘계학술발표대회
    • /
    • pp.226-229
    • /
    • 2010
  • 최근 프로세서가 코어 개수를 늘리는 구조로 발전함에 따라 병렬프로그래밍의 중요성이 더욱 강조되고 있다. 병렬프로그래밍에서 발생하는 공유자원에 대한 경쟁조건을 제어하기 위한 효율적인 방법으로 여러 가지 락-프리 동기화 기법이 제안되어 왔다. 그 중 소프트웨어 트랜잭션 메모리는 지금까지 하드웨어적인 방법과 소프트웨어적인 방법 등 여러 가지 방법으로 구현되었지만 여러 가지 하드웨어적인 제약과 기존의 소스코드를 수정해야 하는 문제점이 있다. 이러한 문제를 해결하기 위해 본 논문에서는 동적 코드 변환기술을 이용한 소프트웨어 트랜잭션 메모리 기법을 제안하고 기존 구현과 비교 평가하였다.

성능비대칭적인 멀티프로세서를 위한 OpenMP 의 로드밸런싱 향상 기법 (A Load Balancing Technique for OpenMP for Performance-Asymmetric Multiprocessors)

  • 김병규;김지민;이평화;유민수
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 추계학술발표대회
    • /
    • pp.141-144
    • /
    • 2011
  • 최근 이기종 멀티프로세서 시스템에서의 병렬화를 위해 범용 CPU 와 다른 컴퓨팅 장치들간의 다양한 연동 기술들이 부각되고 있다. 멀티프로세서 프로그래밍 모델인 OpenMP 는 가장 널리 사용되는 병렬 프로그래밍 언어이지만 기존 OpenMP 의 작업 할당 정책으로는 프로세서간 로드밸런싱을 문제를 해결할 수 없다는 한계점을 가지고 있다. 본 논문에서는 기존 OpenMP 의 작업할당 문제를 해결할 수 있는 알고리즘을 제안한다. 제안하는 알고리즘은 SMP(Symmetric Multi Processing) 구조뿐만 아니라 AMP(명령어 구조는 같으나 동작 속도가 다른 이질 멀티프로세서 구조)에서도 작업부하균형을 효과적으로 실행할 수 있다.

클라우드 컴퓨팅에서의 대용량 데이터 처리 모델에 관한 조사 (A Survey on Massive Data Processing Model in Cloud Computing)

  • 진아연;박영호
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 추계학술발표대회
    • /
    • pp.145-146
    • /
    • 2011
  • 클라우드 컴퓨팅은 세계적인 시장조사기관인 가트너사의 10대전략기술에서 2년 연속 1위를 할 정도로 많은 각광을 받고 있다. 클라우드 컴퓨팅이란 인터넷 기술을 활용하여 가상화된 컴퓨팅 자원을 서비스로 제공하는 것으로, 사용자는 IT자원을 필요한 만큼 빌려서 사용하고 사용한 만큼 비용을 지불하는 컴퓨팅을 지칭한다. 이러한 클라우드 컴퓨팅 상에서 폭발적으로 증가하고 있는 데이터를 효율적으로 병렬 처리할 수 있는 방법에 대하여 많은 연구가 활발히 이루어지고 있다. 이러한 대용량 데이터 처리를 위한 대표적인 모델에는 MapReduce와 Dryad가 있으며, 서로간에 많은 공통점이 있지만 MapReduce는 범용 프로그래밍 언어를 기반으로 쉬운 병렬 프로그래밍을 가능하게 했다는 점에서 많이 사용되고 있으며 Dryad는 재사용이 쉽고 데이터 처리 흐름을 유연하게 작성할 수 있다는 점에서 장점을 가지고 있다.

병렬 유전자 프로그래밍을 이용한 Symbolic Regression (Symbolic regression based on parallel Genetic Programming)

  • 김찬수;한근희
    • 디지털융복합연구
    • /
    • 제18권12호
    • /
    • pp.481-488
    • /
    • 2020
  • 기호적 회귀분석 (Symbolic Regression)은 회귀분석에서 주어진 데이터에 대하여 종속변수와 독립변수들 사이의 관계를 설명할 수 있는 함수를 직접 생성하는 분석방법으로서 Genetic Programming 이 본 분야의 연구에 가장 선도적으로 적용되고 있으며, 고정된 모델로부터 매개변수들의 최적화를 추구하는 다른 회귀분석 알고리즘들에 비하여 해석이 가능한 모델을 직접 도출할 수 있다는 장점을 갖는다. 본 연구에서는 Coarse grained 병렬 모델에 기반한 Parellel Genetic Programming 을 이용한 symbolic regression 알고리즘을 제시하고 제시된 알고리즘을 PMLB 데이타에 적용하여 해당 알고리즘의 효용성을 분석하고자 한다.

Parallelization of a Purely Functional Bisimulation Algorithm

  • Ahn, Ki Yung
    • 한국컴퓨터정보학회논문지
    • /
    • 제26권1호
    • /
    • pp.11-17
    • /
    • 2021
  • 본 논문에서는 순수 함수형 언어로 작성된 쌍방시뮬레이션 알고리듬의 성능을 멀티코어 프로세서 컴퓨터에서 병렬화로 향상시키는 방법을 연구한다. 이 병렬화에 있어 핵심 아이디어는 순수 함수형 프로그램의 참조 투명성을 십분 활용하면 병렬화가 전혀 고려되지 않고 작성된 초기 구현으로부터 최소한의 수정만으로 성능 개선 효과를 기대할 수 있다는 것이다. 초기 구현과 병렬화 구현 둘 다 순수 함수형 언어인 하스켈로 작성되었다. 초기 구현을 병렬화할 때 변화는 아주 적어서 병렬화된 구현에서도 초기 구현의 프로그램 구조가 거의 그대로 유지되었다. 벤치마크를 통해 제시된 간단한 병렬화만으로도 초기 구현과 비교해 두 배 이상의 성능 개선을 확인했다. 또한, 병렬화와는 별개의 최적화 기법인 메모이제이션이 적용된 버전의 쌍방시뮬레이션 구현에도 같은 방식의 병렬화를 적용함으로써 마찬가지로 성능을 개선할 수 있음을 확인하였다.

프로그래밍이 가능한 GPU 상에서의 버텍스 프로그래밍의 최적화 기법 (Optimization Technique for Vertex Programming on Programmable GPU)

  • 오진상;임인성
    • 한국컴퓨터그래픽스학회논문지
    • /
    • 제8권3호
    • /
    • pp.25-34
    • /
    • 2002
  • 최근 프로그래밍이 가능한 그래픽스 프로세서(GPU)의 등장은 렌더링 속도의 향상은 물론 기존의 GPU가 할 수 없었던 다양한 그래픽스 계산을 효과적으로 수행할 수 있도록 해주고 있다. 이로 인하여 기존에 CPU 상에서 수행해야만 했던 그래픽스 계산들의 일부를 GPU 상에서 수행하도록 해주는 기법들에 대한 연구가 활발히 진행되고 있다. 본 논문에서는 선형식에 기반을 둔 여러 응용 문제들을 GPU 상에서 효율적으로 구현할 수 있도록 도와주는 쉐이더 코드 최적화 기법을 제안한다. 이 기법은 SIMD 형태의 병렬 처리 능력을 가진 버텍스 쉐이더의 명령어에 맞게 고안되었다. 본 기법의 활용 가능성을 보이기 위하여 미분 방정식을 풀기 위한 4차 런지-쿠타 방법, 선형방정식을 풀기 위한 가우스-자이델 방법, 자연스러운 유체 모델링을 위한 파동 방정식 등의 문제에 적용하여 보았다. 본 논문에서 제안한 최적화 기법은 버텍스 쉐이더 용 컴파일러 구현에 쓰일 수 있으며, 향후 프로그래밍이 가능한 GPU 상에서의 실시간 그래픽스 소프트웨어 개발에 유용하게 사용될 수 있을 것이다.

  • PDF