• Title/Summary/Keyword: 쓰레드 스케줄링

Search Result 24, Processing Time 0.035 seconds

Multi-thread Scheduling for the Network Processor (네트워크 프로세서를 위한 다중 쓰레드 스케줄링)

  • Yim, Kang-Bin;Park, Jun-Ku;Jung, Gi-Hyun;Choi, Kyung-Hee
    • The KIPS Transactions:PartC
    • /
    • v.11C no.3
    • /
    • pp.337-344
    • /
    • 2004
  • In this paper, we propose a thread scheduling algorithm for faster packet processing on the network processors with multithreaded multiprocessor architecture. To implement the proposed algorithm. we derived several basic parameters related to the thread scheduling and included a new parameter representing the packet contents and the multithreaded architecture. Through the empirical study using a simulator, we proved the proposed scheduling algorithm provides better throughput and load balancing compared to the general thread scheduling algorithm.

Ring Operator Threaded-Scheduling for Improving Continuous Query Processing over Data Streams (데이터 스트림 환경에서 질의 처리 성능 향상을 위한 링 연산자 쓰레드 스케줄링 기법)

  • Young-Ki Kim;Soong-Sun Shin;Weon-Il Chung;Sung-Ha Baek;Dong-Wook Lee;Hae-Young Bae
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2008.11a
    • /
    • pp.296-299
    • /
    • 2008
  • 최근 데이터 스트림을 관리하기 위해 DSMS(Data Stream Management System)가 계속적으로 연구 되고 있다. 하지만 데이터 스트림은 방대한 양의 데이터를 처리하기 위하여 실시간성을 갖는 빠른 데이터 처리가 요구되며, 이러한 특성 때문에 데이터 처리의 효율성 증대를 위하여 메모리 관리가 중요하다. 기존 메모리 관리에 대한 연구는 쓰레드 스케줄링을 통한 관리 기법이 연구되었다. 하지만 기존의 연산자 쓰레드 스케줄링과 그래프 쓰레드 스케줄링은 쓰레드 관리의 유연성이 떨어지기 때문에 불규칙적인 데이터 스트림 환경에서는 부적합하다. 또한 하이브리드 멀티 쓰레드 스케줄링 기법은 두 가지 기법의 장점을 결합하였으나 가상 연산자의 일회성 사용으로 쓰레드 관리의 어려움 이 있다. 따라서 본 논문은 공유와 재사용이 가능한 링 연산자를 이용한 링 연산자 쓰레드 스케줄 링 기법을 제안한다. 본 기법은 링 연산자를 통해 새로 입력된 질의의 동일한 연산자 구성은 생성 되어 있는 링 연산자를 공유하거나 재사용하여 불필요한 자원 소모와 자원 할당의 과부하를 줄임으로써 기존 기법에 비해 쓰레드 할당의 수를 감소 시켜 대량의 질의 처리 시 속도를 증가 시켰다.

DVFS based Memory-Contention Aware Scheduling Method for Multi-threaded Workloads (멀티쓰레드 워크로드를 위한 DVFS 기반 메모리 경합 인지 스케줄링 기법)

  • Nam, Yoonsung;Kang, Minkyu;Yeom, HeonYoung;Eom, Hyeonsang
    • KIISE Transactions on Computing Practices
    • /
    • v.24 no.1
    • /
    • pp.10-16
    • /
    • 2018
  • The task of consolidating server workloads is critical for the efficiency of a datacenter in terms of reducing costs. However, as a greater number of workloads are consolidated in a single server, the performance of workloads might be degraded due to their contention to the limited shared resources. To reduce the performance degradation, scheduling for mitigating the contention of shared resources is necessary. In this paper, we present the Dynamic Voltage Frequency Scaling (DVFS) based memory-contention aware scheduling method for multi-threaded workloads. The proposed method uses two approaches: running memory-intensive threads on the limited cores to avoid concurrent memory accesses, and reducing the frequencies of the cores that run memory-intensive threads. With the proposed algorithm, we increased performance by 43% and reduced power consumption by 38% compared to the Completely Fair Scheduler(CFS), the default scheduler of Linux.

