• 제목/요약/키워드: 공유 메모리

검색결과 447건 처리시간 0.028초

대규모 병렬 시스템에서 캐시와 공유메모리를 이용한 유한 차분법 성능 (Performance of the Finite Difference Method Using Cache and Shared Memory for Massively Parallel Systems)

  • 김현규;이효종
    • 전자공학회논문지
    • /
    • 제50권4호
    • /
    • pp.108-116
    • /
    • 2013
  • 최근 GPU 시스템과 같은 수백 개의 프로세서로 구성된 대규모 병렬 시스템을 이용하여 성능을 향상시키는 방법들이 많이 개발 되었다. 대표적으로 GPU에서 캐싱(Caching)과 유사한 개념으로 공유 메모리가 사용되었다. 출력 값을 얻기 위해서 이웃 값을 참조하는 이미지 필터와 같은 알고리즘들의 경우 이웃 값의 참조가 빈번하게 발생되므로 공유 메모리를 사용할 경우 성능이 향상되었다. 그러나 공유 메모리를 사용하기 위해서는 기존 코드를 재 구현해야만 하고 이는 코드의 복잡도를 증가시키는 원인이 된다. 최근 GPU 시스템에서는 공유 메모리 뿐 아니라 L1과 L2 캐시 메모리를 지원하도록 하였다. L1 캐시 메모리는 공유 메모리와 동일한 하드웨어에 위치하여 캐시의 사용이 성능향상을 도와줄 것으로 예측된다. 따라서 본 논문에서는 캐시 메모리와 공유 메모리의 성능을 비교하였다. 연구결과 성능 면에서 캐시 메모리를 사용한 알고리즘과 공유메모리를 사용한 알고리즘은 유사하였다. 특히 캐시 메모리를 사용하는 경우 공유메모리 사용 프로그래밍에서 나타나는 코드 복잡도의 증가 문제도 동시에 해결할 수 있었다.

듀얼 버스 시스템에서의 공유 메모리 커널 모듈 구현 (Implementation of Kernel Module for Shared Memory in Dual Bus System)

  • 문지훈;오재철
    • 한국전자통신학회논문지
    • /
    • 제10권5호
    • /
    • pp.539-548
    • /
    • 2015
  • 본 논문에서는 프로세서별 서로 다른 버스에 서로 다른 운영체제를 갖는 멀티코어 시스템에서 공유 메모리 기능을 구현하고, 임베디드 리눅스 시스템을 통하여 두 프로세서 사이에서 공유 메모리 기능을 실험하였다. 듀얼 버스 구조에서 공유 메모리 구현을 위해 메모리 컨트롤러를 이용하였으며, 리스트 자료구조를 통하여 공유 메모리 세그먼트를 관리한다. AMP 멀티 코어 실험을 위하여 2개의 프로세서 코어에 리눅스 운영체제를 탑재하도록 하였다. 그리고 공유 메모리 테스트를 위하여 구현된 커널 모듈을 이용하여 공유 메모리 생성 및 이용이 가능함을 확인 하였다.

유닉스웨어상의 가상 메모리 자원의 공유 (Sharing of Vitual Memory Resources in Unixware)

  • 오석근;차규일;황시영;유혁
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제26권5호
    • /
    • pp.575-583
    • /
    • 1999
  • 본 논문은 유닉스웨어의 가상 메모리 시스템에서 자원을 보다 효율적으로 공유하는 방법에 관해 논한다. 기존의 유닉스웨어는 가상 메모리 자원을 프로세스 단위로 할당하며 공유하지 않는다. 그런데 가상 메모리의 요구량과 이 자원을 사용하는 프로세스의 수가증가함에따라 가상 메모리 자원은 시스템의 성능을 저하시키는 요인이 된다. 본 논문은 유닉스웨어에서 가상 메모리 최적화방안으로써 가상 메모리 자원을 공유하는 방법에 대해 고찰한다. 본 논문은 유닉스웨어에서 가상 메모리 자원의 공유 방법으로써 '공유 페이지 디렉토리'기법을 제시하고 이를 구현하였다. 또한 사용 시스템상의 실험결과를 통해 제안된 기법이 전체 시스템 성능을 향상시킴을 보이고 있다.

고장을 허용하는 분산공유메모리 시스템의 성능 향상 기법 (Enhancing the Performance of Fault-Tolerant Software Distributed Shared Memory)

  • 김영재;박소연;맹승렬
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2003년도 봄 학술발표논문집 Vol.30 No.1 (A)
    • /
    • pp.76-78
    • /
    • 2003
  • 클러스터 시스템의 규모가 커짐에 따라 소프트웨어 분산공유메모리 시스템의 고장 발생 확률은 점차 증가하고 있다. 그래서 최근에는 소프트웨어 분산공유메모리 시스템에 고장 허용 기능을 추가하는 연구가 활발히 이루어지고 있다. 연구의 초점은 소프트웨어 분산공유메모리 시스템이 정상 실행을 하는 동안 고장 허용 기능을 추가로 지원하면서 발생하는 오버헤드를 줄이는데 있다. 본 논문은 고장 허용 기능을 위해 원격 로깅 기법을 사용하는 소프트웨어 분산공유메모리 시스템에서 로그를 이용함으로써 전체적인 성능 향상을 기대한다.

  • PDF

