RISS 학술연구정보서비스

검색
다국어 입력

http://chineseinput.net/에서 pinyin(병음)방식으로 중국어를 변환할 수 있습니다.

변환된 중국어를 복사하여 사용하시면 됩니다.

예시)
  • 中文 을 입력하시려면 zhongwen을 입력하시고 space를누르시면됩니다.
  • 北京 을 입력하시려면 beijing을 입력하시고 space를 누르시면 됩니다.
닫기
    인기검색어 순위 펼치기

    RISS 인기검색어

      검색결과 좁혀 보기

      선택해제
      • 좁혀본 항목 보기순서

        • 원문유무
        • 음성지원유무
        • 학위유형
        • 주제분류
        • 수여기관
          펼치기
        • 발행연도
          펼치기
        • 작성언어
        • 지도교수
          펼치기

      오늘 본 자료

      • 오늘 본 자료가 없습니다.
      더보기
      • Program optimization exploiting cross-invocation value reuse

        윤석주 성균관대학교 일반대학원 2014 국내석사

        RANK : 247599

        반도체 공정 기술의 발전으로 메모리 집적도가 지속적으로 높아짐에따라, 컴퓨터 시스템의 메모리 용량도 지속적으로 증가하고 있다. 그러나, 현재 메인 메모리로 널 리 사용되고 있는 DRAM 은 비트를 저장하는 커패시터(capacitor)의 스케일링으로 인해, 전하 유지 시간(retention time)이 점차 짧아지고 있으며, 이는 리프레쉬 (refresh) 비용의 증가로 이어지고 있다. 이러한 문제를 해결하기 위해, DRAM을 대체하거나 보완할 새로운 메모리 디바이스 기술이 활발히 연구되고 있다. 이 중 비휘발성의 특성을 가지며, DRAM 처럼 byte-addressable 한 메모리 디바이스들 을 흔히 Storage Class Memory(SCM)이라 부르는데, SCM은 데이터 유지를 위한 Refresh가 필요없고, 집적도가 높아 비트당 가격이 저렴한 장점이 있다. 또한, PRAM, STT-RAM등의 SCM 디바이스는, DRAM과 비슷한 수준의 엑세스 시간을 갖는다. 따라서, SCM과 DRAM을 혼용하여, 메인 메모리 시스템을 구성하려는 방법 들이 제안되었는데, 이를 Unified Memory System(UMS)이라 부른다. UMS는 기 존의 DRAM 메인 메모리에 비해, 같은 가격과 전력 소모 제한 하에서 더 많은 용 량의 메모리를 제공해 준다. 본 논문에서는 UMS가 제공하는 풍부한 메모리 자원 을 이용하여, 프로그램의 성능을 향상시키는 기법으로 Terminate-and-Stay-Resident (TSR) Object를 제안한다. TSR Object 는 프로그램 종료 후에도 데이터 가 메모리 영역에 상주하여, 다음번 프로그램 실행시 재활용 될 수 있는 메모리 오 브젝트이다. TSR Object 를 재활용 하여, 프로그램 수행시 오브젝트에 대한 초기화 시간을 줄이며 값의 재사용을 바탕으로 프로그램의 성능을 높일 수 있다. 또한, 본 고에서는 TSR Object 를 활용가능한 4개의 프로그램 패턴(Iterative Convergence, Branch-and-Bound, Inspector-and-Executor, Code Cache)을 제시한다. 이 4 가지 패턴에서 TSR Object를 활용하여, 루프의 반복 횟수를 줄이거나, 프로그램 초기 구동 시간을 절약하거나, 예측적 병렬화를 적용하는 등 다양한 방법으로 프로 그램의 성능을 개선할 수 있음을 보였다. Computer memory size continues to increase as memory densities have increased with the progress of semiconductor process technology. However, currently charge-retention time is gradually shortened due to the scaling of the DRAM cell capacitor and it can causes frequent refreshes. So as to solve this problem, the memory device technology replacing or supplementing the DRAM has been actively researched. Storage Class Memory (SCM) is the memory device which has characteristic of nonvolatile semiconductor memory and is byte-accessible and it doesn’t need to refresh device cells and has a low price per bit due to the high density of cells. In addition, the specific devices (PRAM, STT-RAM, etc.) have an average access time similar to the DRAM. In this paper, the techinique of improving the performance of the program, cross- invocation value reuse, using an abundant memory space like SCM is proposed. Terminate-and-Stay-Resident (TSR) object that is not terminated after end of the program can be recycled when the program is executed in the next time. This allows to reduce the object creation time at the beginning of the program, and it causes a performance improvement. In addition, this paper presents four patterns available to use TSR object (Iterative Convergence, Branch-and-Bound, Inspector-and-Executor and Code Cache). In these patterns, the performance is improved significantly that can be done in a variety of ways, reduction of the number of loop iterations, using the previous result value and speculative parallelization by using TSR object.

      • Workload-aware, non-uniform DRAM bank partitioning

        김동욱 성균관대학교 일반대학원 2014 국내석사

        RANK : 247599

        멀티코어 플랫폼에서 메인 메모리 시스템은 가장 중요한 공유 리소스 중의 하나이다. 메인 메모리의 대역폭을 최대화하고 지연시간을 최소화하기 위하여, 최근 DRAM 시스템은 메모리 접근 스트림의 지역성(locality)을 이용하여 성능을 향상시킨다. 그러나, 멀티코어 플랫폼에서는 여러 코어에서 동시에 메모리 요청을 보내기 때문에 이런 요청들이 겹치게 되어, 지역성을 감소시키는 결과를 가져오게 된다. 이런 문제는 bank 충돌을 증가시키며, row buffer hit rate을 저하시킨다. 이런 문제를 해결하여 시스템 전체의 throughput과 fairness를 향상시키기 위해, 본 논문에서는 workload-aware, non-uniform DRAM bank partitioning 기법을 제안한다. 멀티코어 플랫폼에서 한정된 DRAM bank를 효율적으로 사용하기 위해, 본 논문에서는 프로그램의 bank 할당량의 감소에 따른 성능 하락을 예측해주는 성능 모델과, 그 결과를 토대로 최적의 bank 할당을 찾아주는 partitioning 기법을 제안한다. 이를 통해 기존의 정적인 bank partitioning에 비해, 전체 시스템 throughput을 최대 3% (평균 0.8%), fairness를 최대 26% (평균 7.5%) 증가시켰다. The main memory system is one of the most important shared resources in multicore platforms. To maximize bandwidth and minimize latency, modern DRAM systems exploit spatial locality in a memory access stream. However, multiple memory request streams from multiple concurrent threads are interleaved, hence killing the spatial locality of DRAM accesses. This increases bank conflicts and decreases row buffer hit rates. To address this problem, we advocate workload-aware, nonuniform DRAM bank partitioning to improve overall system throughput and fairness. To make best use of a limited number of DRAM banks offered by multicore platforms, we propose an analytical model that predicts the program slowdown when the number of allocated banks is varying and apply it to find an optimal bank allocation for a given multiprogrammed workload. Our preliminary evaluation shows promising results the non-uniform bank partitioning guided by the prediction model improves overall system throughput by up to 3% (and 0.8% on average) and fairness by up to 26% (and 7.5% on average) over static uniform partitioning.

      • 가변 길이 압축해제 알고리즘에 대한 예측적 병렬화 기법

        장학범 성균관대학교 일반대학원 2014 국내석사

        RANK : 247599

        가변 길이 코딩은 효율적인 데이터 압축을 위해 폭 넓게 사용되고 있다. 일반적으로 이러한 가변 길이 압축 알고리즘은 대개 압축되지 않은 원본 데이터를 일정 길이의 블록으로 나누고, 각 블록에 가변 길이 코딩을 적용한다. 압축기의 경우 쉽게 블록 레벨(block-level) 병렬화를 적용할 수 있지만, 압축기에 비해 압축해제기의 병렬화의 경우 압축된 블록이 가변 길이를 가지므로, 이전 블록을 압축해제하기 전까지는 다음 블록의 시작점을 알 수 없기 때문에, 블록 수준에서 병렬적 압축해제가 어렵다. 본 논문에서는 가변 길이 압축기로 압축된 블록의 시작점을 높은 확률로 식별할 수 있는 새로운 예측 알고리즘과, 이 예측 알고리즘을 이용하여 압축해제기를 효과적으로 병렬화할 수 있게 해주는 SDM 병렬화 라이브러리를 제안한다. SDM의 실행모델은 Scanner-Decompressor-Merger으로 구성된, 3단계의 예측적 파이프라이닝(speculative pipelining)에 기반한다. Scanner 단계에서는 가변 길이 블록의 시작점을 높은 정확도와 낮은 오버헤드로 예측해 준다. 이렇게 예측된 값을 Decompressor 단계에 전송하면, 각 Decompressor 단계에서 그 값을 받아 여러 블록을 동시에 압축 해제를 수행한 후, 그 결과를 Merger 단계로 전송한다. Merger 단계에서는 각 Decompressor로부터 받은 정보를 순차적으로 결과 파일에 쓰는 역할을 한다. SDM 런타임은 하드웨어 리소스가 제한되어 있는 임베디드 환경에서도 이러한 파이프라인을 효율적으로 동작시킨다. 상용화된 시스템에서도 이미 널리 사용되고 있는 공개(open source) 압축 프로그램인 zlib, bzip2, H.264에서 실험한 결과, ARM (4-core)과 Tilera (36-core) 플랫폼에서, 각각 최대 2.50배와 8.53배, 기하평균(geometric mean) 1.96배와 4.04배 성능향상을 얻을 수 있었다. Variable-length coding is widely used for efficient data compression. Typically, the compressor splits the original data into blocks and compresses each block with variable-length codes, hence producing variable-length compressed blocks. Although the compressor can easily exploit ample block-level parallelism, it is much more difficult to extract such coarse-grain parallelism from the decompressor because a block boundary cannot be located until decompression of the previous block is completed. This paper presents novel algorithms to efficiently predict block boundaries and a runtime system that enables efficient block-level parallel decompression, called SDM. The SDM execution model features speculative pipelining with three stages: Scanner, Decompressor, and Merger. The scanner stage employs a high-confidence prediction algorithm that finds compressed block boundaries without fully decompressing individual blocks. This information is communicated to the parallel decompressor stage in which multiple blocks are decompressed in parallel. The decompressed blocks are merged in order by the merger stage to produce the final output. The SDM runtime is specialized to execute this pipeline correctly and efficiently on resource-constrained embedded platforms. With SDM we effectively parallelize three production-grade variable-length decompression algorithms—zlib, bzip2, and H.264—with maximum speedups of 2.50_ and 8.53_ (and geometric mean speedups of 1.96_ and 4.04_) on 4-core and 36-core embedded platforms, respectively.

      • QPR.js: A Runtime Framework for QoS-Aware Power Optimization for Parallel JavaScript Programs

        이원준 성균관대학교 일반대학원 2014 국내석사

        RANK : 247599

        JavaScript has become a general-purpose programming environment that enables complex, media-rich web applications. An increasing number of JavaScript programs are parallelized to run efficiently on today's multicore CPUs, which are capable of dynamic core scaling (DCS) and voltage/frequency scaling (DVFS). However, significant power savings are still left on the table since an operating point (in terms of the number of active cores and CPU voltage/frequency) is selected by monitoring CPU utilization or OS events, without considering the user's performance goal. To address this, we propose QPR.js, a QoS-aware power-optimizing runtime system for JavaScript. Using the QPR.js API, the application developer can specify a QoS goal and provide a fitness function to quantify the current level of QoS. During execution the QPR.js runtime system uses this information to autonomously find an optimal operating point minimizing power consumption while satisfying the QoS goal. Our evaluation with five parallel JavaScript programs demonstrates an average of 35.2% power savings over the Linux Ondemand governor without degrading user experience.

      • Criticality-aware memory allocation for heterogeneous memory systems

        이덕주 성균관대학교 일반대학원 2015 국내석사

        RANK : 247599

        Energy efficiency is one of the primary design goals in modern main memory systems. This paper introduces the heterogeneous system which uses different type of the memory device to achieve the energy efficiency. It consists of fast (performance-optimized) devices and slow (energy-optimized) devices. In this thesis we first perform memory object profiling to analyze the performance criticality of each page. To take the best of both devices in terms of performance and energy efficiency, we allocate pages above the threshold to fast memory devices and the rest to slow memory devices by considering each page's performance criticality. With this simple strategy, the heterogeneous memory system achieves an average of 29.4% reduction of energy-delay product (EDP) with DDR3+LPDDR2 hybrid and 1.22% with DDR3+PCM hybrid for SPEC CPU 2006 benchmarks.

      • Optimal Power Allocation for Multiprogrammed Workloads on Single-chip Heterogeneous Processors

        권의진 성균관대학교 일반대학원 2014 국내석사

        RANK : 247599

        Due to the growing requirements of performance and energy efficiency, processor manufacturers now integrate both CPU and GPU cores onto a single chip and support fine-grain dynamic voltage/frequency scaling (DVFS). To effectively utilize abundant hardware resources, the CPU and the GPU on a single-chip heterogeneous processor (SCHP) are required to execute multiple programs simultaneously via both space and time sharing. Since the performance is primarily limited by the available power budget, it is crucial to optimally allocate it across the CPU and the GPU by considering both workload characteristics and evaluation metrics. This paper advocates adaptive, workload-aware power allocation for multiprogrammed workloads on an SCHP with fine-grain DVFS capabilities. Using a detailed cycle-level SCHP simulator, we first demonstrate that workload-aware power allocation can improve throughput and energy efficiency by an average of 12% and 18%, respectively, over workload-oblivious uniform power allocation for 11 multiprogrammed workloads. We also propose two efficient run-time algorithms that find an optimal voltage/frequency setting for the two metrics (i.e., throughput and energy efficiency), which allow the SCHP to reach the optimal or near-optimal setting within four iterations.

      • eDRAM-Based Tiered-Reliability Memory with Applications to Low-Power Frame Buffers

        조경상 성균관대학교 일반대학원 2015 국내석사

        RANK : 247599

        Embedded DRAM (eDRAM) is becoming more and more popular as a low-cost alternative to on-chip SRAM. eDRAM is particularly attractive for frame buffers in video applications with ever increasing screen resolutions. However, eDRAM suffers short retention time and high refresh power, which prevents its widespread adoption. To save the refresh power of eDRAM-based frame buffers, we propose Tiered Reliability Memory (TRM), where the frame buffer is divided into multiple segments with different refresh periods and hence different error rates. By allocating most-significant bits to the most reliable segment, our four-tier TRM reduces refresh power by 48% without degrading user experience. eDRAM은 특히 비디오 어플리케이션에서 해상도가 커짐에 따라 상당히 중요성이 커지고 있지만, 데이터를 유지하기 위한 eDRAM의 짧은 리프레시 타임과 이에 따른, 높은 파워소모에 따라, 널리 적용되기 어려운 점들이 존재한다. 이러한 리프레시 파워의 제약을 극복하기 위해서, 본고에서는 TRM(Tiered Reliability Memory)를 제안한다. 프레임 버퍼를 다른 리프레시 주기를 가지는 멀티 세그먼트로 나누고 MSB(Most Significant Bit)를 가장 신뢰성이 높은 영역에 할당하고, LSB(Least Significant Bit)를 파워소모는 적지만 신뢰성에 낮은 영역에 할당하여, 유저가 느끼는 경험의 차이 없이 48%-80%까지의 파워소모를 절감하는 방법에 대해서 논의한다

      • (A) neural network accelerator exploiting both inter-and intra-neuron parallelism

        김진민 성균관대학교 일반대학원 2015 국내석사

        RANK : 247599

        현대의 processor SoC 들은 다양한 어플리케이션을 더 효율적으로 실행시키기 위해서 일반적인 목적의 CPU와 특화된 가속기를 집적한다. 에너지 효율이라는 측면은 이러한 SoC 들에서 가장 중요한 고려사항이다. 따라서 요즘 신경망 네트워크 가속기가 다시 재조명 받고 있다. 신경망 네트워크 가속기는 계산의 정확도와 성능과 에너지 효율 사이의 트레이드 오프를 사용한다. 즉, 비디오 프로세싱이나 이미지 프로세싱과 같이 사용자가 알아차리지 못하는 선에서 약간의 오차는 허락을 하는 어플리케이션들에서 정확도를 희생하는 대신 성능이나 에너지 측면에서 이득을 얻는 것이다. 그러나 현존하는 대부분의 가속기는 뉴런간의 병렬성만을 사용하기 때문에 특정 레이어의 뉴런 수가 적을 때 다수의 processing element 가 의미 있는 작업을 수행하지 못하고 대기하는 상황이 발생한다. 따라서 본 논문에서는 뉴런간 병렬성과 뉴런내 병렬성을 동시에 사용하는 Multi-Layer Perception (MLP) 구조에 기반한 신경망 네트워크 가속기를 제안한다. 본 논문에서 제안한 가속기는 5개의 어플리케이션으로 평가를 해본 결과 평균적으로 CPU에서만 돌렸을 때 보다 126%, 뉴런간의 병렬성만을 사용한 가속기에 비해서는 23%의 성능 향상을 보여주었다. 면적은 뉴런간의 병렬성만을 사용한 가속기에 비해 약 9% 증가하지만 에너지는 평균적으로 약 22% 절감하는 효과를 볼 수 있었다.

      • jAWS: A JavaScript Framework for Adaptive CPU-GPU Work Sharing

        Xianglan Piao 성균관대학교 일반대학원 2014 국내석사

        RANK : 247599

        Modern web browsers are required to execute many complex, compute-intensive applications written in JavaScript. With widespread adoption of heterogeneous processors, multiple heterogeneous parallel programming models for JavaScript have emerged, including River Trail and WebCL. Although they support multiple types of processing elements including CPUs and GPUs, significant performance gains are still left on the table since the program kernel runs on only one compute device, typically selected at kernel invocation. However, lack of shared memory between parallel contexts and high cost of message passing make it challenging to realize efficient work sharing between processing elements for JavaScript. To address this challenge, we propose jAWS, a JavaScript framework for adaptive work sharing between CPU and GPU for data-parallel workloads. The work sharing scheduler employs an efficient work partitioning algorithm that finds an optimal work distribution between the two devices without requiring offline profiling. The jAWS runtime provides shared arrays for multiple parallel contexts, hence eliminating extra copy overhead for input and output data. For 11 data-parallel programs from PolyBench and WebKit-WebCL, jAWS achieves geomean speedups of 360% and 65% over CPU-only and GPU-only execution, respectively. Compared to the best of both devices, jAWS improves performance by up to 29% with a geomean speedup of 9%, which falls within 5% of the maximum performance obtained by a static optimal work partitioning algorithm.

      연관 검색어 추천

      이 검색어로 많이 본 자료

      활용도 높은 자료

      해외이동버튼