• 제목/요약/키워드: Distributed Parallel Programming

검색결과 36건 처리시간 0.019초

Apache Spark를 활용한 실시간 주가 예측 (Real-Time Stock Price Prediction using Apache Spark)

  • 신동진;황승연;김정준
    • 한국인터넷방송통신학회논문지
    • /
    • 제23권4호
    • /
    • pp.79-84
    • /
    • 2023
  • 최근 분산 및 병렬 처리 기술 중 빠른 처리 속도를 제공하는 Apache Spark는 실시간 기능 및 머신러닝 기능을 제공하고 있다. 이러한 기능에 대한 공식 문서 가이드가 제공되고 있지만, 기능들을 융합하여 실시간으로 특정 값을 예측하는 방안은 제공되고 있지 않다. 따라서 본 논문에서는 이러한 기능들을 융합하여 실시간으로 데이터의 값을 예측할 수 있는 연구를 진행했다. 전체적인 구성은 Python 프로그래밍 언어에서 제공하는 주가 데이터를 다운로드하여 수집한다. 그리고 머신러닝 기능을 통해 회귀분석의 모델을 생성하고, 실시간 스트리밍 기능을 머신러닝 기능과 융합하여 실시간으로 주가 데이터 중 조정종가를 예측한다.

MPI 기법을 이용한 병렬 홍수침수해석 (Parallel Flood Inundation Analysis using MPI Technique)

  • 박재홍
    • 한국수자원학회논문집
    • /
    • 제47권11호
    • /
    • pp.1051-1060
    • /
    • 2014
  • 본 연구에서는 분산 메모리환경 병렬프로그래밍 모델의 표준인 MPI (Message Passing Interface) 기법과 침수해석 모형인 DHM(Diffusion Hydrodynamic Model) 모형을 연계하여 침수모형을 병렬화하고 기존의 기법으로 복잡하고 장시간의 계산시간을 요구하였던 계산에 대해 향상된 계산 성능을 구현하고자 하였다. 개발된 모형을 다양한 침수 시나리오를 바탕으로 가상유역과 실제유역에 대하여 코어 개수별로 모의함으로써 제내지 침수에 따른 침수범위 및 침수위의 추정, 및 계산시간 단축 효과를 입증 하고 병렬기법에 대한 홍수해석 분야의 적용성을 입증하고자 하였다. 본 연구에서 개발된 모형의 검증을 위하여 2차원 가상 제내지 및 실제 침수 사례에 대하여 적용하였고, 적용결과 동일한 정확도를 기준으로 계산시간 면에서 단일 코어와 비교하여 멀티코어를 사용한 경우 약 41~48%의 개선효과가 나타나는 것을 확인하였다. 본 연구에서 개발된 병렬해석 기법을 이용한 침수해석 모형은 멀티코어를 적용하여 짧은 계산시간으로 침수심, 침수구역, 홍수파 전달속도 등이 계산 가능하여, 실제 홍수 발생 시 침수지역에서의 신속한 예측 및 대처, 홍수위험지도 구축 등에 유용하게 이용될 수 있을 것으로 기대된다.

워크스테이션 클러스터 상에서 분산공유메모리 인터페이스로 배열 데이터의 공유를 지원하는 Java 패키지의 설계와 구현 (Design and Implementation of a Java Package for Sharing Array Data by the DSM Interface on a Cluster of Workstations)

  • 임혜정;김명
    • 한국멀티미디어학회논문지
    • /
    • 제2권3호
    • /
    • pp.355-365
    • /
    • 1999
  • 본 연구에서는 배열 데이터를 여러 호스트 상에 분산시켜 생성하고 편리하게 공유할 수 있도록 하는 Java 패키지인 JPAS (Java Package for Array Sharing)를 설계하고 구현하였다. JPAS는 순수 Java로 구현되어 이식성이 뛰어나고, Java RMI를 이용하여 분산공유메모리 모델과 같이 위치 독립적인 접근 인터페이스로 배열 데이터를 공유할 수 있도록 한다. JPAS는 네트원 오버헤드로 인한 성능 저하를 막기 위해서, 프로그래머 가 알고 있는 애플리케이션의 특성을 공유 데이터 사용시에 반영할 수 있도록 한다. 또한, 데이터의 일관성을 유지하기 위해서, JPAS의 모든배열 데이터들은 값을 갱신 할수 있는 메소드틀을 갖는다. 실제로, 병렬프로그램들을 작성하여 워크스테이션 클러스터 상에서 실행시켜 본 결과, JPAS가 비교적 우수한 성능의 병렬 프로그래밍 도구임을 보였다.

  • PDF