User-Level Threads for the ARX Real-Time Operating System (ARX 실시간 운영체계를 위한 사용자 레벨 쓰레드)

  • Seo, Yang-Min;Park, Jung-Keun;Hong, Seong-Soo
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 1998.10a
    • /
    • pp.65-67
    • /
    • 1998
  • 내장 실시간 시스템이 높은 우선순위의 비동기적 이벤트를 적시에 처리하면서 필수적으로 적은 비용의 선점 다중쓰레드를 지원해야한다. 사용자 레벨 쓰레드는 커널 레벨 쓰레드 보다 적은 비용의 유연한 추상적 기법들을 제공하지만, 기존의 실시간 시스템에서는 스케줄링과 시그날(signal) 처리가 단순하다는 이류로 커널 레벨 쓰레드가 선호 되어왔다. 본 논문에서는 내장 실시간 시스템에 적합한 새로운 사용자 레벨 다중 쓰레드 방식을 제안한다. 이 기법은 가상 쓰레드(virtual threads)와 개선된 스케줄링 이벤트 업콜(scheduling event upcall) 메카니즘을 기반으로 한다. 가상 쓰레드는 사용자 레벨 쓰레드에게 커널 레벨의 실행 환경을 제공할 수 있도록 사용자 레벨 쓰레드를 커널 레벨로 형상화한 것이다. 이 쓰레드는 필요에 의해 잠시동안 사용자 레벨 쓰레드에 묶이는 소동적인 존재이다. 스케줄링 이벤트 업콜 메카니즘은 쓰레드 블록킹과 타이머 만기와 같은 커널 이벤트를 유저 프로세서에게 전달할 수 있게 한다. 본 논문의 개선된 업콜 방식은 scheduler activation과 시그날과 같은 전통적인 업콜 구조에서 예측하기 힘든 요소들을 배제했다. 순간적인 시스템의 과부하 상황에서도 이벤트를 놓치지 않으면서 커널과 유저 프로세서의 비싼 동기화 작업들을 피할 수 있도록 하는 잠금(lock)이 필요 없는 이벤트 큐를 상용한다. 본 기법은 서울대학교 실시간 운영체계 실험실에서 구현한 ARX위에 완벽하게 구현되었다. ARX 사용자 레벨 쓰레드가 사용자 레벨 쓰레드의 장점을 손상하지 않으면서 솔라리스와 윈도즈98과 같은 상용 운영체제의 커널 쓰레드보다 성능이 우수함을 실험적 비교에 의해서 입증한다.분에서 uronic acid를 분리동정하였을 때 점미는 0.90%, 백미는 0.66%, 흑미는 1.8%로서 흑미에서 uronic acid 함량이 두 배 이상으로 나타났다. 흑미의 uronic acid 함량이 가장 많이 용출된 분획은 sodium hydroxide 부분으로서 hemicellulose구조가 polyuronic acid의 형태인 것으로 사료된다. 추출획분의 구성단당은 여러 곡물연구의 보고와 유사하게 glucose, arabinose, xylose 함량이 대체로 높게 나타났다. 점미가 수가용성분에서 goucose대비 용출함량이 고르게 나타나는 경향을 보였고 흑미는 알칼리가용분에서 glucose가 상당량(0.68%) 포함되고 있음을 보여주었고 arabinose(0.68%), xylose(0.05%)도 다른 종류에 비해서 다량 함유한 것으로 나타났다. 흑미는 총식이섬유 함량이 높고 pectic substances, hemicellulose, uronic acid 함량이 높아서 콜레스테롤 저하 등의 효과가 기대되며 고섬유식품으로서 조리 특성 연구가 필요한 것으로 사료된다.리하였다. 얻어진 소견(所見)은 다음과 같았다. 1. 모년령(母年齡), 임신회수(姙娠回數), 임신기간(姙娠其間), 출산시체중등(出産時體重等)의 제요인(諸要因)은 주산기사망(周産基死亡)에 대(對)하여 통계적(統計的)으로 유의(有意)한 영향을 미치고 있어 $25{\sim}29$세(歲)의 연령군에서, 2번째 임신과 2번째의 출산에서 그리고 만삭의 임신 기간에, 출산시체중(出産時體重) $3.50{\sim}3.99kg$사이의 아이에서 그 주산기사망률(周産基死亡率)이 각각 가장 낮았다. 2. 사산(死産)과 초생

  • PDF

