RISS 학술연구정보서비스

검색
다국어 입력

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

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

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

    RISS 인기검색어

      검색결과 좁혀 보기

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

        • 원문유무
        • 원문제공처
        • 등재정보
        • 학술지명
          펼치기
        • 주제분류
        • 발행연도
          펼치기
        • 작성언어
        • 저자
          펼치기

      오늘 본 자료

      • 오늘 본 자료가 없습니다.
      더보기
      • 무료
      • 기관 내 무료
      • 유료
      • 다중 포트 캐쉬를 이용한 VLIW 프로세서의 캐쉬 대역폭 향상 방안

        문수묵(Soo-Mook Moon) 한국정보과학회 1996 정보과학회논문지 : 시스템 및 이론 Vol.23 No.5

        Modern microprocessors that exploit instruction-level parallelism (ILP) require higher data cache bandwidth than sequential machines since at least the same number of cache references must be made in fewer clock cycles. In order to support the required bandwidth, multi-port caches have been proposed, allowing the execution of multiple load/store instructions in a single cycle Deciding the minimal number of cache ports that do not deeply affect performance is one of major resource allocation problems of ILP machines. Unfortunately, this decision is difficult to make for machines that exploit ILP in non-numerical code due to its irregularity. In this short paper, a comprehensive empirical study is performed on selected integer benchmarks using an aggressive ILP compiler aimed at characterizing a suitable number of cache ports and at evaluating the metric of cache bandwidth. Our study differs from previous ones in that the complier better exploits ILP in proportion to the amount of resources, thus measuring the performance impact of multi-port caches more accurately. Our results indicate that multi-port caches that provide high bandwidth significantly improve the performance of ILP machines, yet there is a consistent upper bound on the number of required ports. 명령어 수준의 병렬 처리 기법을 사용하는 VLIW 마이크로프로세서는 순차적 프로세서에 비해 같은 수의 캐쉬 참조를 더 짧은 시간에 해야 하므로 더 높은 케쉬 대역폭을 요구한다. 필요한 캐쉬 대역폭을 지원하기 위해 한 싸이클에 여러 load/store 인 명령어들을 동시에 수행시키는 다중 포트 캐쉬가 제안되었는데, VLIW 성능에 영향을 미치지 않는 최소의 포트 수를 결정하는 것이 중요한 자원 할당 문제로 등장하였다. 그러나, 비 계산용 코드를 목적으로 하는 VLIW에서는 코드의 불규칙한 병렬성 때문에 포트 수를 결정하기가 쉽지 않다. 본 연구에서는 적당한 포트 수와 캐쉬 대역폭을 평가하기 위해 강력한 컴파일러를 이용하여 선택된 정수 벤치마크에서 광범위한 실험 연구를 수행하였다. 본 연구에서 사용된 컴파일러는 과거의 연구들에 비해 병렬성을 더 많이 찾아내므로 다중 포트 캐쉬의 성능을 더 정확하게 측정하고 있다. 본 실험 결과에 따르면 다중 포트 캐쉬는 캐쉬 대역폭과 VLIW의 성능을 증가시키며 필요한 포트 수에는 일정한 제한이 있다.

      • KCI우수등재

        병렬화 코드의 트리 표현을 이용한 명령어 수준의 병렬성 향상

        문수묵(Soo-Mook Moon) 한국정보과학회 1995 정보과학회논문지 Vol.22 No.4

        최근의 단일 CPU 마이크로 프로세서들은 명령어 수준의 병렬 처리를 이용하여 성능 향상을 시키고 있다. 이러한 프로세서들의 성능 향상은 주로 한 클럭 싸이클에 여러 개의 ALU 명령이나 메모리 명령어들을 병렬로 수행하여 얻어진다. 그러나 조건 분기 명령어들이 많은 비 계산용 프로그램에서는 이러한 데이타 명령어들만의 병렬 수행으로 얻어진 성능 향상이 조건 분기 명령어들의 순차적 수행 때문에 상쇄되고 있다. 이러한 한계를 극복하기 위해서는 병렬 처리가, 분기 명령어들과 데이타 명령어들의 병렬 수행, 그리고 여러 분기 명령어들의 병렬 수행으로 확대되어야 한다. 본 논문에서는 이러한 확대된 병렬 처리가, 가장 일반화된 병렬 코드의 형태로 표현된 “트리 형”을 제안하고, 이 트리 형을 평가 하기 위해 광범위한 실험 연구를 수행하였다. 본 실험 결과에 따르면, 점점 더 많은 데이타 명령어들이 병렬 수행됨에 따라 제안된 트리 형은 분기 명령어들을 순차적으로 수행할 때에 비해 상당한 (두 배 정도의) 성능 향상을 가져 왔다. Modern single-CPU microprocessors attempt to improve their performance by exploiting instruction-level parallelism (ILP). These ILP-machines derive their performance advantage mostly from parallel execution of ALU or memory instructions within a single clock cycle. Unfortunately, the performance benefit obtained from parallel execution of these data instructions is severely offset by sequential execution of conditional branches, especially in non-numerical code where conditional branches are relatively frequent. In order to cope with this limitation, exploitation of parallelism must be extended to concurrent execution of data and branch instructions, as well as to parallel execution of multiple branches in a single cycle. This paper introduces a new representation of parallelized code called “tree representation” that allows this extension in the most generalized form. We performed a comprehensive empirical study aimed to evaluate the representation. The results indicate that, as more data instructions are executed in parallel, the performance benefit arising from the proposed representation becomes quite notable (i e , as much as twice) than the case of sequential execution of conditional branches.

      • KCI우수등재

        정적 스케쥴링된 ILP 마이크로 프로세서의 성능과 효율

        문수묵(Soo-Mook Moon) 한국정보과학회 1995 정보과학회논문지 Vol.22 No.2

        최근의 마이크로 프로세서들은 명령어 수준의 병렬처리를 이용하여 성능향상을 꾀하고 있다. 비계산용 프로그램에서는 코드 구조가 불규칙하기 때문에, 이러한 명령어 수준의 병렬처리가 쉽지 않다고 알려져 왔다. 이런 비계산용 프로그램의 병렬처리를 위해, 최근에 우리는 슈퍼스칼라 프로세서나 VLIW 프로세서에서 사용할 수 있는 스케쥴링 컴파일러를 개발하였다[1]. 본 논문에서는 이 스케쥴링 컴파일러를 이용하여, 정적으로 스케쥴된 프로세서의 성능과 효율성을 평가하고 컴파일러의 효율성을 살펴보기 위하여 광범위한 실험연구를 수행하였다. 본 실험 결과에 따르면, 구현 가능한 하드웨어에서 컴파일 시간과 코드 크기를 비효율적으로 증가시키지 않고도 다섯 배 정도의 성능향상을 얻을 수 있었으며, 적은 하드웨어에서도 역시 좋은 성능향상을 가지고 왔다. 이러한 결과는 불규칙적인 명령어 수준의 병렬처리에 대해 알려져 온 특성을 개선시켜 준다. Modern microprocessor attempt to boost their performance through instruction-level parallelism. Instruction-level parallelism in non-numerical program is regarded as scarce and bard to exploit due to its irregularity. Recently, we introduced a new code scheduling compiler [1] for VLIW or superscalar microprocessors to exploit the irregular parallelism. This paper performs a comprehensive empirical study based on the scheduling compiler to examine performance/efficiency of statically scheduled machines, and to assess the scheduling efficiency of the compiler. The results indicate that a five-fold speedup is achievable on realistic resources with a reasonable overhead of compilation time and code expansion, and that a solid speedup increase is also obtainable on machines with fewer resources. These results improve previously known characteristics of irregular ILP.

      • KCI등재

        메모리가 적은 자바 시스템을 위한 자동 동적 메모리 관리 기법

        최형규,문수묵,Choi, Hyung-Kyu,Moon, Soo-Mook 한국정보과학회 2008 정보과학회논문지 : 시스템 및 이론 Vol.35 No.8

        많은 내장형 시스템들이 자바(Java)를 널리 채택하고 있다. 내장형 시스템은 자바 가상 머신을 통해 자바를 지원하며, 자바 가상 머신은 쓰레기 수집기(Garbage Collector)를 통해서 동적 메모리를 자동으로 관리한다. 내장형 시스템은 적은 메모리를 가지고 있기 때문에 자바 가상 머신은 이를 효율적으로 관리해야 한다. 본 논문에서는 여러 자바 프로그램을 동시에 실행할 수 있는 자바 가상 머신에서 적은 메모리를 사용하면서도 효과적으로 메모리를 관리할 수 있는 메모리 관리 기법을 제안한다. 우선 개선된 압축(compaction)기법 기반의 쓰레기 수집 기법을 소개하여 움직일 수 없는 메모리 영역이 존재하더라도 외부 단편화(external fragmentation) 문제를 극복한다. 다음으로 수행 중 메모리 사용을 줄이기 위해서 쓰레기 수집기가 메모리에서 필요 없는 클래스(class)들을 선택적으로 수거하는 class unloading 기법을 소개한다. 소개한 기법들을 실제 동작하는 내장형 시스템에서 실험한 결과, 메모리가 부족하여 동시에 수행할 수 없었던 프로그램들이 같이 수행되는 등 매우 효과적이었다. Many embedded systems are supporting Java as their software platform via Java virtual machine. Java virtual machine manages memory automatically by providing automatic memory management, i.e. garbage collector. Because only scarce memory is available to embedded system, Java virtual machine should use small memory and manage it efficiently. This paper introduces two memory management techniques to exploit small memory in Java virtual machine which can execute multiple Java applications concurrently. First, compaction based garbage collection is introduced to overcome external fragmentation problem in presence of immovable memory area. Then garbage collector driven class unloading is introduced to reduce memory use of unnecessary loaded classes. We implemented these techniques in working embedded system and observed that they are very efficient, since more Java applications are able to be executed concurrently and memory use is also reduced with these techniques.

      • SFX의 ARM 적시 컴파일러를 위한 레지스터 프로모션

        오진석(JinSeok Oh),문수묵(Soo-Mook Moon) 한국정보과학회 2011 한국정보과학회 학술발표논문집 Vol.38 No.1A

        최근 모바일 기기가 활성화되면서 자바스크립트의 성능 향상이 이슈가 되고 있다. 적시 컴파일러를 탑재한 자바스크립트 엔진들이 등장하면서 이러한 요구를 충족하고 있다. 대표적 웹 브라우징 엔진인 WebKit의 자바스크립트 엔진인 SquirrelFish Extreme(SFX)는 콘텍스트 쓰레딩 방식의 적시 컴파일러를 사용하고 있다. 하지만 모바일 환경에서의 성능은 여전히 문제가 된다. 모바일 환경에서 많이 사용되는 ARM CPU를 위한 SFX의 적시 컴파일러는 가상 레지스터를 머신 코드에서 사용하기 위해 많은 수의 메모리 로드와 스토어를 사용하고 있다. 또한 ARM 아키텍처가 제공하는 레지스터를 제대로 사용하지 못하고 사용되지 않는 레지스터가 존재하고 있다. 사용되지 않는 레지스터를 활용하여 메모리 로드와 스토어를 줄이는 레지스터 프로모션을 적용하였다. 루프에서 머신 코드로 수행되는 바이트 코드를 중심으로 가상 레지스터를 실제 머신 레지스터로 할당하여 메모리 로드와 스토어를 줄이고 일부 벤치마크에서 성능향상이 나타남을 확인 했다. 레지스터 프로모션의 효과를 더 증대하기 위해 레지스터 프로모션의 범위를 함수 전체로 넓히고 핸들러 함수 호출에서 발생하는 오버헤드를 줄이는 최적화가 필요할 것으로 보인다.

      연관 검색어 추천

      이 검색어로 많이 본 자료

      활용도 높은 자료

      해외이동버튼