• 제목/요약/키워드: software transactional memory

검색결과 6건 처리시간 0.01초

Efficient Hybrid Transactional Memory Scheme using Near-optimal Retry Computation and Sophisticated Memory Management in Multi-core Environment

  • Jang, Yeon-Woo;Kang, Moon-Hwan;Chang, Jae-Woo
    • Journal of Information Processing Systems
    • /
    • 제14권2호
    • /
    • pp.499-509
    • /
    • 2018
  • Recently, hybrid transactional memory (HyTM) has gained much interest from researchers because it combines the advantages of hardware transactional memory (HTM) and software transactional memory (STM). To provide the concurrency control of transactions, the existing HyTM-based studies use a bloom filter. However, they fail to overcome the typical false positive errors of a bloom filter. Though the existing studies use a global lock, the efficiency of global lock-based memory allocation is significantly low in multi-core environment. In this paper, we propose an efficient hybrid transactional memory scheme using near-optimal retry computation and sophisticated memory management in order to efficiently process transactions in multi-core environment. First, we propose a near-optimal retry computation algorithm that provides an efficient HTM configuration using machine learning algorithms, according to the characteristic of a given workload. Second, we provide an efficient concurrency control for transactions in different environments by using a sophisticated bloom filter. Third, we propose a memory management scheme being optimized for the CPU cache line, in order to provide a fast transaction processing. Finally, it is shown from our performance evaluation that our HyTM scheme achieves up to 2.5 times better performance by using the Stanford transactional applications for multi-processing (STAMP) benchmarks than the state-of-the-art algorithms.

멀티코어 인메모리 환경에서 트랜잭션을 처리하기 위한 효율적인 HTM 기법 (Efficient Hardware Transactional Memory Scheme for Processing Transactions in Multi-core In-Memory Environment)

  • 장연우;강문환;윤민;장재우
    • 정보과학회 컴퓨팅의 실제 논문지
    • /
    • 제23권8호
    • /
    • pp.466-472
    • /
    • 2017
  • 하드웨어 트랜잭셔널 메모리(HTM)는 트랜잭션 처리를 위한 병렬 프로그래밍 패러다임을 크게 바꾸었으며, 최근 Intel에서 TSX를 제안함에 따라 HTM에 기반한 다수의 연구들이 수행되었다. 그러나 기존 연구들은 트랜잭션 처리에서 하나의 원인에 대한 충돌 예측만을 지원하며, 모든 워크로드에 대해 획일화된 TSX 환경을 제공한다. 이러한 문제점을 해결하기 위해, 본 논문에서는 멀티코어 인메모리 환경에서 트랜잭션을 처리하기 위한 효율적인 HTM 기법을 제안한다. 첫째, 제안하는 기법은 과거 트랜잭션 처리 정보를 수집한 매트릭스를 이용하여, HTM 실패시의 대비책 경로로써 STM 혹은 single lock을 선택한다. 둘째, 머신러닝 알고리즘 기반 재시도 정책을 제공함으로써, 워크로드 특성에 맞는 효율적인 트랜잭션 처리를 수행한다. 마지막으로 STAMP를 이용한 성능평가를 통해, 제안하는 기법이 기존 연구에 비해 10~20%의 성능 향상이 있음을 보인다.

소프트웨어 트랜잭셔널 메모리를 이용한 자료경합 치유 기술 설계 (A Design of Healing Data Races using Software Transactional Memory)

  • 최으뜸;하옥균;전용기
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2016년도 제54차 하계학술대회논문집 24권2호
    • /
    • pp.3-4
    • /
    • 2016
  • 멀티스레드 프로그램의 수행 중에 발생할 수 있는 자료경합은 프로그래머가 의도하지 않은 비결정적 수행으로 인해 신뢰할 수 없는 프로그램의 결과를 발생시킨다. 이러한 자료경합의 디버깅을 위해서 시간 및 자원적 비용이 과도하게 발생하기 때문에 프로그램의 수행 중에 이를 용인하고 치유하는 것이 중요하다. 본 논문은 멀티스레드 프로그램을 대상으로 소프트웨어 트랜잭셔널 메모리(STM)를 사용하여 공유변수에 대한 트랜잭션 영역을 설정하고 공유변수에 대한 이벤트 충돌 유형에 따른 자료경합 치유기법을 설계한다. 최종적으로는 프로그램 수행 중에 자료경합을 치유하는 기법의 실현가능성을 확인한다.

  • PDF

멀티코어 환경에서 샘플링 기반 재시도 정책을 이용한 하이브리드 트랜잭셔널 메모리 (Hybrid Transactional Memory using Sampling-based Retry Policy in Multi-Core Environment)

  • 강문환;장연우;윤민;장재우
    • 한국차세대컴퓨팅학회논문지
    • /
    • 제13권2호
    • /
    • pp.49-61
    • /
    • 2017
  • 트랜잭셔널 메모리는 트랜잭션 처리를 위한 병렬 프로그래밍 패러다임을 크게 바꾸었으며, 하드웨어 및 소프트웨어 방식에 따라 STM, HTM, HyTM으로 구분된다. 그러나, 기존 연구들은 모든 워크로드에 대해 획일적인 재시도 정책을 제공하는 문제점이 존재한다. 이러한 문제점을 해결하기 위해, 본 논문에서는 멀티코어 환경에서 샘플링 기반 유연한 재시도 정책을 이용한 하이브리드 트랜잭셔널 메모리 기법을 제안한다. 첫째, 제안하는 기법은 트랜잭션의 특성을 파악하여 HTM 혹은 STM을 선택하여 수행하거나, 블룸필터를 이용하여 동시에 HTM과 STM을 수행한다. 둘째, 제안하는 기법은 각 워크로드 내의 트랜잭션의 특성을 반영한 유연한 HTM 재시도 정책을 제공한다. 마지막으로 STAMP를 이용한 성능평가를 통해, 제안하는 기법이 기존 연구에 비해 10~20%의 성능 향상이 있음을 보인다.

소규모 노드로 구성된 고속 병렬 블록체인 아키텍처 (Concurrent blockchain architecture with small node network)

  • 조용준;신동명
    • 한국소프트웨어감정평가학회 논문지
    • /
    • 제17권2호
    • /
    • pp.19-29
    • /
    • 2021
  • 블록체인 기술은 장점인 신뢰성 문제를 넘어, 산업에서 요구하는 각종 성능을 만족하기 위한 단계에 접어 들었다. 하지만, 블록체인 아키텍처의 특성이 걸림돌이 되어, 반응성 및 병렬 확장성 개선에 어려움을 겪고 있다. 블록체인 기술을 산업에 적용하기 위해서는 성능 문제를 해결할 수 있도록 아키텍처를 재설계해야 한다. 본 연구에서는 블록체인의 기술적 특징을 보존하면서, 동시에 병렬처리 성능 및 반응성 향상을 위한 새로운 요소 기술과 이를 통합한 아키텍처 TPAC를 개발함으로써, 안정적이면서 빠른 트랜잭션 처리, 저지연성 등, 다양한 면에서의 성능이 개선됨을 보였다.

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

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