Linux调优–I/O 调度器

Linux 的 I/O 调度器是一个以块式 I/O 访问存储卷的进程,有时也叫磁盘调度器。Linux I/O 调度器的工作机制是控制块设备的请求队列:确定队列中哪些 I/O 的优先级更高以及何时下发 I/O 到块设备,以此来减少磁盘寻道时间,从而提高系统的吞吐量。

i/o调度器是什么?

Linux 的 I/O 调度器是一个以块式 I/O 访问存储卷的进程,有时也叫磁盘调度器。Linux I/O 调度器的工作机制是控制块设备的请求队列:确定队列中哪些 I/O 的优先级更高以及何时下发 I/O 到块设备,以此来减少磁盘寻道时间,从而提高系统的吞吐量。

目前 Linux 上有如下几种 I/O 调度算法:

noop - 通常用于内存存储的设备。
cfq - 完全公平调度器。进程平均使用IO带宽。
Deadline - 针对延迟的调度器,每一个 I/O,都有一个最晚执行时间。
Anticipatory - 启发式调度,类似 Deadline 算法,但是引入预测机制提高性能。

如何操作i/o调度器

查看设备当前的 I/O 调度器:

# cat /sys/block//queue/scheduler

假设磁盘名称是 /dev/sdc:

# cat /sys/block/sdc/queue/scheduler
noop anticipatory deadline [cfq]

如何改变硬盘设备 I/O 调度器

使用如下指令:

# echo {SCHEDULER-NAME} > /sys/block//queue/scheduler

比如设置 noop 调度器:

# echo noop > /sys/block/sdc/queue/scheduler

永久更改i/o调度器

以上设置重启后会失效,要想重启后配置仍生效,需要在内核启动参数中将 elevator=noop 写入 /boot/grub/menu.lst:

1. 备份 menu.lst 文件

cp -p /boot/grub/menu.lst /boot/grub/menu.lst-backup

2. 更新 /boot/grub/menu.lst

将 elevator=noop 添加到文件末尾,比如:

kernel /vmlinuz-2.6.16.60-0.91.1-smp root=/dev/sysvg/root splash=silent splash=off showopts elevator=noop>

via: How to Change Linux I/O Scheduler - UX Techno

作者:UX Techno 译者:honpey 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/14451.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【PCIE】hot-reset和link disable

Hot reset 规则 如果上游伪端口(Pseudo Port)的任何一个通道连续接收到两个带有热复位位设置为1b、禁用链路位和回环位设置为0b的TS1有序集合,并且两个伪端口上的任何一个通道(接收到TS1有序集合)要么收到EIOS&#xf…

通俗易懂生成对抗网络GAN原理(二)

生成对抗网络(Generative Adversarial Network, GAN)的原理 学习李宏毅机器学习课程总结。 前面学习了GAN的直观的介绍,现在学习GAN的基本理论。现在我们来学习GAN背后的理论。 引言 假设x是一张图片(一个高维向量)…

DevOps系列文章 之 SnakeYAML解析与序列化YAML

1、简述 如何使用SnakeYAML库将YAML文档转换为Java对象,以及JAVA对象如何序列化为YAML文档。 在DevOps平台系统中是基础的能力支持,不管是spring boot 的配置还是K8S 资源清单yaml 2、项目设置 要在项目中使用SnakeYAML,需要添加Maven依赖…

百度网盘删除“我的应用数据”文件夹

方法一:电脑端 工具链接, BaiduPCS-Go-3.6.8-windows-86.zip - 蓝奏云 电脑端下载解压运行,弹出浏览器窗口和命令行,在浏览器中输入百度网盘账号密码,登录。 之后会需要输入验证码,之后使用手机号或者邮…

恒生电子探路金融大模型

‍数据智能产业创新服务媒体 ——聚焦数智 改变商业 近日,恒生电子和旗下子公司恒生聚源正式发布基于大语言模型技术打造的数智金融新品:金融智能助手光子和全新升级的智能投研平台WarrenQ。此外,恒生电子金融行业大模型LightGPT也首次对外亮…

Ctfshow web入门 nodejs篇 web334-web344

CTFshow NodeJs web334 前言:做原型链污染,入门的话个人建议先看看P神的文章,只看前四部分就行了。 深入理解 JavaScript Prototype 污染攻击 | 离别歌 (leavesongs.com) 然后也得有一点js基础,不用太多,要不然看起…

web安全php基础_搭建php环境

首先打开phpstudy的网站栏点击创建网站,新建一个网站(域名随便输反正是局域网)然后点击确认 如下,网站便创建好了 打开浏览器输入刚刚创建网站时输入的域名,即可看见我们的网站 然后网站好了,就可以新建项…

Vue和React的区别?

目录 共同点 1. 数据驱动视图 2. 组件化 3. Virtual DOM 不同点 1. 核心思想不同 2. 组件写法差异 3. diff算法不同 4. 响应式原理不同 5. 其他不同点 首先找到 Vue 和 React 的共性,它们被用于解决什么问题, 然后再挖掘各自独特的个性、设计原…

基于WebSocket的简易聊天室的基本实现梳理

一,前言 目前在很多网站为了实现推送技术所用的技术都是 Ajax 轮询。轮询是在特定的的时间间隔(如每1秒),由浏览器对服务器发出HTTP请求,然后由服务器返回最新的数据给客户端的浏览器。HTTP 协议是一种无状态的、无连…

【Rust】所有权

文章目录 所有权stack与heap所有权存在的原因所有权规则变量作用域String类型内存和分配变量与数据交互的方式1.Move2.Clone3.Copy 所有权与函数返回值与作用域引用借用可变引用悬空引用Dangling References引用的规则切片字符串切片将字符串切片作为参数传递其他类型的切片 所…

CentOS Linux的替代品(六)_BigCloud Enterprise Linux R8 U2 基础安装教程

文章目录 CentOS Linux的替代品(六)_BigCloud Enterprise Linux R8 U2 基础安装教程一、BC-Linux简介二、BigCloud Enterprise Linux R8 U2 基础安装2.1 下载地址2.2 安装过程 三、简单使用3.1 关闭selinux3.1.1 临时关闭selinux3.1.2 永久关闭selinux 3…

SpringBoot中间件——封装限流器

背景 通常能知道一个系统服务在正产增速下流量大小,扩容与压测也是基于此。若有突发或者恶意攻击访问,都要将流量拦截在外。这部分功能不属于业务侧,它是通用非业务的共性需求,所以我们将共性抽取为限流中间件。 方案设计 图解&…