• 제목/요약/키워드: 문맥교환 오버헤드

검색결과 11건 처리시간 0.022초

다중 프로세서 시스템에서 문맥교환을 줄이기 위한 변형된 LLF 스케줄링 알고리즘 (A Modified Least-Laxity First Scheduling Algorithm for Reducing Context Switches on Multiprocessor Systems)

  • 오성흔;길아라;양승민
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제30권2호
    • /
    • pp.68-77
    • /
    • 2003
  • 최소 여유시간 우선(Least-Laxity First, LLF) 스케줄링 알고리즘은 작은 여유시간을 가진 태스크가 높은 우선순위를 갖는 스케줄링 알고리즘으로써 단일 프로세서 시스템에서 최적이고 다중 프로세서 시스템에서 준최적으로 증명되었다. 그러나 이 스케줄링 알고리즘은 여유시간 충돌이 발생하였을 때 태스크 간에 빈번한 문맥교환이 발생하게 되는 문제점이 있어 실용적이지 못하다. 본 논문에서는 과도한 문맥교환을 일으키는 LLF의 문제점을 해결하기 위해 다중 프로세서 시스템을 위한 MLLF/MP(Modified Least-Laxity First on Multiprocessor) 스케줄링 알고리즘을 제안한다. MLLF/MP는 태스크의 여유시간 역전이 발생하더라도 마감시간을 놓치지 않는 범위에서 태스크를 연속적으로 수행시킴으로써 빈번한 문맥교환이 발생하는 것을 방지한다. MLLF/MP 또한 다중 프로세서 시스템에서 준최적임을 증명한다. 모의 실험 결과를 통하여 MLLF/MP는 LLF보다 적은 스케줄링 오버헤드를 가짐을 보인다.

다중처리기 시스템에서 데드라인과 여유시간을 통합한 실시간 스케줄링 기법 (Integrating Deadline with Laxity for Real-time Scheduling in Multiprocessor Systems)

  • 조성제
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제29권11호
    • /
    • pp.611-621
    • /
    • 2002
  • 실시간 시스템에서 많은 요청을 처리하기 위해 다중처리기 구조가 필수적이 되었다. EDF나 LLA와 같은 기존의 실시간 온라인 스케줄링 알고리즘들은 다중처리기 시스템에서 실시간 태스크들을 스케줄링하는 데 적합하지 않다. EDF의 경우 문맥교환 오버헤드가 낮지만 다중처리기 이상현상을 보이며, LLA의 경우 준최적이지만 문맥교환 오버헤드가 높다. EDZL은 두 알고리즘의 문제점을 일부 해결하였으나 세 개 이상의 처리기에서는 준최적이 아니다. EDA2는 과부하 단계에서 좋은 성능을 보이지만 준최적이 아니다. 본 논문에서는 새로운 두개의 온라인 스케줄링 알고리즘 ED/LL과 ED2/LL을 제안한다. ED/LL은 다중처리기에서 준최적이며, 정상부하 단계에서 낮은 문맥교환 오버헤드와 높은 성공률을 보인다. 그러나, 시스템이 과부하 상태가 되면 ED/LL은 비효율적이다. 이를 해결하기 위해, ED2/LL은 정상 부하 단계에서는 ED/LL 또는 EDZL을 사용하고 과부하 단계에서는 EDA2를 사용한다. 실험을 통해 ED2/LL이 정상부하 단계에서는 물론 과부하 단계에서도 좋은 성능을 보임을 확인할 수 있었다.

