組込み Linux の起動高速化 株式会社富士通コンピュータテクノロジーズ 亀山英司 1218ka01 Copyright 2013 FUJITSU COMPUTER TECHNOLOGIES LIMITED

Similar documents
Contents 1. 自己紹介 2. ブート時間短縮のアプローチ 3. Snapshotブートの実装 4. Snapshot 取得位置と起動時間 5. より高速なSnapshotブートへのアプローチ 2 1. 自己紹介 3 2

2015 TRON Symposium セッション 組込み機器のための機能安全対応 TRON Safe Kernel TRON Safe Kernel の紹介 2015/12/10 株式会社日立超 LSIシステムズ製品ソリューション設計部トロンフォーラム TRON Safe Kernel WG 幹事

PowerPoint Presentation

目次 背景 IEEE802.3azとは Linuxカーネルの対応状況 測定方法 測定結果 まとめ 1

ストリームを用いたコンカレントカーネルプログラミングと最適化 エヌビディアジャパン CUDAエンジニア森野慎也 GTC Japan 2014

Microsoft PowerPoint - yamagata.ppt

OpenStack運用実践によるエンタープライズ適用に向けた課題と今後について~ベアメタルサービスの現状とDesign Summitでの討議状況~

提案書

NEC 製PC サーバ『Express5800 R120f-1E』とSanDisk『ioMemory SX /SX 』検証報告書

WalB を動かしてみる

Microsoft PowerPoint - FormsUpgrade_Tune.ppt

ERDAS IMAGINE における処理速度の向上 株式会社ベストシステムズ PASCO CORPORATION 2015

KiwiSyslogServer/KiwiLogViewer製品ガイド

05-scheduling.ppt

ダンプ取得機能強化サポートオプション Enterprise Edition

