View : 20 Download: 0

렌더링 시스템을 위한 버퍼 캐쉬 관리기법

Title
렌더링 시스템을 위한 버퍼 캐쉬 관리기법
Other Titles
Buffer Cache Management for Rendering Systems
Authors
신동희
Issue Date
2019
Department/Major
대학원 컴퓨터공학과
Publisher
이화여자대학교 대학원
Degree
Master
Advisors
반효경
Abstract
본 논문에서는 범용 시스템에서 널리 사용되는 버퍼 캐쉬가 렌더링 소프트웨어 수행 시 비효율적으로 동작한다는 것을 분석하고 이를 해결하는 렌더링 시스템용 버퍼 캐쉬 관리 기법을 제안한다. 렌더링은 3D 애니메이션, 특수효과 등에 널리 사용되는 소프트웨어 기법으로, 형태, 명암, 질감 등의 정보가 담긴 입력파일을 바탕으로 초당 24 프레임 이상의 고화질 이미지를 생성하는 과정이다. 연산 집약적인 특성을 보이는 렌더링 작업에서 CPU와 GPU 연산기에 비해 현저히 느린 스토리지 접근과정에서 병목이 발생한다. 병목 현상을 해결하기 위해 적합한 버퍼 캐쉬 관리 기법을 설계해야 하는데, 기존의 범용 컴퓨터 방식의 버퍼 캐쉬 관리 기법을 그대로 사용하는 것은 적절하지 않다. 왜냐하면 범용 워크로드는 캐쉬 크기가 증가할수록 성능이 점진적으로 개선되나, 렌더링 워크로드의 경우 실험을 통해 확인해본 결과 버퍼 캐쉬의 크기가 증가하더라도 성능이 거의 개선되지 않다가 데이터를 모두 담을 수 있을 정도로 캐쉬 크기가 증가한 후에 성능 개선이 나타나기 때문이다. 이를 위해 본 논문은 먼저 다양한 렌더링 파일 입출력 트레이스를 추출하여 렌더링의 고유한 입출력 패턴을 분석하였다. 그 결과 렌더링 파일 입출력은 주기가 긴 반복 참조와 주기가 짧은 반복 참조, 임의 참조, 그리고 1회성 쓰기 참조로 구성된다는 것을 발견하였다. 본 논문은 이러한 렌더링의 파일 참조 특성을 고려하여 버퍼 캐쉬 공간을 분할하여, 각 참조 패턴 별 특성에 맞는 관리 기법을 제안하고, 버퍼 캐쉬 공간을 동적으로 할당하여, 기존 버퍼 캐쉬 대비 평균 19%, 최대 55%의 성능을 개선시켰다.;In this paper, we found that a buffer cache management scheme in general-purpose system works inefficiently when performing rendering software and presented a new buffer cache management scheme that resolve this problem for rendering system. Rendering is a software technique widely used in 3D animation and visual effects (VFX). It is a process that generating high-definition images of more than 24 frames per second based on an input file containing information such as shapes, contrast and texture. On compute-intensive rendering works, bottlenecks occur in storage access which is significantly slower than CPU and GPU. In order to solve this problem, it is necessary to design a new buffer cache management scheme suitable to rendering system. It is not appropriate to use traditional general-purpose system's buffer cache management scheme. General-purpose workload has a gradual improvement in performance as the cache size increases. However, in the case of the rendering workload, the experiment shows that even if the size of the buffer cache increases, the performance is hardly improved. After the cache size increases a point where it can hold all of the data, the performance is improved. To do so, we collected various file I/O traces of rending software and analyzed their characteristics. From this analysis, we observed that file I/Os in rendering consist of long loops, short loops, random accesses, and write-once accesses. Based on this observation, we presented a buffer cache management scheme that allocates cache space to each access types, manages them appropriately and dynamically allocate the buffer cache space, thereby improving the buffer cache performances by 19% on average and up to 55%.
Fulltext
Show the fulltext
Appears in Collections:
일반대학원 > 컴퓨터공학과 > Theses_Master
Files in This Item:
There are no files associated with this item.
Export
RIS (EndNote)
XLS (Excel)
XML


qrcode

Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.

BROWSE