ARM Cortex-M3의 HW/SW 기반 문맥교환 시간의 정량적인 평가 (A Quantitative Evaluation of SW/HW-Based Context Switch Time for ARM Cortex-M3)

  • 최하연;박상수
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2013년도 추계학술발표대회
    • /
    • pp.12-14
    • /
    • 2013
  • 임베디드 마이크로프로세서인 ARM Cortex-M3는 기존의 것들과는 달리 짧은 문맥교환을 제공하기 위해 Trap을 이용하여 문맥교환 과정을 일부 하드웨어적으로 처리하는 기능을 제공한다. 일반적으로 Trap (혹은 소프트웨어 인터럽트)은 그 자신만의 오버헤드를 갖고 있는 것으로 알려져 있다. 따라서 본 논문에서는 소프트웨어적으로 문맥교환을 하던 방식에 비해 어느 정도의 성능 향상이 있을지에 대한 정량적인 비교 평가를 수행하여 Cortex-M3를 기반으로 한 임베디드 시스템의 설계에 도움을 주도록 한다.

실시간 시스템을 위한 최소 여유시간 우선 기반의 최소 선점을 갖는 스케쥴링 알고리즘 (Minimum Preemption Scheduling Algorithm based on Least-Laxity-First for Real-Time Systems)

  • 오성흔;양승민
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제26권4호
    • /
    • pp.443-454
    • /
    • 1999
  • 최소 여유시간 우선(Least-Laxity-First)스케쥴링 알고리즘은 여유시간이 작은 태스트가 높은 우선순위를 갖는 동적 우선순위 스케줄링 방법으로서 단일프로세서 시스템에서 최적임이 증명되었다. 그러나, 이 알고리즘은 최소 여유시간을 가진 태스크가 여러 개 존재하여 여유시간 충돌이 발생한 경우 이 태스크들 간에 빈번한 문맥교환이 발생하게 되는 문제점이 있어 실용적이지 못하다. 본 논문에서 제한하는 최소 여유시간 우선 기반의 최소선점을 갖는 스케줄링 알고리즘(Least-Laxity-First with Minimum Preemption 또는 LLF/MP)은 여유시간이 충돌했을 때에 문맥교환을 최소화함으로써 최소 여유시간 우선 스케줄링 알고리즘의 단점을 해결하였다. LLF/MP 스케줄링 알고리듬은 불필요한 문맥교환을 줄임으로써 시스템 오버헤드로 인한 시스템의 성능 저하를 방지할 수 있고 보다 많은 시스템 자원을 예측 불가능한 비주기적 태스크에게 할당할수 있다.

다중프로세서 시스템을 위한 여유시간 기반의 온라인 실시간 스케줄링 알고리즘 (A Laxity Based On-line Real-Time Scheduling Algorithm for Multiprocessor Systems)

  • 조규억;김용석
    • 정보처리학회논문지A
    • /
    • 제16A권6호
    • /
    • pp.437-442
    • /
    • 2009
  • 마감시간을 기준으로 스케줄링하는 EDF (Earliest Deadline Fisrt) 알고리즘이나 여유시간을 기준으로 스케줄링 하는 LLF (Least Laxity First) 알고리즘과 같은 기존의 방식들은 다중프로세서 시스템에서는 스케줄링 성공률이 급격히 낮아지거나 문맥교환 획수가 지나치게 높아 현 실적인 적용에 무리가 있다. 이 둘을 적절히 조합하여 성능을 개선한 것으로서 EDZL (Earliest Deadline Zero Laxity)은 EDF를 기본으로 하고 여유시간이 0에 도달한 태스크에 대해서는 우선적으로 실행하도록 하는 방식이다. 본 논문에서는 LLF와 같이 최소 여유시간의 태스크를 우선 적으로 실행하되 문맥교환은 여유시간이 0에 도달한 태스크가 발생할 경우에만 이루어지도록 한 LLZL (Least Laxity Zero Laxity) 알고리즘을 제안한다. 시뮬레이션 평가결과 LLZL은 준최적으로 알려져 있는 LLF에 근접한 높은 스케줄링 성공률을 보이면서도 문맥교환 오버헤드는 EDF 와 비슷한 낮은 수준을 유지하였다. EDZL과의 비교에 있어서도 스케줄링 성공률, 문맥교환 횟수 두 가지 측면 모두 나은 성능을 보인다.

