ICSE'11勉強会 Riding the Design Wave I セッション

Slides:



Advertisements
Similar presentations
OWL-Sを用いたWebアプリケーションの検査と生成
Advertisements

モデル検査の応用 徳田研究室 西村太一.
シーケンス図の生成のための実行履歴圧縮手法
キャッシュ付PRAM上の 並列クィックソートと 並列マージソート
ファイルキャッシュを考慮したディスク監視のオフロード
コンピュータプラクティス I 再現性 水野嘉明
Chapter11-4(前半) 加藤健.
最新ファイルの提供を保証する代理FTPサーバの開発
クラスタ分析手法を用いた新しい 侵入検知システムの構築
Riding the Design Wave II
Capter9 Creating an Embedded Test Bench ( )
SSR 論文調査 Safety and Cyber-Physical Systems
Heap Cloning: Enabling Dynamic Symbolic Execution of Java Programs
神奈川大学大学院工学研究科 電気電子情報工学専攻
仮想マシンの並列処理性能に対するCPU割り当ての影響の評価
Observable modified Condition/Decision coverage
F11: Analysis III (このセッションは論文2本です)
ネストした仮想化を用いた VMの安全な帯域外リモート管理
オープンソフトウェア利用促進事業 第3回OSSモデルカリキュラム導入実証
リファクタリングのための 変更波及解析を利用した テスト支援ツールの提案
Research Session 17: Formal Verification
動的スライスを用いたバグ修正前後の実行系列の差分検出手法の提案
演算/メモリ性能バランスを考慮した マルチコア向けオンチップメモリ貸与法
組み込み向けCPU 小型デバイスに搭載されるCPU 特徴 携帯電話,デジタルカメラ,PDA,センサデバイスなど 小型 低消費電力 多機能
サーバ負荷分散におけるOpenFlowを用いた省電力法
2004年度 サマースクール in 稚内 JavaによるWebアプリケーション入門
2003年度 データベース論 安藤 友晴.
型付きアセンブリ言語を用いた安全なカーネル拡張
SpectreとMeltdown ITソリューション塾・第28期 2018年5月30日 株式会社アプライド・マーケティング 大越 章司
ソースコードの変更履歴における メトリクス値の変化を用いた ソフトウェアの特性分析
動的スライスを用いた バグ修正前後の実行系列の比較
オブジェクト指向プログラムにおける エイリアス解析手法の提案と実現
シーケンス図を用いて実行履歴を可視化するデバッグ環境の試作
動的スライスを用いたバグ修正前後の実行系列の差分検出手法
ユーザ毎にカスタマイズ可能な Webアプリケーションの 効率の良い実装方法
実行時情報に基づく OSカーネルのコンフィグ最小化
社会シミュレーションのための モデル作成環境
第7回 授業計画の修正 中間テストの解説・復習 前回の補足(クロックアルゴリズム・PFF) 仮想記憶方式のまとめ 特別課題について
クラウドにおけるIntel SGXを用いた VMの安全な監視機構
ゲーム開発モデルの基礎.
~新たなソフトウェア開発の手法~ 発表 土屋俊介
通信機構合わせた最適化をおこなう並列化ンパイラ
ソースコードの特徴量を用いた機械学習による メソッド抽出リファクタリング推薦手法
東京工業大学 情報理工学研究科 数理・計算科学専攻 千葉研究室 栗田 亮
コードクローン検出に基づくデザイン パターン適用支援手法の提案と実現
シナリオを用いたレビュー手法PBRの追証実験 - UMLで記述された設計仕様書を対象として -
先週の復習: CPU が働く仕組み コンピュータの構造 pp 制御装置+演算装置+レジスタ 制御装置がなければ電卓と同様
コーディングパターンの あいまい検索の提案と実装
第5回 メモリ管理(2) オーバレイ方式 論理アドレスとプログラムの再配置 静的再配置と動的再配置 仮想記憶とメモリ階層 セグメンテーション
明星大学 情報学科 2012年度前期     情報技術Ⅰ   第1回
Managing non-functional uncertainty via model-driven adaptivity
オブジェクトの協調動作を用いた オブジェクト指向プログラム実行履歴分割手法
設計情報の再利用を目的とした UML図の自動推薦ツール
ETPB: Extraction of Context from Pedestrians' Behavior
情報工学科 4年 中山直飛 中間発表.
開発作業の形式化に基づく プロセス評価 松下誠 大阪大学.
Webページタイプによるクラスタ リングを用いた検索支援システム
複雑度メトリクスを用いた JAVAプログラム品質特性の実験的評価
プログラムの一時停止時に 将来の実行情報を提供するデバッガ
動的スライスを用いたバグ修正前後の実行系列の差分検出手法の提案
動的スライスを用いたバグ修正前後の実行系列の差分検出手法の提案
コードクローン解析に基づく デザインパターン適用候補の検出手法
回帰テストにおける実行系列の差分の効率的な検出手法
アーキテクチャパラメータを利用した並列GCの性能予測
オブジェクト指向言語における セキュリティ解析アルゴリズムの提案と実現
明星大学 情報学科 2014年度前期     情報技術Ⅰ   第1回
ベイジアンネットワークと クラスタリング手法を用いたWeb障害検知システムの開発
FSE/ASE勉強会 A10:Software Maintenance II
Generating Obstacle Conditions for Requirements Completeness
Presentation transcript:

ICSE'11勉強会 Riding the Design Wave I セッション LIME: A Framework for Debugging Load Imbalance in Multi-threaded Execution Jungju Oh, Christopher J. Hughes, Guru Venkataramani Riding the Design Wave I セッション 担当:肥後芳樹(大阪大学) ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