A Java M: N Thread Mapping Model for Guaranteeing Soft Real-Time (연성 실시간을 보장하는 자바 M: N 쓰레드 맵핑 모델)

  • 양영록;손봉기;김명준
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2003.10a
    • /
    • pp.301-303
    • /
    • 2003
  • 사용자 쓰레드와 시스템 쓰레드간의 1:1 맵핑 모델은 병렬성을 지원하는 장점이 있고, M: N 맵핑은 병렬성 지원과 빠른 문맥교환의 장점이 있다. 리눅스 자바 가상 머신에서는 1:1 맵핑 모델만을 지원한다. 연성 실시간을 보장하기 위해서는 쓰레드간의 문맥교환을 최소화하여 성능 향상시킬 필요가 있다. 이 논문에서는 자바 어플리케이션 레벨에서 경량 프로세스(Light Weight Process, LWP) 개념을 도입하여 리눅스 자바 가상 머신에서 M: N 맵핑을 지원하는 자바 쓰레드 모델을 제안한다. 제안한 모델은 그린 쓰레드 (Green Thread)의 빠른 문맥교환과 네이티브 쓰레드(Native Thread)의 병렬성 지원 장점을 혼합한 것으로 빠른 처리속도와 자바 플랫폼의 독립성을 그대로 유지할 수 있다. 또한, MTR-LS 알고리즘을 경량 프로세스 스케줄링에 채택함으로서, 자바 응용프로그램의 연성 실시간을 보장한다. 1:l 및 M:1 맵핑 모델과의 성능 비교를 통해 제안한 모델이 좋은 성능과 연성 실시간을 보장한다는 것을 보인다.

  • PDF

Real-time Linux based Rotor UAV Control Software Development (실시간 리눅스 기반의 회전익 무인항공기 제어 소프트웨어 개발)

  • Park, Kiseok;Park, Joong Hee;Wie, Young Jun;Park, Jungkeun;Moon, Chang Joo
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2010.11a
    • /
    • pp.1613-1616
    • /
    • 2010
  • 본 논문은 실시간 운영체제인 Xenomai 를 사용하여, 회전익 무인항공기 소프트웨어 개발에 대한 내용을 설명하고 있다. 실시간 운영체제 사용하여 고정 순위 우선 스케줄링을 채택함으로써 데드라인의 타이밍(Timming) 결정성을 보장하였고, 이기종 시스템과의 호환성과 확장성을 고려하여 POSIX API 를 사용하여 멀티 쓰레드를 구현하였다. 또한 실시간 드라이버 모델(RTDM : Real-Time Driver Model)을 사용하여 획득한 데이터를 실시간 전송이 가능하도록 하였다. 본 논문은 실시간 운영체제를 무인항공기에 적용하고 구현된 비행제어 컴퓨터와 제어 소프트웨어를 비율 단조 스케줄링을 적용하여 무인항공기의 쓰레드들의 응답 속도 및 안정성을 보장하는 방안을 제시하였다.

Effective Scheduling Algorithm for SMT Server (SMT 서버를 위한 효율적인 스케줄링 알고리즘)

  • 이정훈;김진석
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2003.10a
    • /
    • pp.376-378
    • /
    • 2003
  • 최근 많은 프로세서 제작업체들이 프로세서의 효율을 높이기 위한 방법으로 독립적인 쓰레드들을 한 프로세서 사이클에 동시에 실행시킬 수 있는 SMT 기술을 구현하고 있으며 그 예의 하나가 하이퍼쓰레딩이다. 물리 프로세서 안에 여러 개의 논리 프로세서를 가질 수 있는 하이퍼쓰레딩 기술은 기존의 여러개의 독립적인 프로세서들을 갖춘 멀티 프로세싱 환경과는 차이가 있으며, 하이퍼쓰레딩 환경에 알맞은 특정한 작업 할당방법이 필요하다. 따라서, 본 논문에서는 하이퍼쓰레딩 기술에 적합한 스케줄링 알고리즘을 제안하고 그 성능을 다양한 방법으로 측정해 봄으로서 하이퍼쓰레딩 시스템을 올바르게 인식하고 적절하게 관리하여 효율적인 성능을 기대할 수 있게 되었다.

  • PDF

