초록
본 논문에서는 범용 시스템에서 널리 사용되는 버퍼캐쉬가 렌더링 소프트웨어 수행시 비효율적으로 동작한다는 것을 분석하고 이를 해결하는 렌더링 시스템용 버퍼캐쉬 관리 기법을 제안한다. 이를 위해 본 논문은 먼저 다양한 렌더링 파일 입출력 트레이스를 추출하여 렌더링의 고유한 입출력 패턴을 분석하였다. 그 결과 렌더링 파일 입출력은 주기가 긴 반복참조와 주기가 짧은 반복참조, 임의참조, 그리고 1회성 쓰기참조로 구성된다는 것을 발견하였다. 본 논문은 이러한 렌더링의 파일참조 특성을 고려하여 버퍼캐쉬 공간을 참조별로 할당하고 그에 맞는 관리 기법을 제안하여 기존 버퍼캐쉬 대비 평균 19%, 최대 55%의 성능을 개선시켰다.
In this paper, we found that buffer cache in general systems does not perform well in rendering software, and presented a new buffer cache management scheme that resolves this problem. 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 and manages them appropriately, thereby improving the buffer cache performances by 19% on average and up to 55%.