ICSE'11勉強会 Riding the Design Wave I セッション 研究の背景 マルチコアのCPUが増えている クロック数の向上スピードは遅い 1CPUあたりのコア数はどんどん増えている スケーラビリティの高いシステムを構築するためには,マルチコアCPUの資源をうまく使う必要がある Dynamic Task Schedulingを使う手もあるけど,それ自体のオーバーヘッドがかなり高い スレッド間の負荷不均衡をプロ グラマに提示する手法が必要! 紹介論文の図2(負荷不均衡の例) ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

ICSE'11勉強会 Riding the Design Wave I セッション 貢献 ソースコードのどの部分が負荷不均衡の原因になっているのかを提示するシステム(LIME)の開発 各スレッドでループの回数が違う ハードウェアとの関連(キャッシュの有無等) SPLASH-2とPARSECのベンチマークプログラム(有名?)から負荷不均衡の検出 ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

ICSE'11勉強会 Riding the Design Wave I セッション LIMEの概要 2種類のプロファイラを用いる SESC:ハードウェアとの間のいろんな情報を収集可能,しかし,速度遅い Pin:制御フローの情報のみ収集,速度速い 大まかな処理の手順 STEP1:関連のありそうなイベントをまとめる STEP2:各グループ内でリーダーを特定する.リーダーとはこのグループによる負荷不均衡の中心的な役割をしているイベント STEP3:重回帰分析を行うことにより,どのリーダーがプログラムの負荷不均衡に支配的であるかを特定 STEP4:STEP3の結果をランク付けして表示 ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

ICSE'11勉強会 Riding the Design Wave I セッション 評価 15個のベンチマーク,スレッドの数を8,16,32,64個で実行し,LIMEで監視 SESCを使った場合の評価では,平均で,制御フローにより1.3個,キャッシュミスにより,2.1個の不可不均衡が発生していた Pinを使った場合の評価では,制御フローにより負荷不均衡を高速に見つけれた キャッシュミスの指摘の正しさは,「キャッシュミスが起こらなかったこと」にして,負荷不均衡が軽減されていることを確認 制御フローの指摘の正しさは,1つ1つ手作業により精査した.論文中では,3つの事例を紹介 ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

Synthesis of Live Behaviour Models for Fallible Domains Nicolas D’lpplito, Victor Braberman, Nir Piterman, Sebastian Uchitel Riding the Design Wave I セッション 担当:肥後芳樹(大阪大学) ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

制御設計(Controller synthesis)の例 旅行代理店は,以下の既存システムを組み合わせることにより,パック旅行を販売したい 飛行機チケット販売システム レンタカー予約システム ホテル予約システム 統合したシステムはさまざまな問題に対応しないといけない 飛行機が予約できなかった場合には,レンタカーとホテルの予約はしない等 紹介論文の図1(レンタカー予約システム) ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

ICSE'11勉強会 Riding the Design Wave I セッション 研究の背景 既存のコンポーネントを自動的に,安全に組み合わせたい 特に,service-oriented なアーキテクチャでは 最近注目を集めている自己適応型(self-adaptive)システムでは,制御設計はとても大事な技術 ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

ICSE'11勉強会 Riding the Design Wave I セッション 手法の特徴 基礎的な要求工学のベストプラクティスに従う システムが動作する環境に明確な仮定を置く Controlledとmonitorアクションの分離 2ページ前の図の実線と破線 計算複雑度は多項式時間 既存手法は指数時間 ユーザは,GR(1)やSGR(1)を用いて仕様を書く ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

ICSE'11勉強会 Riding the Design Wave I セッション 評価 既存手法の評価で使われた課題を,既存手法よりも正しくモデル化できるかを評価 4つの課題について,定性的な評価,時間については評価なし 4つの課題に対して,「このように扱うと提案手法でうまくできるよ」と書いている,と思う... 感想:論文としての完成度はいまいち 高い知識を要求,表記ミス,変な文章 ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

Coverage Guided Systematic Concurrency Testing Chao Wang, Mahmoud Said, Aarti Gupta Riding the Design Wave I セッション 担当:肥後芳樹(大阪大学) ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

ICSE'11勉強会 Riding the Design Wave I セッション 背景 メモリ共有型マルチスレッドプログラムのデバッグは困難を極める 全てのインターリーブ(スレッド間のやり取り)の組み合わせを網羅的にテストするのは無理 既存手法もスケーラビリティが高くない ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

ICSE'11勉強会 Riding the Design Wave I セッション 貢献 (既存手法に比べて)スケーラビリティの高い手法を提案 ちゃんとしたツールを作っている(ような印象) ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

ICSE'11勉強会 Riding the Design Wave I セッション 手法概要 STEP1:正しい結果を得ることが分かっているテストケースを実行し,その動的な情報(共有メモリにアクセスする命令の順番等)を収集 STEP2:命令の順番に当てはまらないテストケースを生成 正しい結果を得ることが出来れば,生成したテストケース中の命令の順番も,次回以降のテストケース生成に用いる 抽象化を行いスレッド数が多くても実行時間が極端に増えないようにしている ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2

ICSE'11勉強会 Riding the Design Wave I セッション 評価 既存手法DPOR,PCBとの比較 実行時間 見つけるべきバグを見つけれるか 結果 提案手法は最も高速 既存手法はスレッド数が多くなると指数的に時間がかかるが,提案手法の時間増加は穏やか 既存手法は見つけたが提案手法が見つけれなかったバグはない ICSE'11勉強会 Riding the Design Wave I セッション 2019/12/2