• Title/Summary/Keyword: cgroup

Search Result 6, Processing Time 0.02 seconds

A Performance Analysis of HPC Task According to Cgroup Policies of Singularity Container in Heterogeneous Cores Environment (Heterogeneous 코어 환경에서 Singularity 컨테이너의 Cgroup 정책에 따른 HPC 작업의 성능 분석)

  • Myeong-Jun Kim;Chung-Geon Song;Kwang-Sik Chung;Heon-Chang Yu
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2023.11a
    • /
    • pp.81-84
    • /
    • 2023
  • 최근의 인텔의 새로운 CPU 아키텍처의 도입으로 Singularity 컨테이너 내에서 cgroup 설정으로 인해 특정 작업의 성능에 영향을 초래할 수 있다. 특히 Singularity 컨테이너에서 HPC(고성능 컴퓨팅) 작업은 cgroup 정책에 의해 작업 효율이 달라질 수 있고 아직 새로운 CPU 환경에서의 HPC 작업에 대한 연구가 충분치 않다. 따라서, 본 논문은 Singularity 컨테이너 생성 시 새로운 CPU 아키텍처에 설계된 CPU 코어 유형별 cgroup 지정이 HPC 응용을 포함하여 다양한 유형의 작업 성능에 미치는 영향을 비교 분석하였고, 이를 통해 HPC 사용자에게 가이드라인을 제공하는 것이 목적이다.

Improvement of Linux Schedulability Analysis for Simultaneous Support of Real-Time Task Groups and Deadline Task (실시간 태스크 그룹과 데드라인 태스크의 동시 지원을 위한 리눅스 스케줄링 가능성 분석 개선)

  • Yim, Yin-Goo;Jin, Hyun-Wook;Lee, Sang-Hun
    • KIISE Transactions on Computing Practices
    • /
    • v.23 no.7
    • /
    • pp.452-457
    • /
    • 2017
  • Linux is a general-purpose operating system that supports several schedulers, allowing different schedulers to coexist. In addition, Linux uses the Control Group (cgroup) to reserve CPU resources for task groups that follow the real-time (SCHED_FIFO, SCHED_RR) and non-real-time (SCHED_NORMAL) scheduler policies, except for the deadline scheduler (SCHED_DEADLINE). The cgroup performs the schedulability analysis to guarantee the reserved CPU resource as much as possible. However, current implementation of the schedulability analysis does not distinguish between deadline tasks and real-time tasks. Therefore, if these deadline tasks and real-time task groups coexist, there is a case where the resource reservation for the real-time task group is rejected. In this paper, we analyze the problems in the schedulability analysis for real-time task groups of Linux cgroups and propose patches to solve these problems.

Dynamic Bandwidth Distribution Method for High Performance Non-volatile Memory in Cloud Computing Environment (클라우드 환경에서 고성능 저장장치를 위한 동적 대역폭 분배 기법)

  • Kwon, Piljin;Ahn, Sungyong
    • The Journal of the Institute of Internet, Broadcasting and Communication
    • /
    • v.20 no.3
    • /
    • pp.97-103
    • /
    • 2020
  • Linux Cgroups takes a fundamental role for sharing system resources among multiple containers on container-based cloud computing environment. Especially for I/O resource, Linux Cgroups supports a mechanism for sharing I/O bandwidth in proportion to I/O weight. However, the current mechanism of Linux Cgroups using BFQ I/O scheduler seriously degrades the I/O performance with high bandwidth storage device such as NVMe SSDs. In this paper, we proposed a new feedback based I/O bandwidth sharing scheme for Linux Cgroups which allocates I/O credits to containers according to I/O weights and adjusts the amount of credits to performance fluctuation of NVMe SSDs. The proposed scheme is implemented on Linux kernel 5.3 and evaluated. The evaluation results show that it can share the I/O bandwidth among multiple containers proportionally to I/O weights while improving I/O performance more than twice as high as the existing scheme.

