Enviar búsqueda
Cargar
その ionice、ほんとに効いてますか?
•
28 recomendaciones
•
91,416 vistas
Narimichi Takamura
Seguir
ionice に関するスライド。続編 → http://www.slideshare.net/narimichitakamura/ionice2
Leer menos
Leer más
Tecnología
Vista de diapositivas
Denunciar
Compartir
Vista de diapositivas
Denunciar
Compartir
1 de 24
Descargar ahora
Descargar para leer sin conexión
Recomendados
【続編】その ionice、ほんとに効いてますか?
【続編】その ionice、ほんとに効いてますか?
Narimichi Takamura
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Takuya ASADA
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門
Fixstars Corporation
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
Etsuji Nakai
InnoDBのすゝめ(仮)
InnoDBのすゝめ(仮)
Takanori Sejima
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
iostat await svctm の 見かた、考え方
iostat await svctm の 見かた、考え方
歩 柴田
Recomendados
【続編】その ionice、ほんとに効いてますか?
【続編】その ionice、ほんとに効いてますか?
Narimichi Takamura
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Takuya ASADA
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
いまさら聞けない!CUDA高速化入門
いまさら聞けない!CUDA高速化入門
Fixstars Corporation
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
Etsuji Nakai
InnoDBのすゝめ(仮)
InnoDBのすゝめ(仮)
Takanori Sejima
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
iostat await svctm の 見かた、考え方
iostat await svctm の 見かた、考え方
歩 柴田
Glibc malloc internal
Glibc malloc internal
Motohiro KOSAKI
TIME_WAITに関する話
TIME_WAITに関する話
Takanori Sejima
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
Kuniyasu Suzaki
DockerコンテナでGitを使う
DockerコンテナでGitを使う
Kazuhiro Suga
コンテナネットワーキング(CNI)最前線
コンテナネットワーキング(CNI)最前線
Motonori Shindo
明日使えないすごいビット演算
明日使えないすごいビット演算
京大 マイコンクラブ
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話
Yuta Shimada
NEDIA_SNIA_CXL_講演資料.pdf
NEDIA_SNIA_CXL_講演資料.pdf
Yasunori Goto
プログラムを高速化する話
プログラムを高速化する話
京大 マイコンクラブ
AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解
MITSUNARI Shigeo
ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門
Fixstars Corporation
大規模サービスを支えるネットワークインフラの全貌
大規模サービスを支えるネットワークインフラの全貌
LINE Corporation
不揮発メモリ(NVDIMM)とLinuxの対応動向について
不揮発メモリ(NVDIMM)とLinuxの対応動向について
Yasunori Goto
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチン
yohhoy
Java でつくる低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧
Ryosuke Yamazaki
ML2/OVN アーキテクチャ概観
ML2/OVN アーキテクチャ概観
Yamato Tanaka
CXL_説明_公開用.pdf
CXL_説明_公開用.pdf
Yasunori Goto
分散システムについて語らせてくれ
分散システムについて語らせてくれ
Kumazaki Hiroki
Build an iOS app with ConcourseCI
Build an iOS app with ConcourseCI
健仁 天沼
関数型言語ElixirのIoTシステムへの導入に向けた基礎評価
関数型言語ElixirのIoTシステムへの導入に向けた基礎評価
Hideki Takase
Más contenido relacionado
La actualidad más candente
Glibc malloc internal
Glibc malloc internal
Motohiro KOSAKI
TIME_WAITに関する話
TIME_WAITに関する話
Takanori Sejima
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
Kuniyasu Suzaki
DockerコンテナでGitを使う
DockerコンテナでGitを使う
Kazuhiro Suga
コンテナネットワーキング(CNI)最前線
コンテナネットワーキング(CNI)最前線
Motonori Shindo
明日使えないすごいビット演算
明日使えないすごいビット演算
京大 マイコンクラブ
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話
Yuta Shimada
NEDIA_SNIA_CXL_講演資料.pdf
NEDIA_SNIA_CXL_講演資料.pdf
Yasunori Goto
プログラムを高速化する話
プログラムを高速化する話
京大 マイコンクラブ
AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解
MITSUNARI Shigeo
ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門
Fixstars Corporation
大規模サービスを支えるネットワークインフラの全貌
大規模サービスを支えるネットワークインフラの全貌
LINE Corporation
不揮発メモリ(NVDIMM)とLinuxの対応動向について
不揮発メモリ(NVDIMM)とLinuxの対応動向について
Yasunori Goto
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチン
yohhoy
Java でつくる低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧
Ryosuke Yamazaki
ML2/OVN アーキテクチャ概観
ML2/OVN アーキテクチャ概観
Yamato Tanaka
CXL_説明_公開用.pdf
CXL_説明_公開用.pdf
Yasunori Goto
分散システムについて語らせてくれ
分散システムについて語らせてくれ
Kumazaki Hiroki
La actualidad más candente
(20)
Glibc malloc internal
Glibc malloc internal
TIME_WAITに関する話
TIME_WAITに関する話
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
DockerコンテナでGitを使う
DockerコンテナでGitを使う
コンテナネットワーキング(CNI)最前線
コンテナネットワーキング(CNI)最前線
明日使えないすごいビット演算
明日使えないすごいビット演算
DockerとPodmanの比較
DockerとPodmanの比較
コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話
NEDIA_SNIA_CXL_講演資料.pdf
NEDIA_SNIA_CXL_講演資料.pdf
プログラムを高速化する話
プログラムを高速化する話
AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解
ARM CPUにおけるSIMDを用いた高速計算入門
ARM CPUにおけるSIMDを用いた高速計算入門
大規模サービスを支えるネットワークインフラの全貌
大規模サービスを支えるネットワークインフラの全貌
不揮発メモリ(NVDIMM)とLinuxの対応動向について
不揮発メモリ(NVDIMM)とLinuxの対応動向について
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
20分くらいでわかった気分になれるC++20コルーチン
20分くらいでわかった気分になれるC++20コルーチン
Java でつくる低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧
ML2/OVN アーキテクチャ概観
ML2/OVN アーキテクチャ概観
CXL_説明_公開用.pdf
CXL_説明_公開用.pdf
分散システムについて語らせてくれ
分散システムについて語らせてくれ
Similar a その ionice、ほんとに効いてますか?
Build an iOS app with ConcourseCI
Build an iOS app with ConcourseCI
健仁 天沼
関数型言語ElixirのIoTシステムへの導入に向けた基礎評価
関数型言語ElixirのIoTシステムへの導入に向けた基礎評価
Hideki Takase
データフロー自動化ツールの考え方
データフロー自動化ツールの考え方
fumoto kazuhiro
20apr2012 kernelvm7-main
20apr2012 kernelvm7-main
Shotaro Uchida
Checkpointing Algorithms on In-memory DBMS
Checkpointing Algorithms on In-memory DBMS
Sho Nakazono
What is java_se_7
What is java_se_7
TakumiIINO
密着!わたしのコンソールアプリ開発環境
密着!わたしのコンソールアプリ開発環境
Fumihito Yokoyama
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
shingo suzuki
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
shingo suzuki
落ちないアプリ開発の仕組み
落ちないアプリ開発の仕組み
Kazunari Ebihara
Trac Plugin Developement with Jenkins
Trac Plugin Developement with Jenkins
Takahisa Wada
ログ先行書き込みを用いたストレージ差分取得の一手法
ログ先行書き込みを用いたストレージ差分取得の一手法
Takashi Hoshino
ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~
ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~
Ryuta Otaki
バージョン管理勉強会
バージョン管理勉強会
Hiroaki Murayama
ゼロから始める自作 CPU 入門
ゼロから始める自作 CPU 入門
Hirotaka Kawata
FOLIOのコードを動かしてみた
FOLIOのコードを動かしてみた
Futoshi Tanuma
WalBの紹介
WalBの紹介
Takashi Hoshino
Java EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jp
Norito Agetsuma
kagami_comput2015_14
kagami_comput2015_14
swkagami
Similar a その ionice、ほんとに効いてますか?
(19)
Build an iOS app with ConcourseCI
Build an iOS app with ConcourseCI
関数型言語ElixirのIoTシステムへの導入に向けた基礎評価
関数型言語ElixirのIoTシステムへの導入に向けた基礎評価
データフロー自動化ツールの考え方
データフロー自動化ツールの考え方
20apr2012 kernelvm7-main
20apr2012 kernelvm7-main
Checkpointing Algorithms on In-memory DBMS
Checkpointing Algorithms on In-memory DBMS
What is java_se_7
What is java_se_7
密着!わたしのコンソールアプリ開発環境
密着!わたしのコンソールアプリ開発環境
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
システムパフォーマンス勉強会#4
落ちないアプリ開発の仕組み
落ちないアプリ開発の仕組み
Trac Plugin Developement with Jenkins
Trac Plugin Developement with Jenkins
ログ先行書き込みを用いたストレージ差分取得の一手法
ログ先行書き込みを用いたストレージ差分取得の一手法
ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~
ココが違うよEC2 ~オンプレミスVMとの徹底⽐比較~
バージョン管理勉強会
バージョン管理勉強会
ゼロから始める自作 CPU 入門
ゼロから始める自作 CPU 入門
FOLIOのコードを動かしてみた
FOLIOのコードを動かしてみた
WalBの紹介
WalBの紹介
Java EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jp
kagami_comput2015_14
kagami_comput2015_14
Más de Narimichi Takamura
Nginx バージョンアップ動向(2015/07〜2015/12)
Nginx バージョンアップ動向(2015/07〜2015/12)
Narimichi Takamura
Dovecot & Postfix バージョンアップ動向 201506-201511
Dovecot & Postfix バージョンアップ動向 201506-201511
Narimichi Takamura
Nginx バージョンアップ動向(2015/01〜2015/06)
Nginx バージョンアップ動向(2015/01〜2015/06)
Narimichi Takamura
Dovecot & Postfix バージョンアップ動向 201401-201505
Dovecot & Postfix バージョンアップ動向 201401-201505
Narimichi Takamura
ぼくとおこめとJSON
ぼくとおこめとJSON
Narimichi Takamura
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 5 章
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 5 章
Narimichi Takamura
Nginx バージョンアップ動向(2014/01〜2014/12)
Nginx バージョンアップ動向(2014/01〜2014/12)
Narimichi Takamura
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章
Narimichi Takamura
ぼくとおこめ
ぼくとおこめ
Narimichi Takamura
( (0) / (0)) ☆祝☆ (nari_ex) LT at Cloud Server Festa 2013 Autumn「サバフェス!」
( (0) / (0)) ☆祝☆ (nari_ex) LT at Cloud Server Festa 2013 Autumn「サバフェス!」
Narimichi Takamura
Más de Narimichi Takamura
(10)
Nginx バージョンアップ動向(2015/07〜2015/12)
Nginx バージョンアップ動向(2015/07〜2015/12)
Dovecot & Postfix バージョンアップ動向 201506-201511
Dovecot & Postfix バージョンアップ動向 201506-201511
Nginx バージョンアップ動向(2015/01〜2015/06)
Nginx バージョンアップ動向(2015/01〜2015/06)
Dovecot & Postfix バージョンアップ動向 201401-201505
Dovecot & Postfix バージョンアップ動向 201401-201505
ぼくとおこめとJSON
ぼくとおこめとJSON
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 5 章
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 5 章
Nginx バージョンアップ動向(2014/01〜2014/12)
Nginx バージョンアップ動向(2014/01〜2014/12)
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章
ぼくとおこめ
ぼくとおこめ
( (0) / (0)) ☆祝☆ (nari_ex) LT at Cloud Server Festa 2013 Autumn「サバフェス!」
( (0) / (0)) ☆祝☆ (nari_ex) LT at Cloud Server Festa 2013 Autumn「サバフェス!」
Último
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
Último
(11)
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
その ionice、ほんとに効いてますか?
1.
その IONICE, ほんとに効いてますか?
TAKAMURA Narimichi @nari_ex hbstyle-2014-08-14
2.
WHAT IS IONICE
? • I/O の処理優先度を指定するLinuxコマンド • nice コマンドの I/O バージョン • nice コマンドでは I/O 優先度を制御不可
3.
I/O 優先度クラス •
RT ( Real-time ) • 最高優先度 • BE ( Best-Effort ) • デフォルト優先度 • Idle • 最低優先度
4.
BE: クラス内優先度 •
BE クラスのみ、クラス内優先度がある • 優先度は 0~7 までの 8段階 • 0が最高優先度、7が最低優先度 • 優先度はクラスの枠を超えない • RT > BE (0) • IDLE < BE (7)
5.
BE: クラス内優先度 •
BE クラスのみ、クラス内優先度がある • 優先度は 0~7 までの 8段階 • 0が最高優先度、7が最低優先度 • 優先度はクラスの枠を超えない • RT < BE (0) • IDLE < BE (7)
6.
HOW TO IONICE
• RT クラスを指定: ionice -c1 • BE クラスを指定: ionice -c2 -n <0~7> • IDLE クラスを指定: ionice -c3
7.
余談: NICE コマンド
• クラスはない • 優先度 ( nice値 ) は -20~19 • -20 が最高優先度、19が最低優先度
8.
負荷を最小限に抑えたい!
9.
ionice, nice を駆使して…
10.
# ionice -c3
nice -n19
11.
これで完璧だ!!!
12.
–Johnny Appleseed
13.
ちょっとまって
14.
その IONICE, ほんとに効いてますか?
15.
–Johnny Appleseed
16.
IONICE が効く条件 •
I/O スケジューラ • Readなの?Writeなの?フラグは? • ファイル作成フラグ • キャッシュの有無
17.
I/O Scheduler…
18.
ユーザ空間 VFS “ここに引用を入力してください。”
–Johnny Appleseed カーネル空間 システムコール 物理 デバイス ファイルシステム ディスクキャッシュ 汎用ブロック層 物理 デバイス プロセス I/O スケジューラ層 デバイス ドライバ デバイス ドライバ
19.
条件その1: I/O SCHEDULER(1)
• CFQ スケジューラ以外は無理 • Linux 標準のスケジューラは CFQ • Amazon Linux は Noop なので注意 • Unbreakable Linux は Deadline なので注意
20.
条件その1: I/O SCHEDULER(2)
• デバイスひとつにI/Oスケジューラひとつ • デバイスをまたぐ処理の場合に注意 • 処理に関わるすべてのデバイスを確認せよ • # cat /sys/block/<DEV_NAME>/queue/ scheduler
21.
条件その2: I/O処理の内容(1) •
Write() は基本的に効かない • O_DIRECT, O_SYNC をフラグ立ててればOK • -o sync でマウントされたファイルシステムならOK
22.
条件その2: I/O処理の内容(2) •
Read() もすべてに効くわけではない • ディスクキャッシュがあるとダメ • ディスクアクセスないから当然
23.
まとめ • ionice
は以下の 2条件を満たした時にちゃんと動く • I/O Scheduler が CFQ • 特定のI/O処理 • キャッシュされていないファイルへのRead • 特殊フラグの立った Write
24.
さいごに • man
ioprio_set を読もう • ファイル作成フラグの細かいことはまた今度 • O_SYNC, O_DSYNC, O_FSYNC… • ionice -p <PID> を使うと、起動中のプロセスのI/O優 先度変更できるよ
Descargar ahora