• 제목/요약/키워드: WCET(Worst-case execution time)

검색결과 26건 처리시간 0.023초

Multicore-Aware Code Co-Positioning to Reduce WCET on Dual-Core Processors with Shared Instruction Caches

  • Ding, Yiqiang;Zhang, Wei
    • Journal of Computing Science and Engineering
    • /
    • 제6권1호
    • /
    • pp.12-25
    • /
    • 2012
  • For real-time systems it is important to obtain the accurate worst-case execution time (WCET). Furthermore, how to improve the WCET of applications that run on multicore processors is both significant and challenging as the WCET can be largely affected by the possible inter-core interferences in shared resources such as the shared L2 cache. In order to solve this problem, we propose an innovative approach that adopts a code positioning method to reduce the inter-core L2 cache interferences between the different real-time threads that adaptively run in a multi-core processor by using different strategies. The worst-case-oriented strategy is designed to decrease the worst-case WCET among these threads to as low as possible. The other two strategies aim at reducing the WCET of each thread to almost equal percentage or amount. Our experiments indicate that the proposed multicore-aware code positioning approaches, not only improve the worst-case performance of the real-time threads but also make good tradeoffs between efficiency and fairness for threads that run on multicore platforms.

An Interference Matrix Based Approach to Bounding Worst-Case Inter-Thread Cache Interferences and WCET for Multi-Core Processors

  • Yan, Jun;Zhang, Wei
    • Journal of Computing Science and Engineering
    • /
    • 제5권2호
    • /
    • pp.131-140
    • /
    • 2011
  • Different cores typically share the last-level cache in a multi-core processor. Threads running on different cores may interfere with each other. Therefore, the multi-core worst-case execution time (WCET) analyzer must be able to safely and accurately estimate the worst-case inter-thread cache interference. This is not supported by current WCET analysis techniques that manly focus on single thread analysis. This paper presents a novel approach to analyze the worst-case cache interference and bounding the WCET for threads running on multi-core processors with shared L2 instruction caches. We propose to use an interference matrix to model inter-thread interference, on which basis we can calculate the worst-case inter-thread cache interference. Our experiments indicate that the proposed approach can give a worst-case bound less than 1%, as in benchmark fib-call, and an average 16.4% overestimate for threads running on a dual-core processor with shared-L2 cache. Our approach dramatically improves the accuracy of WCET overestimatation by on average 20.0% compared to work.

Optimizing Instruction Prefetching to Improve Worst-Case Performance for Real-Time Applications

  • Ding, Yiqiang;Yan, Jun;Zhang, Wei
    • Journal of Computing Science and Engineering
    • /
    • 제3권1호
    • /
    • pp.59-71
    • /
    • 2009
  • While the average-case performance is important for general-purpose applications, worst-case performance is crucial for real-time systems to ensure schedulability and reliability. Recent work has shown that simple prefetching techniques such as the Next-N-Line prefetching can benefit both average-case and worst-case performance; however, the improvement on the worstcase execution time (WCET) is rather limited and inefficient. This paper presents two instruction prefetching approaches that are specially designed to enhance the worst-case performance, including the loop-based prefetching and WCET-oriented prefetching. Our experiments indicate that both instruction prefetching techniques can achieve better worst-case execution cycles than the Next-N-Line prefetching while having various impacts on the average-case performance.

XScale 프로세서 기반의 임베디드 소프트웨어를 위한 최악실행시간 분석도구의 구현 (Implementation of Worst Case Execution Time Analysis Tool For Embedded Software based on XScale Processor)

  • 박현희;최명수;양승민;최용훈;임형택
    • 정보처리학회논문지A
    • /
    • 제12A권5호
    • /
    • pp.365-374
    • /
    • 2005
  • 신뢰성 있는 내장 실시간 시스템을 구축하기 위해서는 프로그램의 스케줄링 가능성 여부를 검증해야 한다 스케줄링 가능성 분석을 위해서 는 프로그램의 최악실행시간 정보가 필수적인 요소이다. 최악실행시간 분석은 두 단계로 나된다. 첫 번째 단계에서는 프로그램 언어 구문상의 흐름을 분석하고, 두 번째 단계에서는 수행되는 흐름 경로상의 하드웨어적인 요소를 고려하여 수행시간을 분석한다. 본 논문에서는 XScale 프로세서를 대상으로 하는 최악실행시간 통합 분석 도구인 WATER(WCET Analysis Tool for Embedded Real-time system)를 설계하고 구현한다. 상위 수준의 흐름 분석기와 하위 수준의 실행시간 분석기로 이루어진 WATER의 구조를 소개하고 소프트웨어의 실제 측정과 WATER의 분석 결과를 비교한다.

Exploiting Static Non-Uniform Cache Architectures for Hard Real-Time Computing

  • Ding, Yiqiang;Zhang, Wei
    • Journal of Computing Science and Engineering
    • /
    • 제9권4호
    • /
    • pp.177-189
    • /
    • 2015
  • High-performance processors using Non-Uniform Cache Architecture (NUCA) are increasingly used to deal with the growing wire delays in multicore/manycore processors. Due to the convergence of high-performance computing with embedded computing, NUCA caches are expected to benefit high-end embedded systems as well. However, for real-time systems that use multicore processors with NUCA caches, it is crucial to bound worst-case execution time (WCET) accurately and safely. In this paper, we developed a WCET analysis approach by considering the effect of static NUCA caches on WCET. We compared the WCET in real-time applications with different topologies of static NUCA caches. Our experimental results demonstrated that the static NUCA cache could improve the worst-case performance of realtime applications using multicore processor compared to the cache with uniform access time.

