Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
HDDへのアクセス速度は位置によって変わる!??
Search
Satoru Takeuchi
PRO
March 16, 2024
Technology
4
220
HDDへのアクセス速度は位置によって変わる!??
以下動画のテキストです。
https://youtu.be/iJHcw91MZbY
Satoru Takeuchi
PRO
March 16, 2024
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
eBPF
sat
PRO
1
97
waruiBPF
sat
PRO
0
94
eBPFとwaruiBPF
sat
PRO
4
3.1k
Pythonのコードの気になる行でスタックトレースを出す
sat
PRO
0
89
ソースコードを読むときの思考プロセスの例 ~markdownのレンダリング方法を知りたかった2 markdownパッケージ~
sat
PRO
0
180
様々なファイルシステム
sat
PRO
0
330
ソースを読む時の思考プロセスの例-MkDocs
sat
PRO
1
410
ソースを読むプロセスの例
sat
PRO
22
18k
メモリマップトファイル
sat
PRO
1
170
Other Decks in Technology
See All in Technology
障害対応訓練、その前に
coconala_engineer
0
200
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
420
MySQLのSpatial(GIS)機能をもっと充実させたい ~ MyNA望年会2025LT
sakaik
0
120
[Data & AI Summit '25 Fall] AIでデータ活用を進化させる!Google Cloudで作るデータ活用の未来
kirimaru
0
4k
NIKKEI Tech Talk #41: セキュア・バイ・デザインからクラウド管理を考える
sekido
PRO
0
220
SQLだけでマイグレーションしたい!
makki_d
0
1.2k
2025年のデザインシステムとAI 活用を振り返る
leveragestech
0
300
Authlete で実装する MCP OAuth 認可サーバー #CIMD の実装を添えて
watahani
0
190
2025-12-27 Claude CodeでPRレビュー対応を効率化する@機械学習社会実装勉強会第54回
nakamasato
4
1.1k
Snowflake Industry Days 2025 Nowcast
takumimukaiyama
0
110
20251219 OpenIDファウンデーション・ジャパン紹介 / OpenID Foundation Japan Intro
oidfj
0
510
Snowflake導入から1年、LayerXのデータ活用の現在 / One Year into Snowflake: How LayerX Uses Data Today
civitaspo
0
2.5k
Featured
See All Featured
Heart Work Chapter 1 - Part 1
lfama
PRO
3
35k
Side Projects
sachag
455
43k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Darren the Foodie - Storyboard
khoart
PRO
0
2k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
70
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
170
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
340
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
130
A better future with KSS
kneath
240
18k
Visualization
eitanlees
150
16k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
2
260
Transcript
HDDへのアクセス速度は 位置によって変わる!?? Mar. 16th, 2024 Satoru Takeuchi X: satoru_takeuchi
はなすこと • HDDへのアクセス速度がアクセスする位置によって変わることを説明 ◦ 実験 ◦ なんでそうなるか
いきなり実験! • HDDのシーケンシャル読み出し性能を測る ◦ HDDの先頭から1MiBづつ、合計128MiBのデータを読んだときのスループットを測定 ◦ 誤差を減らすために 10回測定して平均をとる • 📝
参考: データ採取に使ったコード $ cat perf.sh #!/bin/bash SUM=0 for ((i=0;i<10;i++)) ; do VAL=$(sudo dd if=/dev/sda of=/dev/null bs=1M count=128 iflag=direct 2>&1 | \ sed -nE -e 's/.*, ([0-9.]+) MB\/s$/\1/p') SUM=$((SUM+VAL)) done python3 -c "print($SUM / 10)"
いきなり実験! • HDDのシーケンシャル読み出し性能を測る ◦ HDDの先頭から1MiBづつ、合計128MiBのデータを読んだときのスループットを測定 ◦ 誤差を減らすために 10回測定して平均をとる • 📝
参考: データ採取に使ったコード $ cat perf.sh #!/bin/bash SUM=0 for ((i=0;i<10;i++)) ; do VAL=$(sudo dd if=/dev/sda of=/dev/null bs=1M count=128 iflag=direct 2>&1 | \ sed -nE -e 's/.*, ([0-9.]+) MB\/s$/\1/p') SUM=$((SUM+VAL)) done python3 -c "print($SUM / 10)" $ ./perf.sh 132.5
読み出す領域をディスクの末尾あたりにすると… • ディスク先頭から2.5TiB時点(ディスクサイズは約2.7TiB)から読み出す $ cat perf.sh #!/bin/bash SUM=0 for ((i=0;i<10;i++))
; do VAL=$(sudo dd if=/dev/sda of=/dev/null bs=1M count=128 \ iflag=direct,skip_bytes skip=2560G 2>&1 | \ sed -nE -e 's/.*, ([0-9.]+) MB\/s$/\1/p') SUM=$((SUM+VAL)) done python3 -c "print($SUM / 10)"
読み出す領域をディスクの末尾あたりにすると… • ディスク先頭から2.5TiB時点(ディスクサイズは約2.7TiB)から読み出す $ cat perf.sh #!/bin/bash SUM=0 for ((i=0;i<10;i++))
; do VAL=$(sudo dd if=/dev/sda of=/dev/null bs=1M count=128 \ iflag=direct,skip_bytes skip=2560G 2>&1 | \ sed -nE -e 's/.*, ([0-9.]+) MB\/s$/\1/p') SUM=$((SUM+VAL)) done python3 -c "print($SUM / 10)" $ ./perf.sh 113.9 14%性能劣化! 理由はHDDの性質
データはプラッタという円盤に保存される • 外側ほどセクタ(データを入れる部分)がたくさんある • ブロックデバイスのデータはオフセットが小さいほど外周に配置される セクタ
データの読み書きはスイングアームについたヘッドで 回転 回転 移動 アクセス スイングアーム ヘッド
ある量(角度)回転したとすると… • アクセスできるセクタ量はディスクの外側のほうが多い 回転 回転 90度回転すると外側は 5つ まんなかは4つ 内側は2つ
つまりどういうことかというと… • ディスクの外側のほうがアクセスできるセクタ数が多い • ディスクの外側にあるオフセットの小さいデータには高速にアクセス可能 回転 回転 90度回転すると外側は 5つ まんなかは4つ
内側は2つ
参考: いろいろなオフセットで同じことをしたグラフ
まとめ • HDDへのアクセス速度はアクセスする位置によって変わる • HDDに対応するブロックデバイスのオフセットが小さいほど高速にアクセス可能 • 理由はHDDの特性 ◦ プラッタの外周ほどセクタ数が多い ◦
オフセットが小さいデータほど、プラッタの外周にあるセクタに配置される ◦ プラッタをある角度だけ回転させると、外周にあるデータほど高速にアクセスできる ◦ オフセットが小さいところのデータほど高速にアクセスできる