혼합 중요도 시스템의 주기 변환과 스케줄링 오버헤드간의 트레이드오프 관계 분석 (Analysis of Trade-off between Period Transformation and Scheduling Overhead in Mixed-Criticality System)

  • 윤상운;임지섭;강경태
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2022년도 제66차 하계학술대회논문집 30권2호
    • /
    • pp.3-5
    • /
    • 2022
  • 혼합 중요도(mixed criticality) 시스템은 안전에 중요한 기능을 우선시하도록 하는 추가적인 안전 요구사항이 존재한다. 그러나 기존 실시간 시스템의 설계로는 이를 만족하지 못하며, 높은 중요도 태스크가 다른 낮은 중요도 태스크로부터 간섭을 받아 데드라인 미스와 같은 문제를 일으키는 중요도 역전(criticality inversion) 문제가 발생할 수 있다. 이러한 중요도 역전 문제를 해결하기 위해 주기 변환(period transformation) 기법을 사용할 수 있지만, 스케줄링 오버헤드의 증가로 인해 오히려 전반적인 태스크의 응답시간이 증가하는 또 다른 문제가 발생하게 된다. 본 논문에서는 주기 변환과 스케줄링 오버헤드 간의 트레이드오프 관계를 설명하고, 실시간 리눅스 시스템에서 해당 문제점을 재연한 후 주기 변환의 적정선을 분석하고자 실험을 진행하였다. 그 결과, 중요도 역전 문제를 해결하기 위한 주기 변환을 그대로 적용할 경우, 문맥 교환이 48.7% 증가 및 스케줄링 오버헤드가 28.7% 증가로 인해 전반적인 응답시간이 증가하여 데드라인 미스가 다수 발생하는 결과를 확인할 수 있었다.

  • PDF

유효 시간 범위에서의 응답성 향상을 위한 실시간 스케줄링 알고리즘 (Scheduling Algorithm for Improving Response-Time within valid time)

  • 박도현;장민우;홍지만
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2010년도 한국컴퓨터종합학술대회논문집 Vol.37 No.1(B)
    • /
    • pp.389-392
    • /
    • 2010
  • 실시간 임베디드 시스템에서 멀티미디어 시스템 같은 빠른 응답성을 요구하는 시스템이 존재 할 수 있다. 현재 EDF, RM 알고리즘의 경우 각각 마감시간, 수행 주기 시간에 의해서 우선순위가 선정되고 수행된다. 그러나 시스템 상에 실시간 프로세스 외에 다양한 프로세스가 존재할 수 있다. 본 논문에서는 마감 시간과 프로세스의 기본 우선순위를 고려하여 새로운 우선순위를 이용하며, 전체 프로세스들이 마감 시간내에 스케줄링 가능하고 문맥교환에 의한 오버헤드에 의해 마감시간을 넘어가지 않을 경우 각 프로세스들에게 타임 슬라이스를 할당하여 수행할 수 있도록 하여 기존 알고리즘들 보다 응답성을 향상시키는 기법을 제시한다.

  • PDF

다중처리기에서 주기적인 실시간 태스크 스케줄링 (Scheduling Periodic Real-Time Tasks on Multiprocessors)

  • 조성제
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2002년도 가을 학술발표논문집 Vol.29 No.2 (1)
    • /
    • pp.370-372
    • /
    • 2002
  • 다중처리기 상에서 실시간 태스크 스케줄링에 대한 연구가 현재 많이 수행되고 있지만, 주로 Pfair(P-fairness)와 EDF(Earliest Deadline First) 알고리즘에 대한 연구이다. Pfair는 이론적인 연구에 초점을 두고 있으며, EDF는 처리기들을 효율적으로 이용하지 못하는 문제점을 가지고 있다. 본 논문에서는 다중처리기 상의 주기적인 실시간 태스크 집합을 대상으로, LLA(Least Laxity Algorithm) 알고리즘이 높은 스케줄링 가능성(schedulability)을 가짐을 먼저 보인다. 다음으로 기존 알고리즘들의 문제점을 보완하기 위해 EDF와 LLA를 결합한 ED/LL(Earliest Deadline/Least Laxity)이라는 알고리즘을 제시한다. ED/LL은 LLA보다 문맥교환 횟수는 적고 EDF보다 스케줄링 가능성이 높으며, 구현 오버헤드도 크지 않다.

  • PDF

