Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Long-term testing on accelerated Linux kernel
Search
Yoshitake Kobayashi
May 05, 2010
Technology
0
12
Long-term testing on accelerated Linux kernel
CELF Japan Technical Jamboree 32
Yoshitake Kobayashi
May 05, 2010
Tweet
Share
More Decks by Yoshitake Kobayashi
See All by Yoshitake Kobayashi
Towards a Decade of Industrial Grade Linux: CIP’s Journey and the Road Ahead
ystk
0
15
持続可能な社会インフラを築くOSS基盤:Civil Infrastructure Platform
ystk
0
150
Driving InnerSource Way in the Enterprise
ystk
0
45
InnerSource Learning Path - インナーソースで始める組織内オープンソース開発入門&実践 -
ystk
1
290
Civil Infrastructure Platform : Industrial-Grade Linux
ystk
0
35
Boosting Software Development with Generative AI
ystk
0
59
Enhancing Cyber Resilience and Sustainability in Critical Infrastructure with CIP and IEC-62443-4
ystk
0
31
Introducing CIP in 10 minutes
ystk
0
87
Civil Infrastructure Platform-Empowering Sustainable Living with Industrial Grade Linux
ystk
0
74
Other Decks in Technology
See All in Technology
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
3
150
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.5k
あたらしい上流工程の形。 0日導入からはじめるAI駆動PM
kumaiu
5
760
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
450
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
180
使いにくいの壁を突破する
sansantech
PRO
1
120
入社1ヶ月でデータパイプライン講座を作った話
waiwai2111
1
250
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
600
2人で作ったAIダッシュボードが、開発組織の次の一手を照らした話― Cursor × SpecKit × 可視化の実践 ― Qiita AI Summit
noalisaai
1
370
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
データ民主化のための LLM 活用状況と課題紹介(IVRy の場合)
wxyzzz
2
670
システムのアラート調査をサポートするAI Agentの紹介/Introduction to an AI Agent for System Alert Investigation
taddy_919
2
1.9k
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
49
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
210
Utilizing Notion as your number one productivity tool
mfonobong
3
220
The Cost Of JavaScript in 2023
addyosmani
55
9.5k
エンジニアに許された特別な時間の終わり
watany
106
230k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
47
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
140
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
GraphQLとの向き合い方2022年版
quramy
50
14k
Tell your own story through comics
letsgokoyo
1
800
Game over? The fight for quality and originality in the time of robots
wayneb77
1
110
Transcript
Mar. 5, 2010 Long-term testing on accelerated Linux kernel Yoshitake
Kobayashi Advanced Software Technology Group Corporate Software Engineering Center TOSHIBA CORPORATION Copyright 2010, Toshiba Corporation.
2 本日の発表のアウトライン 問題 Linuxカーネルの加速方法 実装と問題点 実験 まとめ
3 はじめに 今回 今回 今回 今回の の の の話 話
話 話は は は は・・・ ・・・ ・・・ ・・・ • 「こんなことをやってみた」という内容です 何 何 何 何をしたか をしたか をしたか をしたか • Linux カーネルの動作を加速してみました • ....というのは,少し(かなり?)”怪しい”部分を含みます
4 問題と解決案 問題 • 長期稼動を対象としたテストには時間がかかる → 手っ取り早く長期間分のテストをしてみたい START GOAL 加速
加速 加速 加速! ! ! !
5 制限事項 加速 加速 加速 加速できないものは できないものは できないものは できないものは多 多
多 多い い い い • CPUの最大動作周波数 • ディスクアクセススピード • ネットワーク通信速度 • ..... 加速 加速 加速 加速できそうなもの できそうなもの できそうなもの できそうなもの • 時間の進み方 ハード ハード ハード ハードそのものは そのものは そのものは そのものは 加速不可 加速不可 加速不可 加速不可
6 時間の加速にあたって Linuxにおける における における における時間管理 時間管理 時間管理 時間管理 •
jiffies - システム起動時から経過したtick数 • xtime - 現在時刻と日付を保持 加速 加速 加速 加速の の の の定義 定義 定義 定義 • 加速 = jiffies × 加速係数 jiffies jiffies jiffies jiffiesが が が が基本 基本 基本 基本
7 実装 1. Kconfigにパラメータを追加 • Config SPEEDUP_RATIO (範囲:1~1000) 2. do_timer()関数でごにょごにょ
• 単に加速係数を掛けているだけ 3.操作は procfs経由で行う 例: echo 100 > /proc/sys/kern/accel など 実装環境: kernel-2.6.18 (Debian/GNU Linux 4.0) void do_timer(….) { jiffies_64 = jiffies_64 + (1 * speedup_ratio); ….. } 1000倍速 倍速 倍速 倍速で で で で起動 起動 起動 起動! まともに まともに まともに まともに 動 動 動 動かない かない かない かない!
8 動作不具合現象と原因 1. 現象 • ファイルシステムがマウントできない • デバイスがまともに動作しない 2. 原因
• カーネル内部のタイムアウト処理 - デバイスドライバ - ファイルシステム • ユーザレベルプログラムのタイムアウト 例: udev
9 具体例 マウスが動かない • 以下のカーネルメッセージが表示される - Mar 4 00:18:13 accel
kernel: psmouse.c: Wheel Mouse at isa0060/serio1/input0 lost synchronization, throwing 1 bytes away. - 赤で書いたファイル名は実際には”psmouse-base.c” (コメントのバグ?) キーボード • キーボード入力: 一瞬で数十文字入力が可能に! • シリアルコンソールは大丈夫 スクリーンセーバー • 一瞬でブラックアウト
10 タイムアウトへの対策 1. 方針 • 対象カーネルのタイムアウト依存部を整理 • jiffiesを利用している部分を中心にgrepで 2. 方法
• 加速係数に合わせてタイムアウトを調整 • ( timeout * speedup_ratio ) でタイムアウトを長く gnomeデスクトップ デスクトップ デスクトップ デスクトップ環境 環境 環境 環境までそれなりに までそれなりに までそれなりに までそれなりに動 動 動 動いた いた いた いた
11 実験 ★ 簡単なテストプログラムをいくつか用意 • gettimeofday()利用による時間進行確認プログラム • times()利用による時間進行確認プログラム • syslog,
message, vmstatログ監視プログラム • とりあえず10年程度走らせてみる(1000倍速で約4日) ★ 結果 • gettimeofday()利用では特に問題なし • times()利用ではclock_tオーバーフローを確認 (マニュアルに書かれている通りの動作) • syslog, message, vmstatログ監視では特に異常は見当たらない • ACPIによる電源断も10年経過後も行えるようだ
12 スクリーンショット xdaliclockはそれなりの はそれなりの はそれなりの はそれなりの速度 速度 速度 速度で で
で で動作 動作 動作 動作 xclockは は は は針 針 針 針がまともに がまともに がまともに がまともに動作 動作 動作 動作せず せず せず せず( ( ( (スキップ スキップ スキップ スキップ動作 動作 動作 動作) ) ) ) 40倍速程度 倍速程度 倍速程度 倍速程度で で で で CPU使用率 使用率 使用率 使用率100% % % %に に に に 450日弱 日弱 日弱 日弱で で で で不正 不正 不正 不正な な な な値 値 値 値が が が が 出力 出力 出力 出力されている されている されている されている
13 まとめ Linuxカーネル カーネル カーネル カーネルを を を を加速 加速
加速 加速してみた してみた してみた してみた • 本当に(ハードウェアが)速くなるわけではない - 物理的に加速したのではないので限界あり - 加速したのは時刻のみ • ソフトウェアの実行は”見た目”で早く感じることもある • clock_tのオーバーフロー問題は,1日程度で再現可能 • カーネル自体は10年動作させても大丈夫そう • 長期稼動向けの試験に応用することを期待 • 他の有効利用方法についてはアイデア アイデア アイデア アイデア募集中 募集中 募集中 募集中です
14 2008 / 7 / 24 TOSHIBA Confidential