Skip to main content
QUICK REVIEW

[論文レビュー] Silent Data Corruptions at Scale

Harish Dattatraya Dixit, Sneha Pendharkar|arXiv (Cornell University)|Feb 22, 2021
Radiation Effects in Electronics参考文献 21被引用数 68
ひとこと要約

本論文はデータセンターの CPUs における silent data corruptions (SDCs) を分析し、実世界のデバッグケースを提示し、スケールでの検出と緩和戦略を検討する。

ABSTRACT

Silent Data Corruption (SDC) can have negative impact on large-scale infrastructure services. SDCs are not captured by error reporting mechanisms within a Central Processing Unit (CPU) and hence are not traceable at the hardware level. However, the data corruptions propagate across the stack and manifest as application-level problems. These types of errors can result in data loss and can require months of debug engineering time. In this paper, we describe common defect types observed in silicon manufacturing that leads to SDCs. We discuss a real-world example of silent data corruption within a datacenter application. We provide the debug flow followed to root-cause and triage faulty instructions within a CPU using a case study, as an illustration on how to debug this class of errors. We provide a high-level overview of the mitigations to reduce the risk of silent data corruptions within a large production fleet. In our large-scale infrastructure, we have run a vast library of silent error test scenarios across hundreds of thousands of machines in our fleet. This has resulted in hundreds of CPUs detected for these errors, showing that SDCs are a systemic issue across generations. We have monitored SDCs for a period longer than 18 months. Based on this experience, we determine that reducing silent data corruptions requires not only hardware resiliency and production detection mechanisms, but also robust fault-tolerant software architectures.

研究の動機と目的

  • SDCsを引き起こすシリコン製造における欠陥タイプを特定する。
  • 実世界のケーススタディを用いて、SDCsがアプリケーションレベルへ伝播する様を示す。
  • 部隊全体でのSDCsの根本原因解析を可能にするデバッグワークフローとツールを説明する。
  • 本番環境でのSDCリスクを低減するためのハードウェアとソフトウェアの戦略を概説する。

提案手法

  • シリコン欠陥カテゴリを分類する: デバイスエラー、初期寿命の故障、劣化、そして使用寿命末期の摩耗。
  • SDCsが欠損データやデータ損失の可能性を招く実世界のSparkベースのアプリケーションを分析する。
  • Scala から Java Byte Code へ そして アセンブリまでの多言語リプロデューサーワークフローを、根本原因分析のために詳述する。
  • 決定論的リプロデューサを組み立て、命令レベルでのデバッグを行うためのベストプラクティスガイドラインを提案する。

実験結果

リサーチクエスチョン

  • RQ1データセンターのCPUで silent data corruptions に寄与するシリコンおよび製造欠陥カテゴリは何か?
  • RQ2SDCsはハードウェアからソフトウェアスタックを経てどのようにしてアプリケーションレベルの障害を引き起こすのか?
  • RQ3大規模でのSDCsの根本原因解析を可能にするデバッグワークフローとツールは何か?
  • RQ4大規模フリートでSDCsを緩和する検出および耐障害性を備えたソフトウェア/ハードウェア戦略は何か?

主な発見

  • データセンターCPUのSDCsは従来のソフトエラーFITモデルより高い頻度で発生し、スケールで再現性がある。
  • 実世界のケースは、SDCsがデータのデコンプレッションやデータ処理ワークフローで欠損または破損データを引き起こす可能性を示す。
  • 大規模でのデバッグには、欠陥のある命令を特定するためのクロス言語リプロデューサとアセンブリレベルのトレースが必要である。
  • 緩和策にはハードウェア保護、ターゲットを絞ったテスト、検出機構、ソフトウェア耐障害設計が含まれる。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。