CPU Usage Analysis According to the Task Group in Android Mobile (안드로이드 단말의 태스크 그룹에 따른 CPU 점유율 분석)

  • Kim, Myungsun;Lim, Jintaek;Park, Daedong
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2013.01a
    • /
    • pp.9-12
    • /
    • 2013
  • 리눅스 기반 안드로이드 단말에서는 CFS(Completely Fair scheduler)가 사용되고 있다. 그리고 CFS는 태스크의 nice값 조절을 통해서 응용프로그램의 CPU 점유율을 제어할 수 있다. 하지만 안드로이드를 업그레이드할 때마다 수많은 태스크의 nice값을 적절하게 맞추는 일은 매우 어려운 일이다. 이러한 문제를 해결하기 위하여 안드로이드 단말은 리눅스의 cgroup(control group)을 사용하여 태스크들을 그룹으로 나눈다. 고성능과 빠른 응답 특성이 필요한 태스크들을 apps 그룹에 할당하여 높은 CPU 점유율을 보장하고, 그렇지 않은 태스크들을 background 그룹에 할당한다. 하지만 안드로이드의 버전이 업그레이드 되면서 각 그룹에 속한 태스크들에도 변화가 생긴다. 그 결과 동일하게 제작된 태스크들의 CPU 점유율이 달라지게 되고 예기치 못한 성능 저하가 발생할 수 있다. 본 연구에서는 안드로이드 버전 향상에 따라 동종 태스크들이 이전 버전에서보다 성능이 하락하는 현상의 원인을 파악하였다. 아울러 분석과 실험을 통하여 태스크의 nice 값보다 그룹 스케줄링 메커니즘이 어떻게 태스크의 CPU 점유율을 결정 짓는지 규명하였다.

  • PDF

An Extension of Linux Scheduler for High-Priority Aperiodic Task Groups (높은 우선순위의 비주기적 태스크 그룹을 위한 리눅스 스케줄러 확장)

  • Kim, Young-Seung;Jo, Hyun-Chul;Jin, Hyun-Wook;Lee, Sang-Il
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2014.04a
    • /
    • pp.58-60
    • /
    • 2014
  • 임베디드 소프트웨어는 국방, 항공 우주, 자동차와 같이 다양한 응용분야에서 그 중요성이 부각되고 있다. 이와 함께 시스템 자원의 효율성을 높이고 응용 소프트웨어 간 안전한 실행환경을 제공하기 위해서 자원 파티셔닝의 필요성이 강조되고 있다. 최근 임베디드 시스템의 응용 분야가 다양해지면서 주기적인 파티션과 함께 비주기적인 파티션들에 대한 요구가 증가하고 있다. 하지만 기존 시스템들은 비주기적인 파티션은 고려하고 있지 않거나, 주기적인 파티션에 비해서 우선순위가 낮게 취급하고 있다. 이러한 문제를 해결하기 위해서 본 논문은 높은 우선순위의 비주기적인 태스크 그룹을 지원하기 위한 구조를 제안하고, 리눅스의 cgroup 프레임워크를 확장하여 구현한다.

Implementing I/O Bandwidth Sharing Scheme between Multiple Linux Containers based on Dm-zoned for Zoned Namespace SSDs

  • Seokjun Lee;Sungyong Ahn
    • International journal of advanced smart convergence
    • /
    • v.12 no.4
    • /
    • pp.237-245
    • /
    • 2023
  • In the cloud service, system resource such as CPU, memory, I/O bandwidth are shared among multiple users. Particularly, in Linux containers environment, I/O bandwidth is distributed in proportion to the weight of each container through the BFQ I/O scheduler. However, since the I/O scheduler can only be applied to conventional block storage devices, it cannot be applied to Zoned Namespace(ZNS) SSD, a new storage interface that has been recently studied. To overcome this limitation, in this paper, we implemented a weighted proportional I/O bandwidth sharing scheme for ZNS SSDs in dm-zoned, which emulates conventional block storage using ZNS SSDs. Each user receives a different amount of budget, which is required to process the user's I/O requests based on the user's weight. If the budget is exhausted I/O requests cannot be processed and requests are queued until the budget replenished. Each budget refill period, the budget is replenished based on the user's weight. In the experiment, as a result, we can confirm that the I/O bandwidth can be distributed on their weight as we expected.