TOPPERS 活用アイデア アプリケーション開発 コンテスト 部門 : 活用アイデア部門アプリケーション開発部門 作品のタイトル : Toppers_JSP と Scicos_lab / (Scilab でも可 ) による 組込みメカトロニクス制御シミュレーション 作成者 : 塩出武 ( シオデタ

Microsoft PowerPoint - Android+TPMによるセキュアブート_KDDI研_後日配布用

PowerPoint プレゼンテーション

Warp demo station manual

ソフト活用事例③自動Rawデータ管理システム

スライド 1

t20s3-fn09.pdf

Linkexpress トラブル初期調査資料 採取コマンド使用手引書

fse7_time_sample

PowerPoint プレゼンテーション

Microsoft Word - JP-AppLabs-MySQL_Update.doc

PowerPoint プレゼンテーション

仮想化基礎演習テキスト Ⅰ 第 1.0 版 演習で学ぶ仮想化基礎 ( クライアント仮想化編 ) 九州ラーニングネット株式会社 特定非営利活動法人パソコン整備士協会

Arcserve Backup r16 新機能 テープブロックサイズの拡張 効果実測 Arcserve Japan 1.5 版

PowerPoint プレゼンテーション

CommCheckerManual_Ver.1.0_.doc

PHP 開発ツール Zend Studio PHP アフ リケーションサーハ ー Zend Server OSC Tokyo/Spring /02/28 株式会社イグアスソリューション事業部


Microsoft Word - nvsi_100222jp_oracle_exadata.doc

RTC_STM32F4 の説明 2013/10/20 STM32F4 内蔵 RTC の日付 時刻の設定および読み込みを行うプログラムです UART2( 非同期シリアル通信ポート 2) を使用して RTC の設定および読み込みを行います 無料の開発ツール Atollic TrueSTUDIO for

Windows Server 2012 および Windows Server 2008 のインストール

KSforWindowsServerのご紹介

スライド 1

パフォーマンス徹底比較 Seasar2 vs Spring 2006/04/12 株式会社電通国際情報サービスひがやすを株式会社アークシステム本間宏崇 Copyright the Seasar Foundation and the others all rights reserved.

Anniversary Update の手動アップデート PC 資料 年 8 月 2 日 Microsoft から Windows 10 2 回目の大型アップデート Windows 10 Anniversary Update が提供されました 多くのセキュリティ修正の

ワイヤレスセンサモジュール取扱説明書

ActiveImage Protector 3.5

4. サーバ構成型番 PRIMERGY RX200 S5 PRIMERGY RX300 S5 SPARC Enterprise T5120 XVR-300 Graphics Accelerator SPARC Enterprise T5220 XVR-300 Graphics Accelerator

HP Device Managerご紹介資料

Microsoft PowerPoint - OS07.pptx

検証結果報告書 Cisco UCS Server Tandberg Data LTO5 HH/ Storage Loader LTO 5 FC +Dell Softwre NetVault 動作検証 (Windows Server 2012) タンベルグデータ株式会社 営業部

PowerPoint プレゼンテーション

ハード・ソフト協調検証サービス

Microsoft PowerPoint - kiwi_productguide v9_rev2.7.ppt

Windows10 における Ac6 System Workbench for STM32 のダウンロードとインストール V /06/01 Windows10 の PC で Ac6 System Workbench for STM32 のダウンロードとインストールの方法について説明しま

V8_教育テキスト.dot

スライド 1

目次 : 目次 : 検証の目的 検証 検証及び結果 基本動作確認 性能評価 検証まとめ 検証結果早見表 お問い合わせ先

バーコードハンディターミナル BT-1000 シリーズセットアップガイド ( 第 1 版 ) CE ***

Perle社 ターミナルサーバIOLAN STS8と富士通PCサーバ PRIMERGY RX2520 M1 の接続検証結果報告書(Red Hat Enterprise Linux 6.6(for Intel64)版)

Windows2000/XPインストール手順

memcached 方式 (No Replication) 認証情報は ログインした tomcat と設定された各 memcached サーバーに認証情報を分割し振り分けて保管する memcached の方系がダウンした場合は ログインしたことのあるサーバーへのアクセスでは tomcat に認証情報

PowerPoint プレゼンテーション

IBM Cloud Social Visual Guidelines

HP Windows 10 IoT Enterprise for ThinClients

変更履歴 項番版数内容更新日 版新規作成 2013 年 11 月 18 日 1

目次 第 1 章はじめに 本ソフトの概要... 2 第 2 章インストール編 ソフトの動作環境を確認しましょう ソフトをコンピュータにセットアップしましょう 動作を確認しましょう コンピュータからアンインストー

LSI MegaRAID SAS Device Driver Installation Guide - 日本語

PowerPoint プレゼンテーション

ダウンロードサービス ダウンロードサービス 処理の流れ 詳細は次頁以降をお読み下さい 1. インターネットエクスプローラー等のブラウザソフトを起動します アドレスバーに下記の URL を入力します 2. ログイン画面にユーザー ID とパスワード

セキュリティー機能(TPM)設定ガイド

日立ディスクアレイサブシステム環境強化サポートオプション

PowerPoint プレゼンテーション

Windows AIKを使用したPE2

WindowsEmbeddedStandard7 IBW によるクイックスタートガイド 東京エレクトロンデバイス株式会社 CN 事業統括本部 エンベデッド ソリューション部 Apr2012 本資料の著作権は 東京エレクトロンデバイス株式会社に帰属します 許可なく 転載 複製することを禁止します

Hadoop LZO圧縮機能の検証

目次 第 1 章はじめに 本ソフトの概要... 2 第 2 章インストール編 ソフトの動作環境を確認しましょう ソフトをコンピュータにセットアップしましょう 動作を確認しましょう コンピュータからアンインストー

の 2 章である OSDI 2.5 章 2.6 章 2.5 Overview of processes in Minix3 Minix3 におけるプロセスの扱い方や システムとしてのプロセス Layer の分け方など概念を中心にこの章では扱っている 実際の実装については 2.6 章で扱う 2.5.1

テンプレート

(速報) Xeon E 系モデル 新プロセッサ性能について

JACi400のご紹介~RPGとHTMLで簡単Web化~

スライド 1

Application Note Application Note No. ESC-APN Document No.: ESC-APN adviceluna Linux デバッグ手順 (MIPS コア編 ) はじめに adviceluna Linux デバッグ手順 ( 以

RF2_BIOS一覧

第一章 LPC2478 ボードの概要...3 第二章 uclinux の初体験 SD カードのテスト USB メモリのテスト USB Devices のテスト network のテスト...6 第三章 uclinux のコンパイル...

Diginnos PC 初期化方法 初期化操作を行うと ストレージ ( ハードディスク / SSD)( 以降ストレージと記載します ) 内のデータが全て初期化されます 必要なデータは他のメディア等にバックアップのうえ作業してください 初期化とは Windows 10 のプッシュボタンリセットの機能の

もくじ 1. はじめに 1.1 本書について サポート 3 2. 準備する 2.1 TORAIZ AS-1の設定を行う コンピューターと接続する TORAIZ Sound editor LEのMIDI 設定を行う TORAIZ AS-1からバンクのデー

Microsoft Word - 楽天㇯ㅩ㇦ㅛIaaSㇵㅼã…fiã‡¹ä»Łæ§Ÿ.doc

1. 概念 STM32F4 Discovery 基板は Mini USB を接続して デバッグやプログラムの書き込みができるようになっています 通常は CPU の 0x 番地からプログラムを実行します では なぜわざわざこのプロジェクトの雛形を使用して CPU の 0x

産直くん 9 リピートくん 9 バックアップ リストア作業チェックリスト バックアップ リストア作業項目一覧 作業項目作業目安時間概要 00 バックアップ リストア作業を行う前に 産直くん 9 リピートくん 9 のバックアップ リストア作業を円滑に行うための確認事項をまとめています 1. バックアッ

RDX へのバックアップ 3 ベアメタル復旧手順書 2014 年 11 月

Oracle Data Pumpのパラレル機能

2. WiFi 接続 1.1 GuruPlug Server 初期設定情報 記載の SSID が設定されているアクセスポイントが GuruPlug Server です PC を操作して GuruPlug Server のアクセスポイントに接続して WiFi 接続してください 接続に成功すると PC

White Paper 高速部分画像検索キット(FPGA アクセラレーション)

JustSystems

AcronisUniversalRestore_userguide_en-US

目次 1. 概要 製品構成 用語集 SECUDRIVE Device Control Basic インストールUSBメモリの構成 プログラムのインストール 体験版から正規版への変更

Microsoft Word - DS50-D A_E701_BIOS_Manual.doc

IBIS

ルネサス半導体セミナースケジュール

( 作成方法 ) 1 メーカーの取扱説明書に記載されている 2 PC 購入店で作成してもらう (PC デポで6000 円 ) 3 リカバリー作成ソフトがインストールされている ⑵ PC 丸ごと ( システムイメージ ) のバックアップ バックアップ方法 注 4 USB 接続の外付け HDD を使用

自宅でJava言語の開発環境を作る方法

Microsoft Word - nvsi_060132jp_datadomain_restoreDRAFT4.doc

サーバ/クライアント オプション

Transcription:

組込み Linux の起動高速化 株式会社富士通コンピュータテクノロジーズ 亀山英司 1218ka01

組込み Linux における起動高速化 組込み Linux の起動時間短縮について依頼あり スペック CPU : Cortex-A9 ( 800MB - single) RAM: 500MB 程度 要件 起動時間 画出し 5 秒 音出し 3 秒 終了時間 数 ms で電源断 1

課題と対策 問題点 起動まで 13 秒 ( login: 表示まで ) 機能の折込みは段階的に実施されるため その度に再度チューニングが必要 方針 boot loader や kernel アプリなどを個々に高速化するのではなく 段階的に提供される各モジュールの処理時間に影響されない高速起動の仕組みを作る ユビキタス社の起動高速ソリューション QuickBoot を採用 2

QuickBoot (1) QuickBoot とは ハイバネーション技術をベースに株式会社ユビキタスが提供する Android/Linux 向けの高速起動ソリューション 高速起動時はスナップショット採取時の状態に復帰するため 各モジュールの初期化処理に依存されない システムの起動に必要なメモリ領域を優先的に不揮発性メモリから RAM に復元することで 他の方式と比べて圧倒的な速度の起動を実現 アプリケーション側で使用しているメモリ量に依存せず常に高速起動が可能であり 残りのメモリ領域は起動後に順次読み込みを行うため ユーザーの操作にほとんど影響を与えない 3

QuickBoot (2) Kernel init kernel User land Image Load Resume 起動後処理 アプリ起動 Snapshot image アプリ初期化 終了前処理 Suspend kernel User land 4

効果 効果 アプリ起動までは 13 秒から 4.5 秒に短縮 しかしアプリ起動から画面出しまで 11 秒 4.5 秒 Image Load Resume 起動後処理 更なる改善が必要 11 秒 アプリ初期化 5

施策 Snapshot Image Device Driver Task Priority File I/O 6

施策 1 Snapshot Image (1) 各モジュールの処理に影響されない高速起動の仕組み を実現するためには出来るだけ起動した状態に近い時点のスナップショットを採取することが望ましい 改善のポイント 採取のタイミング Image Load Resume 起動後処理 サイズの削減 アプリ初期化 7

施策 1 Snapshot Image (2) スナップショット採取のタイミング 課題 スナップショットブート後に動作するアプリの初期化処理が多い 施策 アプリ側の初期化処理を見直し スナップショット採取前に移動できるものを精査 Kernel init アプリ起動 Image Load Resume 起動後処理 スナップショットサイズが増大 100BM 程度 終了前処理 Suspend アプリ初期化 8

施策 1 Snapshot Image (3) イメージサイズの削減 課題 領域不足 整合性確認時間の増大 ロード時間の増大 施策 イメージ圧縮 圧縮方式 圧縮率 伸長時間 LZF 約 60% ZLIB 約 40% LZ4 約 50% ページキャッシュの解放 スナップショット起動後の処理が遅くなる場合あり 9

施策 2 Device Driver (1) Suspend/Resume 対応可能なドライバ Suspend/Resume 対応 Suspend/Resume 対応を行うことにより起動後処理にて insmod するより高速 Image Load Resume 並列化 Suspend/Resume 処理を並列動作させることにより短縮化 SD ホストインタフェースなど Resume に時間がかるドライバを非同期で実施 device_enable_async_suspend() 起動後処理 アプリ初期化 10

施策 2 Device Driver (2) Suspend/Resume 非対応ドライバ ローダブルモジュール化して起動後処理にてロード Device node デバイス ID を固定とし Suspend 前に作成 Suspend 時にロードだけ実施 ロード時はなにもしない Resume 後従来の初期化処理を実施 Image Load Resume 起動後処理 アプリ初期化 11

施策 3 Task Priority (1) 課題 高優先度で動作するタスクが多く 起動に必要な処理を阻害 Image Load Resume 起動後処理 アプリ初期化 12

施策 3 Task Priority (2) 解析方法 Profile JTAGやPerftools FtraceなどのProfile 機能を使用 単位時間当たりのプロセス スレッドのCPU 使用率をグラフ化 25 20 15 10 5 0 1 2 3 4 5 6 7 8 9 10 11 12 13

施策 3 Task Priority (3) タスク優先度の調整 施策 各タスクのプライオリティを調査 起動に必要なタスクを優先的に動作させる様に優先度を調整 Kernel のタスクスケジューラの設定を調整し 起動時間が最も短くなる設定を検証 14

施策 4 File I/O(1) ファイル I/O 負荷の集中 課題 高速起動後各プロセスが一斉に動作する為 プログラムロードによるファイル I/O が集中 プロセスの初期化時に画面データや DB 参照などファイルの読み込みが多発 Image Load Resume 起動後処理 アプリ初期化 15

施策 4 File I/O(2) 解析方法 Sar を使用 I/O Wiatがある Utilが100% を示す 16

施策 4 ファイル I/O(3) ファイル I/O 負荷の集中 対策 起動に最低限必要なプロセスのみ先に動作させ Page fault によるプログラムロードを低減させる プロセスがアクセスするファイルの読み出しタイミングを プロセスの初期化処理で一括で行うのではなく そのデータを最初に使用するタイミングに変更 17

施策 4 ファイル I/O(2) ファイル I/O 性能 課題 ファイル I/O 自体が遅い 施策 ファイルを事前にキャッシュ スナップショット採取前に不揮発なメモリへコピー IO スケジューラの選定 Kernel で選択可能な複数の I/O スケジューラ (CFQ/deadline/NOOP) の検証とチューニング I/O プライオリティの見直し タスクごとに IO プライオリティをチューニング (CFQ 使用時 ) 18

成果 効果 起動時間 画出し 5 秒強 音だし 4 秒強 2 秒弱 Image Load Resume 起動後処理 35.000 30.000 25.000 アプリ起動後処理 resume preload+crc 3 秒強 アプリ初期化 20.000 uboot 実測 (Log 無し ) 15.000 10.000 5.000 0.000 19

20