내장형 시스템을 위한 실시간 자바 쓰레드의 구현 및 성능 평가 (Implementation and Performance Evaluation of Real-Time Java Thread for Embedded Systems)

  • 강희구;성민영;김태현;이동렬;김소영;김광영;김형수;장래혁;신현식
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 봄 학술발표논문집 Vol.27 No.1 (A)
    • /
    • pp.95-97
    • /
    • 2000
  • 자바는 플랫폼 독립성, 보안, 멀티 쓰레드 지원, 가베지 콜렉터 등 많은 장점을 갖고 있는 언어이다. 하지만 현재의 자바 가상 기계(JVM)는 시간 제약 조건을 갖는 주기적인 태스크 수행, 실시간 스케쥴링 등 실시간 응용을 위한 지원이 미흡한 실정이다. 본 논문에서는 실시간 운영체제인 VxWorks와 내장형 JVM인 퍼스널 자바 상에서 실시간 응용 프로그램의 지원을 위한 자바 쓰레드를 설계, 구현한다. 이를 위해 기존의 자바 쓰레드에 시작시간, 주기, 종료시한 등의 시간 속성을 삽입하고, 실시간 자바 쓰레드 API 클래스를 구현한다. 실시간 스케쥴러를 세가지 방식으로 구현한다. 첫째는, JVM을 수정하지 않고 시간 속성에 따라 쓰레드에 우선 순위를 할당하여 스케쥴링하는 방식이고, 둘째는 JVM을 수정하여 시간 속성에 따라 VxWorks 커널 스케쥴러를 통해 스케쥴링하는 방식이며, 셋째는 독립적인 스케쥴링 태스크를 구현하는 방식이다. 쓰레드 생성, 문맥 교환 등의 오버헤드와 스케쥴링 시 종료시한 초과 비율 등의 기준을 통해 각각의 성능을 비교한 결과, VxWorks 커널 스케쥴러를 이용한 방식이 가장 적합하다는 결론을 얻을 수 있었다.

  • PDF

가변 실행시간의 실시간 태스크들에 대하여 공유대역폭을 활용한 응답시간의 개선 (Enhancement of Response Time of Real-Time Tasks with Variable Execution Times by Using Shared Bandwidth)

  • 김용석
    • 전자공학회논문지CI
    • /
    • 제46권3호
    • /
    • pp.77-85
    • /
    • 2009
  • 태스크의 실행시간은 다양한 입력 데이터에 따라 가변적일 수 있다. 최악의 실행시간을 만족하도록 높은 성능의 프로세서를 사용하면 하드웨어 비용이 증가하고 에너지 소비가 늘어나게 된다. 따라서 적절히 낮은 성능의 프로세서를 적용하기 위해서는, 스케줄링에서는 프로세서의 용량을 최대한 활용하되 가끔씩 일부 태스크가 마감시한을 초과하더라도 다른 태스크에는 영향을 미치지 않도록 제한하는 것이 필요하다. 본 논문에서 제시하는 SBP (Shared Bandwidth Partitioning)는 프로세서의 공유 대역폭을 확보하여 태스크들이 나누어 사용할 수 있도록 하였다. 실행시간이 길어지는 태스크는 이 공유대역폭의 일부를 분할하여 사용하도록 한다. 시뮬레이션으로 평가한 결과, SBP는 기존의 알고리즘들에 비해서 개선된 결과를 얻을 수 있었다. 스케줄링 결과의 질에 해당하는 마감시한 초과 비율이 낮아지고 시스템의 오버헤드에 해당하는 문맥교환 횟수도 감소하는 것을 확인하였다.