분산 공유 메모리 시스템에서 거짓 공유를 줄이는 호출지 추적 기반 공유 메모리 할당 기법 (Call-Site Tracing-based Shared Memory Allocator for False Sharing Reduction in DSM Systems)

  • 이종우
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제32권7호
    • /
    • pp.349-358
    • /
    • 2005
  • 거짓 공유는 공유 메모리 다중 처리기 시스템에서 여러 처리기들이 일관성 유지의 단위 메모리 영역을 공유함으로 인해 발생하는 현상으로써, 메모리 일관성 유지의 정확성에는 아무런 도움을 주지 못하면서 그 비용만 증가시키는 주요 요인이다. 특히 메모리 일관성 유지의 단위가 커질수록 그 피해가 더 커진다고 할 수 있다. 페이지-기반 분산 공유 메모리 시스템에서 거짓 공유를 줄이기 위해서는 공유 페이지에 할당되는 객체들의 특성을 미리 예측하여 참조 패턴이 상이한 객체들이 하나의 공유 페이지에 섞이는 것을 방지하는 것이 필수적이다. 본 논문에서는 병렬 응용 프로그램의 코드 내에서 공유 메모리 할당자를 호출한 위치를 추적하여 서로 다른 호출지에서 요청된 공유 객체가 같은 공유 페이지에 할당되는 것을 방지하는 호출지-추적 기반 거짓 공유 감소 기법(CSTallocator)을 제시한다. CSTallocator는 서로 다른 코드 위치에서 할당 요청된 공유 객체들은 각각 상이한 참조 패턴을 보일 것이라는 가정에 기반하고 있다 이 기법의 효용성을 검증하기 위해 기존 거짓 공유 감소 할당 기법들의 성능과 비교한 결과 기존 방식에 비해 훨씬 더 많은 거짓 공유 폴트를 감소시킨다는 것을 알 수 있었다. 실험은 실제 병렬 응용에 기반한 실행-기반 시뮬레이션 기법을 사용하였다.

캐쉬 구조의 메모리 공유 패턴 예측기 설계 (The Design of Memory Sharing Pattern Predictors with Cache Structure)

  • 박소연;손영철;신규환;맹승렬;이준원;조정완
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 봄 학술발표논문집 Vol.27 No.1 (A)
    • /
    • pp.639-641
    • /
    • 2000
  • 캐쉬를 사용하는 분산 공유 메모리 시스템에서는 캐쉬들 사이의 일관성 유지를 위한 지연 시간이 성능에 큰 영향을 미친다. 최근에는 각 공유 메모리의 일반적인 접근 패턴을 학습하여 일관성 유지의 예측적 수행을 가능하게 하는 메모리 공유 패턴 예측기가 연구되고 있다. 기존의 메모리 공유 패턴 예측기는 패턴 정보를 저장하기 위해서 모든 메모리 블락마다 예측 테이블들을 할당하지만 실제로 성능 향상에 도움을 주는 테이블들은 소수에 불과하다. 본 논문에서는 적은 양의 패턴 저장 공간을 사용하면서 기존의 예측기와 유사한 성능을 낼 수 있는 캐쉬 구조의 메모리 공유 패턴 예측기를 제안한다, 제안된 예측기에서는 좋은 성능을 내는 예측 테이블들을 선택적으로 저장하게 하는 효율적인 테이블 교체 기법이 요구된다. 본 논문에서는 LRU 교체 기법을 캐쉬 구조의 예측기에 적용시켰을 때의 문제점을 분석하고 제안된 예측기의 특성에 적합한 테이블 교체 기법을 제안한다.

  • PDF

소프트웨어 분산공유메모리 시스템을 위한 HLRC 프로토콜의 설계 및 구현 (Design and Implementation of HLRC Protocol for Software Distributed Shared Memory System)

  • 윤희철;이상권;이준원
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 봄 학술발표논문집 Vol.27 No.1 (A)
    • /
    • pp.624-626
    • /
    • 2000
  • 통신 오버헤드 및 거짓 공유(false sharing)등의 문제를 해결하기 위하여 소프트웨어 분산공유메모리 시스템을 위한 다양한 메모리 모델등이 제안되었다. HLRC(Home based Lazy Release)[1]는 Keleher에 의해 제안된 LRC[2] 모델에 home 개념을 도입한 모델로서 최근의 소프트웨어 분산공유 메모리 시스템에서 널리 채용되고 있다. 본 논문에서는 HLRC 모델을 기반으로 한 메모리 일관성 프로토콜의 설계, 구현, 그리고 성능 측정 결과에 관하여 기술한다.

  • PDF