GPU 클러스터 기반 대용량 온톨로지 추론 (Scalable Ontology Reasoning Using GPU Cluster Approach)

  • 홍진영;전명중;박영택
    • 정보과학회 논문지
    • /
    • 제43권1호
    • /
    • pp.61-70
    • /
    • 2016
  • 근래에 들어 다양한 시멘틱 서비스를 위하여 기존의 지식을 바탕으로 새로운 지식을 고속으로 추론할 수 있는 대용량 온톨로지 추론 기법이 요구되고 있다. 이런 추세에 따라 대규모의 클러스터를 활용하는 하둡 및 Spark 프레임워크 기반의 온톨로지 추론 엔진 개발이 연구되고 있다. 또한, 기존의 CPU에 비해 많은 코어로 구성되어 있는 GPGPU를 활용하는 병렬 프로그래밍 방식도 온톨로지 추론에 활용되고 있다. 앞서 말한 두 가지 방식의 장점을 결합하여, 본 논문에서는 RDFS 대용량 온톨로지 데이터를 인-메모리 기반 프레임워크인 Spark를 통해 분산시키고 GPGPU를 이용하여 분산된 데이터를 고속 추론하는 방법을 제안한다. GPGPU를 통한 온톨로지 추론은 기존의 추론 방식보다 저비용으로 고속 추론을 수행하는 것이 가능하다. 또한 Spark 클러스터의 각 노드를 통하여 대용량 온톨로지 데이터에 대한 부하를 줄일 수 있다. 본 논문에서 제안하는 추론 엔진을 평가하기 위하여 LUBM10, 50, 100, 120에 대해 추론 속도를 실험하였고, 최대 데이터인 LUBM120(약 1백7십만 트리플, 2.1GB)의 실험 결과, 인-메모리(Spark) 추론 엔진 보다 7배 빠른 추론 성능을 보였다.

C++컴파일러 및 프로그래밍 환경 개발 (Debelppment of C++ Compiler and Programming Environment)

  • 장천현;오세만
    • 한국정보처리학회논문지
    • /
    • 제4권3호
    • /
    • pp.831-845
    • /
    • 1997
  • 본 논문에서는 가장 널리 사용되고 있는 객체지향 언어인 C++를 지한 컴푸일러 및 대화식 프로그래밍 환경을 제안하고 개발하였다. C++ 언어를 위한 컴파일러를 개발하기 위해 컴파러를 Front-End 와 Back-End로 나누고 가상기계인 EM을 사용하여 연결하는 모델을 사용하였다. Front-End 개발시에는 C++ 문법을 문법석 도구, 어휘 및 구문분석기 생성도구를 이용하여 구문분석 방법과 문맥에 연동된 문법 처리기술과 AST클래스 라이브러리를 개발하였다. Back-End에서는 목적기계 표현기술과 토리코드 최적화 방법, 트리 패턴 매칭에 의한 재목적 코드 생성 기법을 제안하고 이를 이용한 재목적이 용이한 SPARC 기계 Back-End를 개발하였다. C++를 위한 대화식 프로그래밍 환경은 언어의 다양한 특성을 효과적으로 표현하기 위해 AST을 이용하고, 점진적 분석 기술과 시각 기호 를 제안하였다. 대화식 환경의 일반화에 의한 자동생성 방법과 프로그램의 정형화된 표현 방법을 위한 Unparsing 체계를 제안하였다. 개발된C++ 컴팰러와 대화식 프로그램 환경은 통합된 C++ 프로그래밍 환경을 구성하게 된다. 본 연구를 통해 얻어진 기술 들은 새로운 고급언어 및 기계에 대한 컴파일러의 개발은 물론 병렷 및 분산 환경을 위한 컴파일러 개발에 활옹될 수 있을 것이다.

  • PDF

Apache Spark를 활용한 대용량 데이터의 처리 (Processing large-scale data with Apache Spark)

  • 고세윤;원중호
    • 응용통계연구
    • /
    • 제29권6호
    • /
    • pp.1077-1094
    • /
    • 2016
  • 아파치 스파크는 빠르고 범용성이 뛰어난 클러스터 컴퓨팅 패키지로, 복구 가능한 분산 데이터셋이라는 새로운 추상화를 통해 데이터를 인메모리에 유지하면서도 결함 감내성을 얻을 수 있는 방법을 제공한다. 이러한 추상화는 하드디스크에 직접 데이터를 읽고 쓰는 방식으로 결함 감내성을 제공하는 기존의 대표적인 대용량 데이터 분석 기술인 맵 리듀스 프레임워크에 비해 상당한 속도 향상을 거두었다. 특히 로지스틱 회귀 분석이나 K-평균 군집화와 같은 반복적인 기계 학습 알고리즘이나 사용자가 실시간으로 데이터에 관한 질의를 하는 대화형 자료 분석에서 스파크는 매우 효율적인 성능을 보인다. 뿐만 아니라, 높은 범용성을 바탕으로 하여 기계 학습, 스트리밍 자료 처리, SQL, 그래프 자료 처리와 같은 다양한 고수준 라이브러리를 제공한다. 이 논문에서는 스파크의 개념과 프로그래밍 모형에 대해 소개하고, 이를 통해 몇 가지 통계 분석 알고리즘을 구현하는 방법에 대해 소개한다. 아울러, 스파크에서 제공하는 기계 학습 라이브러리인 MLlib과 R 언어 인터페이스인 SparkR에 대해 다룬다.