Chapter11-4(前半) 6311627 加藤健.

Slides:



Advertisements
Similar presentations
太原研究室 M1 割田臣一.  既に述べたように、イメージフィルタは一般に、 動作しているイメージデータの画面に作用する。 ◦ この例では、 3×3 ウィンドウ上でフィルタを作用させる。 ◦ 処理においては 3 つの新しい値と、先程のピクセルの計 算で用いた 6 つの同じ値を使う。  カラム(
Advertisements

OWL-Sを用いたWebアプリケーションの検査と生成
Signal Masterによる フィルタバンクの実装
情報理工学系研究科 コンピュータ科学専攻 上嶋裕樹
オペレーティングシステムJ/K 2004年10月18日(5時限目)
キャッシュ付PRAM上の 並列クィックソートと 並列マージソート
The Perl Conference Japan ’98 朝日奈アンテナによる コンテンツ情報の取得と利用
計算機システム概論・3回目 本日のトピック:割込みと入出力制御について 割込み制御について 問題点の明確化 割込みとは
Ibaraki Univ. Dept of Electrical & Electronic Eng.
LZ圧縮回路の設計とハード・ソフト 最適分割の検討 電子情報デザイン学科 高性能計算研究室 4回生 中山 和也 2009/2/27.
入 出 力 管 理 オペレーティングシステム 6/26/09.
クラウドにおける ネストした仮想化を用いた 安全な帯域外リモート管理
Capter9 Creating an Embedded Test Bench ( )
計算機システムⅡ 主記憶装置とALU,レジスタの制御
計算機アーキテクチャ特論Chapter.6.6~6.9
POWERSHOW Limited DVR-POS システム 小売業者のための理想的な損失防止DVRシステム.
Chapter 5. Describing a FIR Filter 5.3後半~5.6
報告 (2006/9/6) 高橋 慧.
FPGAを用いたMG3用 インターフェース回路の解説
担当:青木義満 情報工学科 3年生対象 専門科目 システムプログラミング システムプログラミング プロセス間通信(パイプ) 担当:青木義満
第4章 Impulse C の導入 安達ほのか シグナルやストリーム 、メモリーは型だからそのまま訳す.
第1章 計算基盤としてのFPGA 滝本 宗宏.
第7章 データベース管理システム 7.1 データベース管理システムの概要 7.2 データベースの格納方式 7.3 問合せ処理.
第5回 CPUの役割と仕組み3 割り込み、パイプライン、並列処理
割り込み.
画像処理ボード上での 高速テンプレートマッチングの 実装と検証
ネストした仮想化を用いた VMの安全な帯域外リモート管理
プロキシ協調型動画像配信システムの検討 大阪大学 若宮 直紀.
第7回 2006/6/12.
組み込み向けCPU 小型デバイスに搭載されるCPU 特徴 携帯電話,デジタルカメラ,PDA,センサデバイスなど 小型 低消費電力 多機能
Flyingware : バイトコード変換による 安全なエージェントの実行
概要 Boxed Economy Simulation Platform(BESP)とその基本構造 BESPの設計・実装におけるポイント!
型付きアセンブリ言語を用いた安全なカーネル拡張
OpenMPハードウェア動作合成システムの検証(Ⅰ)
高速剰余算アルゴリズムとそのハードウェア実装についての研究
コンピュータを知る 1E16M009-1 梅津たくみ 1E16M017-8 小沢あきら 1E16M035-0 柴田かいと
安全なモバイルエージェント システム Flyingware のための 仮想ディスクの実現
VM専用仮想メモリとの連携による VMマイグレーションの高速化
コンピュータ系実験Ⅲ 「ワンチップマイコンの応用」 第1週目 アセンブリ言語講座
リモートホストの異常を検知するための GPUとの直接通信機構
仮想メモリを用いた VMマイグレーションの高速化
高度情報演習1A “テーマC” 実践 画像処理プログラミング 〜画像認識とCGによる画像生成〜 第二回 演習課題
高度情報演習1C 実践 画像処理プログラミング 第二回 演習課題
巡回冗長検査CRC32の ハード/ソフト最適分割の検討
仮想計算機を用いたサーバ統合に おける高速なリブートリカバリ
第7回 授業計画の修正 中間テストの解説・復習 前回の補足(クロックアルゴリズム・PFF) 仮想記憶方式のまとめ 特別課題について
コンピュータの基本構成について 1E16M001-1 秋田梨紗 1E16M010-2 梅山桃香 1E16M013-3 大津智紗子
通信機構合わせた最適化をおこなう並列化ンパイラ
先進的計算基盤システムシンポジウム SACSIS2007併設企画 マルチコアプログラミングコンテスト 「Cellスピードチャレンジ2007」
先週の復習: CPU が働く仕組み コンピュータの構造 pp 制御装置+演算装置+レジスタ 制御装置がなければ電卓と同様
コンピュータの仕組み 〜ハードウェア〜 1E15M009-3 伊藤佳樹 1E15M035-2 柴田将馬 1E15M061-1 花岡沙紀
コンピュータアーキテクチャ 第 11 回.
コンピュータアーキテクチャ 第 10 回.
Cell/B.E.のSPE Isolationモードを用いた監視システム
Ibaraki Univ. Dept of Electrical & Electronic Eng.
コンピュータアーキテクチャ 第 9 回.
Handel-Cを用いた パックマンの設計
コンピュータアーキテクチャ 第 10 回.
コンピュータアーキテクチャ 第 5 回.
計算機アーキテクチャ1 (計算機構成論(再)) 第二回 命令の種類と形式
コンピュータアーキテクチャ 第 9 回.
コンピュータアーキテクチャ 第 5 回.
コンピュータアーキテクチャ 第 11 回.
強制パススルー機構を用いた VMの安全な帯域外リモート管理
「コンピュータと情報システム」 02章 ハードウェア
IPmigrate:複数ホストに分割されたVMの マイグレーション手法
コンパイラ 2012年10月11日
分散メモリ型並列計算機上での行列演算の並列化
並列処理プロセッサへの 実数演算機構の開発
Ibaraki Univ. Dept of Electrical & Electronic Eng.
Presentation transcript:

Chapter11-4(前半) 6311627 加藤健

4章 システムレベルでの パイプラインの作り方

システムレベルでのパイプラインの作り方 エッジ検出アルゴリズムでの先読み → → バイトバッファ配列へのアクセスが必要 パフォーマンスが低下 パイプラインレベルでの並列処理を行う 先読みでは、 劇的にフィルタの実効スループットが向上

システムレベルでのパイプラインの作り方 イメージフィルタアルゴリズムをサブプロセスへ分割 フィルタの複雑さが軽減 アルゴリズムのパフォーマンスが改善 そこで

システムレベルでのパイプラインの作り方 パイプラインの動作は7章で説明したものと ほぼ同様(今回は高レベル)   ほぼ同様(今回は高レベル) パイプラインはプログラマにより設計される  (コンパイラにより自動的に生成されない) 並行処理を行う際

システムレベルでのパイプラインの作り方 エッジ検出の実装には各ピクセルを処理するために3×3のウインドウが必要 本書のアルゴリズムでは、上流のプロセスが3つのストリームとしてウインドウを生成 バイトバッファとそれに対応する 循環バッファのオーバーヘッドが不要に 実装のおはなし

システムレベルでのパイプラインの作り方 画像データをco_memory_readblockを使用してイメージバッファからロード。その後co_stream_writeを使用して24ビットのピクセルのストリームに変換 ジェネレータによりウインドウの各列を表すストリームを生成する。 4つのプロセスのパイプライン

システムレベルでのパイプラインの作り方 3つのピクセルデータは中央のピクセルの値を計算するために使われる。   この値はco_stream_writeからストリーミングされる 4. co_stream_readを使用して結果のピクセルデータを呼び出し、co_memory_writeblockを使用して新しいイメージバッファに格納

システムレベルでのパイプラインの作り方 4つのプロセスはパイプラインにより並列で動作 リアルタイム動画処理に十分な速さを実現 4つのプロセスはパイプラインにより並列で動作 リアルタイム動画処理に十分な速さを実現 2クロックサイクルの速度で 処理されたピクセルを生成可能

DMAの入力プロセス これまでのアルゴリズムでは入出力画像が 保存されているかを無視していた   保存されているかを無視していた 実際は、外部RAMやハードウェアインターフェイスを介して入出力される Impulse C は大量のデータを移動するための ストリームと、共有メモリのメカニズムを提供している DMA=ダイレクトメモリアクセス(CPUを介さないで直接データ転送)

DMAの入力プロセス これまでの例ではストリームを使用 選択決定の要因はプラットフォーム固有 留意する点は4つ 特定のアプリケーションでは 共有メモリを使用するとパフォーマンスが向上

DMAの入力プロセス 各ストリームの処理に何サイクル必要か プロセッサが転送に関わっているかとCPUとバスの組み合わせに依存 バスがストリーム上でデータを受信する際、ポーリングすると、大幅なオーバーヘッドが発生

DMAの入力プロセス メモリ転送のために何サイクル必要か 1と同様に使用されているメモリとバスのアーキテクチャに依存している サイクル=クロック数

DMAの入力プロセス 3-1. CPUがキャッシュを持っているか 3-2. そのデータはキャッシュに存在するか

DMAの入力プロセス 4. Impulse Cのハードウェアのプロセスと 同じバス上のメモリか   同じバス上のメモリか そうであるなら、CPUへのアクセス競合をおこし、パフォーマンスが低下する

DMAの入力プロセス 4章においてベンチマークの例を用いてこれらの問題について議論した 今回はストリーミングデータを用いるアプローチと共有メモリを用いるアプローチの比較実験のためにNiosⅡが埋め込まれたAlteraのStratix FPGAを使用

DMAの入力プロセス NiosⅡが埋め込まれたAlteraのStratix FPGAはストリームよりもDMA転送を使用したほうが効率的なFPGA 他のプラットフォームにおいてXilinxのMicroBlazeプロセッサとFSLバスを使用するとDMA転送より高速なパフォーマンスになることもある

DMAの入力プロセス DMAを用いた共有メモリとのアクセスはハードウェアが転送中、別の処理を行うと転送がブロックされる欠点がある 画像データを読み込み、データストリームから送信することがパイプラインの第一プロセス データ転送が計算とオーバーラップできるように 共有メモリ操作を処理するためのプロセスを含む必要がある 第一プロセスです。で、このページは終わる

DMAの入力プロセス 図11‐9からわかること to_streamプロセスは co_signal go co_memory imgmem co_stream output_stream の3要素を持つ 11-9を参照しつつ説明

DMAの入力プロセス 2. プロセス実行機能では、それぞれ 2. プロセス実行機能では、それぞれ co_memory_readblock関数は共有メモリからのピクセルデータの読み取り co_stream_write関数は出力ストリームへの書き込みを行う co_signalはCPUと同期し、画像メモリの処理準備ができているかを確認  を行っている。

DMAの入力プロセス 3. 24bitのデータを受け入れるように設計されているため16bitのピクセルデータを受理する 3.  24bitのデータを受け入れるように設計されているため16bitのピクセルデータを受理する 画像データは16bit符合なし整数として格納するが32bitのメモリが使用されている DMAは配列に1つずつ要素を転送することで、倍のバストランザクションを必要とする バストランザクション=バスによるデータ転送において、データ転送に関わる細かい情報を省略してデータ転送動作を記述した物

DMAの入力プロセス これらのプロセスは多くの種類の入力ソースと共に使用できるように変更する、あるいは手製のハードウェアブロックに置き換えることが可能