Trojan : 공유메모리 구조를 위한 고성능 시뮬레이터 (Trojan : A High-Performance Simulator for Shared Memory Architectures)

  • 박대연;안우현
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제26권4호
    • /
    • pp.420-431
    • /
    • 1999
  • 이 논문은 병렬 공유 메모리 시스템의 성능을 정확하게 평가할수 있으며 MIT의 Proteus 시뮬레이터의 기능을 확장한 시뮬레이터인 Trojan 에 대해 언급한다. 이 논문에서 언급되는 trojan 의 주요한 기능으로는 다음과 같다. 첫째, Trojan 은 프로세스 기반 응용 프로그램(예를 들어 SPLASH)과 쓰레드 기반 응용 프로그램들(예를 들어 SPLASH2) 에 대해 효율적 시뮬레이션을 제공한다. 둘째, 수행 구동 시뮬레이터 중에 처음으로 가상 메모리 시뮬레이션 기능이 구현되었다. 실제 운영체제의 가상 메모리 시스템과 하드웨어 시스템과의 상호작용 및 가상 메모리 시스템의 성능을 평가할수 있게 되었다. 기존의 공유 메모리 시뮬레이터들은 공유 메모리를 참조하기위해서 시뮬레이터 자체가 제공하는 문법에 맞게 변경해야만 하는 단점이 있다. 이 논문에서처럼 Trojan 시뮬레이터는 캐쉬동작, 네트웍통신양, 다주프로세서 시스템 설계,그리고 병렬 공유 응용 프로그램동작 및 성능 연구에 효율적이고 폭넓게 사용되고 있다.

공유 메모리를 갖는 다중 프로세서 컴퓨터 시스팀의 설계 및 성능분석

  • 최창열;박병관;박승규;오길록
    • ETRI Journal
    • /
    • 제10권3호
    • /
    • pp.83-91
    • /
    • 1988
  • 본 논문에서는 pended 프로토콜에 기반을 둔 단일 시스팀 버스와 공유 메모리를 중심으로 구성된 다중프로세서 컴퓨터시스팀의 성능을 해석하였다. 캐쉬 메모리 적중률, 시스팀 내의 프로세서 수, 메모리 모듈의 수와 입력 큐의 유무를 변수로 하여 시스팀 버스와 프로세서의 이용률, 메모리 충돌 현상의 정도, 즉 제안된 시스팀 구조에 대한 하드웨어 측면에서의 성능을 시뮬레이션을 통해 예측 분석하였다. 공유 메모리를 갖는 다중프로세서의 주요한 시스팀 성능 요소는 캐쉬 메모리의 적중률과 효과적인 공유 메모리 갱신 알고리즘, 시스팀 버스의 효율적인 다중프로세서 지원 기능 등이며 캐쉬 메모리 적중률이 프로세서 수의 증가에 따른 시스팀 성능의 선형적인 증가와 밀접한 관계를 나타내었다.

  • PDF

분산 공유 메모리 시스템에서 거짓 공유를 줄이는 객체-크기 및 호출지-추적 기반 공유 메모리 할당 기법 (Object-Size and Call-Site Tracing based Shared Memory Allocator for False Sharing Reduction in DSM Systems)

  • 이종우;박영호;윤용익
    • 디지털콘텐츠학회 논문지
    • /
    • 제9권1호
    • /
    • pp.77-86
    • /
    • 2008
  • 거짓 공유는 공유 메모리 다중 처리기 시스템에서 여러 처리기들이 일관성 유지의 단위 메모리 영역을 공유함으로 인해 발생하는 현상으로써, 메모리 일관성 유지의 정확성에는 아무런 도움을 주지 못하면서 그 비용만 증가시키는 주요 요인이다. 특히 메모리 일관성 유지의 단위가 커질수록 그 피해가 더 커진다고 할 수 있다. 페이지-기반 분산 공유 메모리 시스템에서 거짓 공유를 줄이기 위해서는 공유 페이지에 할당되는 객체들의 특성을 미리 예측하여 참조 패턴이 상이한 객체들이 하나의 공유 페이지에 섞이는 것을 방지하는 것이 필수적이다. 본 논문에서는 객체-크기와 호출지-추적에 기반한 거짓 공유 감소 기법인 SCSTallocator: Sized and Call-Site Tracing based allocator)을 제시한다. SCSTallocator는 서로 다른 코드 위치에서 할당 요청된 공유 객체들은 각각 상이한 참조 패턴을 보일 것이라는 가정에 기반함과 동시에 요청된 객체의 크기가 다르면 향후 참조 패턴도 다를 것이라고 가정하고 있다. 본 논문에서는 기존의 두 정책(크기별 할당 정책과 호출지-추적 기반 할당 정책)을 동시에 적용할 경우 거짓 공유를 더 많이 줄일 수 있을 것이라는 예상을 실험을 통해 확인하였다.

  • PDF