关于CFS/BFS调度算法

(2010-10-27 17:36:56)

标签:

杂谈

http://www.cs.unm.edu/~eschulte/data/bfs-v-cfs_groves-knockel-schulte.pdf

BFS vs. CFS Scheduler Comparison

Taylor Groves, Jeff Knockel, Eric Schulte

11 December 2009

Abstract

In 2007 a dispute erupted on the Linux kernel mailing list. The

dispute was between Con

Kolivas, creater of the Staricase Deadline (SD) scheduler and Ingo

Molnar, whose newly released

Completely Fair Scheduler (CFS) was to be added to the mainline.

CFS employed concepts

previously envisioned by Kolivas and the dispute ended with Kolivas

leaving the mainline kernel

development community. Two years later Kolivas released the Brain

Fuck Scheduler (BFS) with

a focus on a simplistic design, tailored towards interactive

workloads on commodity personal

computers with a reasonable number of cores. We review the

mechanisms of the CFS and BFS

schedulers and test both on a variety of single-user hardware over

a variety of workloads with a

strong focus on the range of "normal" PC use. Our results indicate

that scheduler performance

varies dramatically according to hardware and workload, and as a

result we strongly encourage

Linux distributions to take an increased level of responsibility

for selecting appropriate default

schedulers that best suit the intended usage of the system.

Introduction

Given the wide range of hardware running the Linux kernel it is

dicult to provide a single CPU

scheduler that performs well in all platforms and use cases. Many

metrics of scheduler performance

such as latency and turnaround time can be at odds - improving one

metric will often reduce

performance on another. We investigate the performance of two CPU

schedulers the Completely

Fair Scheduler (CFS) and the Brain Fuck Scheduler (BFS) available

for the modern Linux

kernel. Our tests are primarily aimed at the personal computers

environment. We nd that often

the best scheduler depends on the system and expected use cases and

as a result we conclude that

it is appropriate to select a CPU scheduler with these factors in

mind.

分享:

喜欢

0

赠金笔

加载中,请稍候......

评论加载中,请稍候...

发评论

登录名: 密码: 找回密码 注册记住登录状态

昵   称:

评论并转载此博文

发评论

以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

cfs调度算法JAVA实现_关于CFS/BFS调度算法相关推荐

  1. 多级队列调度算法可视化界面_模拟多级反馈队列调度算法原理(源程序c++)

    #include "stdio.h" #include #include #define getpch(type) (type*)malloc(sizeof(type)) #def ...

  2. 【Linux 内核】CFS 调度器 ① ( CFS 完全公平调度器概念 | CFS 调度器虚拟时钟 Virtual Runtime 概念 | 四种进程优先级 | 五种调度类 )

    文章目录 一.CFS 调度器概念 ( 完全公平调度器 ) 二.CFS 调度器虚拟时钟概念 ( Virtual Runtime ) 三.进程优先级 ( 调度优先级 | 静态优先级 | 正常优先级 | 实 ...

  3. 来电通java版_终于有人把Java程序员必学知识点整理出来了,令人有如醍醐灌顶...

    JVM 无论什么级别的Java从业者,JVM都是进阶时必须迈过的坎.不管是工作还是面试中,JVM都是必考题.如果不懂JVM的话,薪酬会非常吃亏(近70%的面试者挂在JVM上了) 详细介绍了JVM有关于 ...

  4. JAVA入门_多线程_邮局派发信件

    JAVA入门_多线程_邮局派发信件 Postman package cn.campsg.java.experiment.entity;public class Postman {private Str ...

  5. 第一段Java程序_借助Win控制命令台编译执行 编辑器Notepad++

    第一段Java程序_借助Win控制命令台编译执行 编辑器Notepad++ 准备代码: 第一次编译: 显然需要先配置环境变量: 先找到java.exe和javac.exe所在的文件夹位置: 此电脑-& ...

  6. java 多线程写缓存,Java多线程_缓存对齐

    1.什么是缓存对齐 当前的电脑中,数据存储在磁盘上,可以断电保存,但是读取效率较低.不断电的情况下,数据可以在内存中存储,相对硬盘效率差不多是磁盘的一万倍左右.但是运算时,速度最快的是直接缓存在CPU ...

  7. 复习Java异常处理_异常分类_自定义异常_线程初步了解

    复习Java异常处理_异常分类_自定义异常_线程 主要内容 异常.线程 教学目标 第一章 异常 1.1 异常概念 异常,就是不正常的意思.在生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点 ...

  8. java项目_第171期ssm房屋租赁系统_计算机毕业设计

    java项目_第171期ssm房屋租赁系统_计算机毕业设计 [源码请到下载专栏下载] 今天分享的项目是<ssm房屋租赁系统> 该项目分为2个角色,管理员和用户. 用户可以浏览前台,查看房屋 ...

  9. java项目-第155期ssm班级同学录网站-java毕业设计_计算机毕业设计

    java项目-第155期ssm班级同学录网站-java毕业设计_计算机毕业设计 [源码请到资源专栏下载] 今天分享的项目是<ssm班级同学录网站> 该项目分为2个角色,管理员.用户. 用户 ...

最新文章

  1. 《LeetCode力扣练习》第94题 二叉树的中序遍历 Java
  2. 可扩展性的builder模式的构建方法
  3. Python字典推导式将cookie字符串转化为字典
  4. js-移动端android浏览器中input框被软键盘遮住的问题解决方案
  5. 工作130:computed
  6. Pandas知识点-equals()与==的区别
  7. 【英语学习】【WOTD】litmus test 释义/词源/示例
  8. 如何使用 Mac 中的“信息”?
  9. 中国计算机类研究生学校排名,2018考研:计算机专业全球院校排名公布,上海交通大学竟排第一?...
  10. Window.localStorage
  11. 数据可视化平台Superset 简介
  12. MySQL数据库简单使用
  13. Visio 常用的快捷键
  14. Android 蓝牙/wifi云打印机 ESC/POS热敏打印机打印(ESC/POS指令篇)
  15. EasyExcel导入、导出合并单元格excel文件
  16. 《python从入门到项目实践》第六章 列表和元组 //有一个课后答案
  17. MySQL入门学习的第一节(SQL语句)
  18. 修改用户属性信息 usermod
  19. 如何精确设计压铸模具的溢流槽和排气槽?| 智铸超云干货分享
  20. 小白勿进!35岁的程序员被裁,这原因我服了

热门文章

  1. 《Fabric 云存储的电子健康病历系统》(2)病历结构体 Records
  2. HMAC(1)消息认证码MAC算法
  3. [密码学] 消息认证码基础
  4. 【笔记】公钥密码学之RSA
  5. python——动态的增加实例方法、类方法、静态方法
  6. Linux安装python-3.8
  7. Dockerfile的介绍
  8. 【攻防世界006】secret-galaxy-300
  9. C++类中封装线程函数
  10. 【Python】快速设置 pip 源