Real-Time Data Stream Management System Using State Thread (State Thread 기반 실시간 데이터 스트림 관리 시스템)

  • Park, Won-Vien;Song, Chang-Geun;Ko, Young-Woong
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2010.11a
    • /
    • pp.177-180
    • /
    • 2010
  • RFID를 기반으로 유비쿼터스 환경의 응용 서비스를 지원하는 미들웨어는 지속적으로 끊임없이 입력되는 데이터 스트림을 실시간으로 처리하고 응용 서비스에서 요구하는 결과를 획득하여 전달해야 한다. 이와 같은 요구사항을 만족하기 위해 데이터 스트림 관리 시스템(DSMS)이 제안되었으며 다양한 연구가 시도되고 있다. 본 논문에서는 대량의 이벤트가 입력되는 환경에서 우선순위가 높은 질의를 실시간으로 처리하기 위한 DSMS를 제안하고 있다. 본 연구는 스탠포드의 STREAM 프로젝트를 활용하여 설계 및 구현하였으며, 각 쿼리를 State Thread로 동작시키는 방법을 이용하였다. 쓰레드 라이브러리의 스케줄러 부분을 실시간 스케줄러로 개선하는 작업을 진행하였으며, 실험을 통하여 쓰레드 스케줄러가 질의에 대해서 실시간으로 스케줄링을 할 수 있음을 보이고 있다.

Non-Preemptive Fixed Priority Scheduling for Design of Real-Time Embedded Systems (실시간 내장형 시스템의 설계를 위할 비선점형 고정우선순위 스케줄링)

  • Park, Moon-Ju
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.15 no.2
    • /
    • pp.89-97
    • /
    • 2009
  • Embedded systems widely used in ubiquitous environments usually employ an event-driven programming model instead of thread-based programming model in order to create a more robust system that uses less memory. However, as the software for embedded systems becomes more complex, it becomes hard to program as a single event handler using the event-driven programming model. This paper discusses the implementation of non-preemptive real-time scheduling theory for the design of embedded systems. To this end, we present an efficient schedulability test method for a given non-preemptive task set using a sufficient condition. This paper also shows that the notion of sub-tasks in embedded systems can overcome the problem of low utilization that is a main drawback of non-preemptive scheduling.

User-level scheduling for Handling Dynamic Workloads in Xen Hypervisor (Xen 하이퍼바이저 기반의 동적 워크로드 핸들링을 위한 사용자 수준의 스케쥴링)

  • Lee, Hyun-Ju;Ko, Young-Woong
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2011.06b
    • /
    • pp.381-384
    • /
    • 2011
  • 오늘날의 높은 효율성을 가진 현대적인 가상화 솔루션의 가용성으로 인해, 서버와 클라우딩 컴퓨팅 분야와 같은 다양한 분야에서 주목받고 있다. Xen은 다양한 가상화 시스템 중 폭 넓게 사용되는 기술이기는 하나 스케줄링에 있어 약간의 약점이 노출되고 있다. 이는 Xen 하이퍼바이져 스케줄러가 유저 레벨의 쓰레드와 물리적 CPU 사이의 스케줄러들 가운데 가장 아래에 존재하기 때문에, 유저 레벌의 워크로드에 대한 정보를 얻는데 제약사항이 있기 때문이다. 이러한 특성은 시스템의 전체적인 처리량을 떨어뜨리고 리소스의 활용률을 저하시킬 수 있다. 본 연구는 게스트 운영체제에서 동작하는 동적인 워크로드에 대한 정보를 활용하는 유저 레벨의 스케줄링을 제안하고자 한다. 이를 위해 새로운 하이퍼콜과 모니터링 데몬을 가지는 유저레벨 스케줄링을 구현한다. 유저레벨 스케줄링이 동작하는 Xen 하이퍼바이져 기반에 Linux를 게스트 운영체제로 환경을 구축하여 다양한 유저레벨 워크로드를 동작시켜 시스템의 처리량 증가와 CPU 리소스의 활용률을 높일 수 있음을 보인다.