실행 유휴 시간 분배 정책에 따른 실시간 전력 관리 스케줄링 기법의 성능 평가 (Performance Evaluation of Real-Time Power-Aware Scheduling Techniques Incorporating Idle Time Distribution Policies)

  • 탁성우
    • 한국정보통신학회논문지
    • /
    • 제18권7호
    • /
    • pp.1704-1712
    • /
    • 2014
  • 실시간 태스크의 스케줄링 가능성 검사를 위해 미리 설정된 태스크의 최악 실행 시간보다 태스크의 실제 실행 시간이 짧은 경우, 최악 실행 시간에서 남은 실행 유휴 시간이 발생한다. 발생된 실행 유휴 시간은 실시간 전력 관리 스케줄링 기법을 통해 배터리 기반 센서 노드의 전력 소비 감소에 활용될 수 있다. 이에 본 논문에서는 발생된 남은 최악 실행 유휴 시간을 분배하여 실시간 전력 관리 스케줄링 기법에서 활용할 수 있도록 세 가지 분배 정책을 제안하였다. 제안한 분배 정책은 보수적, 중도적, 그리고 공격적 실행 유휴 시간 분배 정책으로 각각 구분하였다. 그리고 분배 정책 유형에 따른 실시간 전력 관리 스케줄링 기법의 성능 평가는 전력 소비 측면에서 비교 분석하였다.

CAN을 이용한 차체 네트웍 시스템에 대한 Holistic 스케줄링 해석 (Holistic Scheduling Analysis of a CAN based Body Network System)

  • 신민석;이우택;선우명호
    • 한국자동차공학회논문집
    • /
    • 제10권5호
    • /
    • pp.114-120
    • /
    • 2002
  • In a distributed real-time control system, it is essential to confirm the timing behavior of all tasks because these tasks of each real-time controller have to finish their processes within the specified time intervals called a deadline. In order to satisfy this objective, the timing analysis of a distributed real-time system such as shcedulability test must be performed during the system design phase. In this study, a simple application of CAN fur a vehicle body network system is formulated to apply to a holistic scheduling analysis, and the worst-case execution time (WCET) and the worst-case end-to-end response time (WCRT) are evaluated in the point of holistic system view.

Multicore Real-Time Scheduling to Reduce Inter-Thread Cache Interferences

  • Ding, Yiqiang;Zhang, Wei
    • Journal of Computing Science and Engineering
    • /
    • 제7권1호
    • /
    • pp.67-80
    • /
    • 2013
  • The worst-case execution time (WCET) of each real-time task in multicore processors with shared caches can be significantly affected by inter-thread cache interferences. The worst-case inter-thread cache interferences are dependent on how tasks are scheduled to run on different cores. Therefore, there is a circular dependence between real-time task scheduling, the worst-case inter-thread cache interferences, and WCET in multicore processors, which is not the case for single-core processors. To address this challenging problem, we present an offline real-time scheduling approach for multicore processors by considering the worst-case inter-thread interferences on shared L2 caches. Our scheduling approach uses a greedy heuristic to generate safe schedules while minimizing the worst-case inter-thread shared L2 cache interferences and WCET. The experimental results demonstrate that the proposed approach can reduce the utilization of the resulting schedule by about 12% on average compared to the cyclic multicore scheduling approaches in our theoretical model. Our evaluation indicates that the enhanced scheduling approach is more likely to generate feasible and safe schedules with stricter timing constraints in multicore real-time systems.

Bounding Worst-Case Data Cache Performance by Using Stack Distance

  • Liu, Yu;Zhang, Wei
    • Journal of Computing Science and Engineering
    • /
    • 제3권4호
    • /
    • pp.195-215
    • /
    • 2009
  • Worst-case execution time (WCET) analysis is critical for hard real-time systems to ensure that different tasks can meet their respective deadlines. While significant progress has been made for WCET analysis of instruction caches, the data cache timing analysis, especially for set-associative data caches, is rather limited. This paper proposes an approach to safely and tightly bounding data cache performance by computing the worst-case stack distance of data cache accesses. Our approach can not only be applied to direct-mapped caches, but also be used for set-associative or even fully-associative caches without increasing the complexity of analysis. Moreover, the proposed approach can statically categorize worst-case data cache misses into cold, conflict, and capacity misses, which can provide useful insights for designers to enhance the worst-case data cache performance. Our evaluation shows that the proposed data cache timing analysis technique can safely and accurately estimate the worst-case data cache performance, and the overestimation as compared to the observed worst-case data cache misses is within 1% on average.

Bounding Worst-Case DRAM Performance on Multicore Processors

  • Ding, Yiqiang;Wu, Lan;Zhang, Wei
    • Journal of Computing Science and Engineering
    • /
    • 제7권1호
    • /
    • pp.53-66
    • /
    • 2013
  • Bounding the worst-case DRAM performance for a real-time application is a challenging problem that is critical for computing worst-case execution time (WCET), especially for multicore processors, where the DRAM memory is usually shared by all of the cores. Typically, DRAM commands from consecutive DRAM accesses can be pipelined on DRAM devices according to the spatial locality of the data fetched by them. By considering the effect of DRAM command pipelining, we propose a basic approach to bounding the worst-case DRAM performance. An enhanced approach is proposed to reduce the overestimation from the invalid DRAM access sequences by checking the timing order of the co-running applications on a dual-core processor. Compared with the conservative approach, which assumes that no DRAM command pipelining exists, our experimental results show that the basic approach can bound the WCET more tightly, by 15.73% on average. The experimental results also indicate that the enhanced approach can further improve the tightness of WCET by 4.23% on average as compared to the basic approach.