マルチスレッドアーキテクチャにおける スレッドライブラリの実装と評価
|
|
|
- きゅうた やすこ
- 7 years ago
- Views:
Transcription
1 修士学位論文発表 マルチスレッドアーキテクチャにおける システムソフトウェアの研究 A study on Systems Software for Multithreaded Architecture /12 東京農工大学大学院工学研究科情報コミュニケーション工学専攻並木研究室 笹田耕一 1
2 背景 マルチスレッドアーキテクチャプロセッサ 1 チップ上で複数の命令流 ( 実スレッド ) を並列実行 ILP の追求から TLP の活用へ いくつかの製品 Intel 社が製品化 (Xeon / Pentium4 プロセッサ ) IBM Power4/Power5 2
3 問題点 従来の SMP プロセッサ用システムでは不十分 例 :Xeon Processor + Linux or Windows 実スレッド制御は OS のみ ( システムコールが必要 ) ワーキングセットの増大 ( 複数プロセス同時実行 ) 計算資源の共有と競合についての考慮無し 演算器 / キャッシュメモリなど 従来の OS からの事象通知機構 (Scheduler Activations[Anderson 92] など ) は非効率 3
4 目標とするシステム OChiMuS Project 現状 OS とライブラリ アプリケーションソフトウェア インタープリタ MULiTh( 笹田 ) スレッドライブラリ 言語処理系並コンパイラ Future( 並木研 : 佐藤 ) オペレーティングシステム マルチスレッドアーキテクチャ中條研プロセッサ OChiMuS PE 中條研究室木研究室4
5 CPU OS ライブラリの全体像 ユーザレベル ( 仮想アドレス空間 ) Pthread 関数 アプリケーション スレッドスレッドスレッドスレッドスレッドスレッドスレッドスレッド スレッド制御 スケジューリング 本研究 スレッドライブラリ MULiTh Kernel Notification AT AT AT AT OChiMuS PE Processor 実スレッド制御命令 OS Future プロセス 5
6 OChiMuS PE(processor) SMT プロセッサ 複数の実スレッドを並列実行可能 MIPS 命令セット LTNによる実スレッドの抽象化 全ての実スレッドは同一アドレス空間 OChiMuS: PE: On Chip Multi SMT Processor Processor Element 河原章二, 佐藤未来子, 並木美太郎, 中條拓伯 : システムソフトウェアとの協調を目指すオンチップマルチスレッドアーキテクチャの構想, コンピュータシステムシンポジウム, Vol.~2002, No.~18, pp. 1-8 (2002). 6
7 OChiMuS PEの実スレッド 各実スレッドのハードウェアリソース プログラムカウンタ 汎用レジスタなど LTN(Logical Thread Number) レジスタ 実スレッド制御命令 スレッド制御命令はユーザ命令 実スレッド割り当て命令でLTNを設定 以降 LTNで制御対象の実スレッドを指定 実スレッドの状態 停止状態 一時停止状態 通常状態 7
8 システムソフトウェア OS Future プロセス管理 System Software Level Hardware Level 複数ある実スレッドコンテキストの退避 復帰 実スレッド管理はスレッドライブラリが担当 Process (A) 4Architecture Thread Contexts TC TC TC TC Save Process Management OChiMuS PE processor PC PC PC PC Process (B) 4Architecture- Thread Contexts TC TC TC TC Restore 4 Architecture- Threads 8
9 システムソフトウェア スレッドライブラリ MULiTh SMT プロセッサ実スレッドにスレッド割り当て 複数の実スレッド上でスレッドを並列実行 ユーザレベルで実スレッド制御命令を利用した軽量なスレッド制御 排他制御 同期 OS との連携 (Kernel Notification) OS Future からの事象通知 標準的な POSIX Thread 仕様 MULiTh: Userlevel Thread Library for Multithreaded architecture 9
10 MULiThにおけるスレッドの管理 スレッド管理ブロック (ThMB) 各スレッドごとの情報を保持 コンテキスト 属性 スレッド識別子 ThMBの先頭アドレス LTN として使用 実行中スレッドはプロセッサが把握 MULiTh (User Level) ThMB ThMB ThMB ThMB ThMB ThMB ThMB ThMB 実スレッドとスレッドを関連付け LTN AT LTN AT LTN AT LTN AT OChiMuS PE Processor 10
11 スレッドの制御 ( 生成 同期 ) スレッド生成は実スレッド生成命令を利用 並列実行する実スレッドを作成 スレッドの仮想化コストを削減し高速化 空き状態の実スレッドがなければ待ちスレッドに 排他制御 同期は実スレッドを一時停止 OChiMuS PE のPBLK/PUBLK 命令を利用 スピンロック スレッド切り替えが不要 メモリアクセスを削減し性能向上 11
12 スレッド生成 Thread Creation using processor instructions Allocate AT Set initial value Unblock AT1 PALLC FWD PUBLK Thread A Success! AT2 Thread B Start Time (1) (2) (3) (1) 空き実スレッドがあるか? (2) スレッド開始時の初期値設定 レジスタ転送命令を利用 12 (3) スレッド開始
13 細粒度スレッド生成サポート 空き実スレッド無し Creator に通知 並列度向上ができないときの処理速度向上 ThMB 確保処理は同期が必要 ( 重い処理 ) ThMB 領域をキャッシュして後で利用 Cache ThMB Allocate ThMB Recycle ThMB Recycle ThMB AT1 T1 T2 AT2 PALLC T3 Fail Thread Creation PALLC Fail T4 Fail Thread Creation PALLC Fail T5 Finish T2 Success Thread Creation Start T5 Success Time 13
14 Kernel Notification(KN) OS からライブラリへの事象通知の必要性 I/O ブロック ブロッキングの解除 シグナルなど 複数回のコンテキストコピーなどがオーバーヘッド Kernel Notification 機構による事象通知 1カーネル遷移時 コンテキストをThMB に退避 ThMB のアドレスは実スレッド LTN にあるため 2 ユーザレベルへの復帰時 ハンドラを起動 14
15 Kernel Notification による事象通知 2 1 OS からの効率的な事象通知を実現 コンテキストのコピー回数が少ない この機構でスレッドのプリエンプションを実現可 15
16 スレッドライブラリの実装と評価 実装 ライブラリはC 言語 10ファイル / 2500 行 MIPS アセンブラでの記述が約 40 個所 プロセッサ実スレッド制御命令 コンテキスト復帰 退避 評価はシミュレータ上で実施 MUTHASI(MultiTHread Architecture Simulater) OS は評価に利用する部分のみ実装 16
17 評価 : スレッド制御の性能 単位 : サイクル数 本研究 従来 速度比 135* 1.6 倍 スレッド生成 84 10K** 120 倍 1.4K*** 16.7 倍 排他制御 倍 OSからの通知 倍 (*) 空き実スレッドがなかった場合 (**) Linux Thread (***)NTPL(Linux2.6 スレッドライブラリ ) 17
18 評価 : スレッド生成の性能 ( 細粒度スレッド生成の評価 ) 単位 : 命令数 空き実スレッドがない場合のスレッド生成コスト比較 待ちスレッドに登録 102 待ちスレッドに登録せず 62 Creator に失敗を通知 +ThMB をキャッシュ 26 : 空き実スレッドがない場合のスレッド生成コストの大幅な削減 : スレッドスケジューリングの責任をCreatorに 大量細粒度スレッド生成プログラムでは問題無し 18
19 評価 : アプリケーションの性能 並列化した画像縮小プログラム 最長スレッド実行時間 ( サイクル数 ) 1.5 演算器数 2, 1 演算器数 4, 実スレッド数 19
20 本研究の成果 マルチスレッドアーキテクチャにおけるシステムソフトウェアを考察 スレッドライブラリ MULiTh の開発 並列実行による性能向上を確認 軽量なスレッド制御による性能向上 細粒度スレッド生成サポート 効率的なOSからの事象通知 Pthread 仕様スレッドライブラリ 20
21 今後の課題 OS との連携を行うソフトウェアでの評価 システムコールや割り込みなど 適切なスケジューラの検討 マルチスレッドアーキテクチャの特性を利用したスレッドスケジューラが必要 マルチスレッドアーキテクチャに適した言語処理系の検討 並列化 / 最適化コンパイラ インタプリタ 21
22 対外発表 マルチスレッドアーキテクチャにおけるスレッドライブラリの実現と評価 情報処理学会論文誌 ACS(2003. Aug) SACSIS(2003. May) 優秀学生論文賞受賞 (Symposium on Advanced Computing Systems and Infrastructures 旧称 JSPP) PDPTA(2003. Jun) The 2003 International Conference on Parallel and Distributed Processing Techniques and Applications Ruby による JavaVM の実装 情報処理学会第 65 回全国大会 (2003 Mar) Rava で見る Java 仮想マシンのしくみ JAVA PRESS Vol.31 22
23 以上 23
24 問題点 : ユーザレベルライブラリ カーネルの事象をユーザライブラリへ伝達 I/O ブロック ブロッキングの解除 シグナルなど Scheduler Activations( 92): カーネルが事象通知のためにユーザスレッドスケジューラを起動 猪原ら ( 95): スレッド切り替え動作を最適化 複数回のコンテキストコピーなどのオーバーヘッド 排他制御 同期機構 SMT などではスピンロックが高負荷 ライブラリインターフェース 使いやすさ 過去の資産 24
25 評価 : 細粒度スレッド生成の性能 スレッド生成コスト比較 ( サイクル数 ) 通常 102 失敗を知らせ 62 ThMB をキャッシュ 26 25
26 評価 : 細粒度スレッド生成の性能 N 番目のフィボナッチ数を求めるプログラムの速度向上率 実行方法 速度向上率 逐次実行 1.00 通常の MULiTh 0.25 細粒度スレッド生成を利用
27 フィボナッチ数を求めるプログラム void *fib_th(void *p){ return (void *)fib((int)p);} int fib(int n){ if(n <= 2) return 1; else{ pthread_t t1; int a1 = 0, a2 = 0, err; err = th_create_fg(&t1, 0, fib_th, (void*)n-1); if(err == E_AGAIN) a1 = fib(n-1); a2 = fib(n-2); if(a1 == 0) pthread_join(t1,(void*)&a1); return a1+a2;}} 27
28 従来型事象通知 回のコンテキストコピー + Kernel Thread 生成 猪原茂和, 益田隆司 : 情報処理学会論文誌, Vol.~36, No.~10, pp (1995). ユーザとカーネルの非同期的な協調機構によるスレッド切り替え動作の最適化 28
29 考察 スレッド制御が軽量 ユーザレベルでのスレッド操作 プロセッサ制御命令を利用 実スレッドブロック状態を利用 効率的な OS からの事象通知 余計なコンテキストのコピーが無い 並列実行により性能向上 実スレッドにスレッドを割り当て並列実行 CPUリソースの利用率が向上 既存の Pthread アプリケーションが実行可能 29
30 実装した主なPthread 関数 pthread_create スレッド生成 pthread_exit スレッド終了 pthread_join スレッド合流 ( 同期 ) pthread_mutex_lock / unlock 排他制御 pthread_cond_wait / signal 同期機構 30
31 評価環境詳細 Simple ALU : 2 個 一回の演算は 1 サイクル Complex ALU : 1 個 掛け算 12サイクル 割り算 32サイクル キャッシュ TLB はなし 31
32 スレッドの作成 プロセッサの実スレッド制御命令を利用 並列実行するスレッドを生成 メモリアクセスなしでスレッド制御可 命令が失敗したとき 従来のスレッド制御 軽量なスレッド生成 32
33 スレッドの作成 プロセッサのスレッド制御命令 (PALLC) を発行 成功 : PCS_HALT 状態の実スレッドが存在初期値を設定し 即座に並列実行 制御命令 : 空き状態の実スレッドなし従来どおり スレッドを待ち状態へ遷移 スレッド生成初期値設定実行開始 AT1 PALLC FWD PUBLK Thread A AT2 成功 Thread B Start 33 Time
34 スレッドの作成 pallc dr,sr0,sr1 // 実スレッド生成命令 dr : 返り値を格納するレジスタ - 成功 - 失敗 停止状態の実スレッドが無い sr0: スレッド開始位置 sr1: 設定したい LTN 34
35 従来提案方式 スレッドの排他制御 同期 スピンロック AT1 AT2 AT1 AT2 T1 T1 Lock T2(Lock owner) スレッド切り替え Lock T2(Lock owner) Spin Lock Thread Scheduling AT2 の実行を阻害 Unlock and set Lock variable T3 AT1 AT2 必要なのは 2 命令のみ PBLK T1 Lock T1 PCS_BLOCK PCS_NORMAL T2(Lock owner) PUBLK T1 Unlock and PUBLK Time 35
36 スレッドの排他制御 同期 問題点 実スレッドの一時停止 並列度低下 解決案 ディスパッチ可能なスレッドがある場合スレッド切り替え アダプティブロックの検討 あるスレッドが実行中かどうかはプロセッササポートにより知ることができる ( あるLTNを持つ実スレッドが存在するか を聞く ) 36
37 スレッドの排他制御 同期 pblk dr,sr // 実スレッド一時停止命令 publk dr,sr // 一時停止解除命令 dr : 返り値を格納するレジスタ - 成功 - 失敗 そんな LTN の実スレッドは無い or 例外状態なので実行不可 sr : 操作対象 LTN 37
38 OChiMuS PE 実スレッド状態遷移 PCS_HALT 停止状態 PALLC 開始番地 LTN を指定 PDALL PCS_NORMAL 実行状態 PUBLK PBLK PCS_BLOCK 一時停止状態 PALLCで実スレッドに LTN を設定 PALLC 以外の命令は LTN によってターゲットを指定 実スレッド間でのレジスタ転送命令 FWD がある 38
39 OChiMuS PEスレッドの状態 停止状態 LTN 割り当て無し 割り当てを待っている状態 一時停止状態 LTN 割り当てあり 解除すれば通常状態へ戻り実行を再開 プロセッサリソースを消費しない 通常状態 LTN 割り当てあり プログラムを実行 39
40 評価 : スレッドの削除 同期 本研究従来速度比 スレッド削除 倍 同期 倍 従来の 1 実スレッド CPU では 必ずスレッド切り替えが必要となる本研究では 必ずしもそれが必要ではない 40
41 本研究の目標 ユーザレベルでスレッド 実スレッドを管理 実スレッドに割り当て スレッドを並列実行 ユーザレベルで実行するので動作が高速 スレッド制御にシステムコール不要 プロセッサ実スレッド制御命令を利用 OS からライブラリへの効率的な情報伝達 Scheduler Activations より効率的に スピンロックをしない排他制御 同期 一般的なスレッドライブラリインターフェース 41
42 KN: 競合回避 実スレッドが LTN 0 である場合 カーネルは従来どおりコンテキストを復帰 退避する 42
43 OS Future Future でのプロセス アドレス空間管理 入出力管理など 実スレッド管理はMULiThで行う Future でのプロセス切り替え 複数の実スレッドの状態を退避 復帰を保証 Kernel Notification 復帰は並列に実行 43
44 実スレッドの管理 (1) 従来 :OS がカーネルスレッドとして管理 利点 :SMP 用カーネルが利用可能 短所 : ワーキングセット増大スレッド制御にシステムコールが必要 Process A Kernel Thread Process B Kernel Thread PC PC 44
45 実スレッドの管理 (2) 実スレッドをユーザレベルで管理 ユーザレベルで軽量なスレッド制御が可能 専用システムソフトウェアが必要 Process A Adress Space(User Level) Thread Thread Thread Thread Manager PC PC Processor 45
46 SMTアーキテクチャ SMT Processor PC Registers PC Registers SimpleALU SimpleALU Branch Complex ALU Load Store 46
47 従来のプロセッサ OS ライブラリ User Application with Thread Library Operating System ユーザライブラリはプロセッサを直接操作しない Processor(s) 47
48 従来のプロセッサ OS ライブラリ Process B Process A T T T T T T T T UL KL KT KT KT KT T: ユーザスレッド KT: カーネルスレッド AT: 実スレッド Processor AT AT 48
49 49
04-process_thread_2.ppt
オペレーティングシステム ~ 保護とシステムコール ~ 山田浩史 hiroshiy @ cc.tuat.ac.jp 2015/05/08 復習 : OS の目的 ( 今回の話題 ) 裸のコンピュータを抽象化 (abstraction) し より使いやすく安全なコンピュータとして見せること OS はハードウェアを制御し アプリケーションの効率的な動作や容易な開発を支援する OS がないと 1 つしかプログラムが動作しない
POSIXプログラミング Pthreads編
POSIXプログラミング Pthreads 編 デジタルビジョンソリューション 中山一弘佐藤史明 参考図書 Pthreads プログラミング, Bradford Nichols, Dick Buttlar, Jacqeline Proulx Farrell, ISBN4-900900-66-4 Pthreads POSIX スレッド標準を実装したライブラリを Pthreads と呼ぶ C 言語のデータ型
スライド 1
1 システムコールフックを使用した攻撃検出 株式会社フォティーンフォティー技術研究所 http://www.fourteenforty.jp 取締役技術担当金居良治 2 お題目 System Call について System Call Protection System Call Hook 考察 3 System Call とは? ユーザアプリケーションからカーネルのサービスルーチンを呼び出す Disk
計算機アーキテクチャ
計算機アーキテクチャ 第 11 回命令実行の流れ 2014 年 6 月 20 日 電気情報工学科 田島孝治 1 授業スケジュール ( 前期 ) 2 回日付タイトル 1 4/7 コンピュータ技術の歴史と コンピュータアーキテクチャ 2 4/14 ノイマン型コンピュータ 3 4/21 コンピュータのハードウェア 4 4/28 数と文字の表現 5 5/12 固定小数点数と浮動小数点表現 6 5/19 計算アーキテクチャ
スレッドとプロセス
スレッドとプロセス 本題 : スケジューリング 田浦健次朗 スレッド プロセスの目的 CPU を仮想化 物理的な CPU 数は固定, 少数 ラップトップ, スマホ : 1, 2, 4, 8 くらい サーバ : 数十 ポイント : にもかかわらず数十, 数百のプログラムを立ち上げることができる 個々のプログラムを書く人が明示的な 譲り合い をする必要はない スレッドとは? 制御の流れ (thread
PowerPoint プレゼンテーション
コンピュータアーキテクチャ 第 13 週 割込みアーキテクチャ 2013 年 12 月 18 日 金岡晃 授業計画 第 1 週 (9/25) 第 2 週 (10/2) 第 3 週 (10/9) 第 4 週 (10/16) 第 5 週 (10/23) 第 6 週 (10/30) 第 7 週 (11/6) 授業概要 2 進数表現 論理回路の復習 2 進演算 ( 数の表現 ) 演算アーキテクチャ ( 演算アルゴリズムと回路
Slides: TimeGraph: GPU Scheduling for Real-Time Multi-Tasking Environments
計算機アーキテクチャ第 11 回 マルチプロセッサ 本資料は授業用です 無断で転載することを禁じます 名古屋大学 大学院情報科学研究科 准教授加藤真平 デスクトップ ジョブレベル並列性 スーパーコンピュータ 並列処理プログラム プログラムの並列化 for (i = 0; i < N; i++) { x[i] = a[i] + b[i]; } プログラムの並列化 x[0] = a[0] + b[0];
160311_icm2015-muramatsu-v2.pptx
Linux におけるパケット処理機構の 性能評価に基づいた NFV 導 の 検討 村松真, 川島 太, 中 裕貴, 林經正, 松尾啓志 名古屋 業 学 学院 株式会社ボスコ テクノロジーズ ICM 研究会 2016/03/11 研究 的 VM 仮想 NIC バックエンド機構 仮想化環境 仮想スイッチ パケット処理機構 物理環境 性能要因を考察 汎 IA サーバ NFV 環境に適したサーバ構成を検討
Microsoft PowerPoint - OS07.pptx
この資料は 情報工学レクチャーシリーズ松尾啓志著 ( 森北出版株式会社 ) を用いて授業を行うために 名古屋工業大学松尾啓志 津邑公暁が作成しました 主記憶管理 主記憶管理基礎 パワーポイント 27 で最終版として保存しているため 変更はできませんが 授業でお使いなる場合は松尾 ([email protected]) まで連絡いただければ 編集可能なバージョンをお渡しする事も可能です 復習 OS
Linuxのベンチマーク評価 とボトルネック解析
LKST による Linux カーネルの評価と ボトルネック解析 ( 株 ) 日立製作所システム開発研究所 平松雅巳, 杉田由美子 Japan OSS Promotion Forum OSC2005 1 目次 カーネル性能評価手法 LKST とは LKST Log Tools とは 性能解析ツール 可視化ツール 使い方 IO ボトルネック解析例 Iozone によるボトルネック例 リクエストキュー長解析
Microsoft PowerPoint - sales2.ppt
最適化とは何? CPU アーキテクチャに沿った形で最適な性能を抽出できるようにする技法 ( 性能向上技法 ) コンパイラによるプログラム最適化 コンパイラメーカの技量 経験量に依存 最適化ツールによるプログラム最適化 KAP (Kuck & Associates, Inc. ) 人によるプログラム最適化 アーキテクチャのボトルネックを知ること 3 使用コンパイラによる性能の違い MFLOPS 90
TFTP serverの実装
TFTP サーバーの実装 デジタルビジョンソリューション 佐藤史明 1 1 プレゼンのテーマ組み込みソフトのファイル転送を容易に 2 3 4 5 基礎知識 TFTP とは 実践 1 実際に作ってみよう 実践 2 組み込みソフトでの実装案 最後におさらい 2 プレゼンのテーマ 組み込みソフトのファイル転送を容易に テーマ選択の理由 現在従事しているプロジェクトで お客様からファームウェアなどのファイル転送を独自方式からTFTPに変更したいと要望があった
アジェンダ Renesas Synergy TM プラットフォーム構成 ThreadX とは ThreadX の状態遷移 ThreadX とμITRONの機能比較 まとめ ページ 2
Renesas Synergy TM プラットフォーム ThreadX リアルタイム OS 紹介 アジェンダ Renesas Synergy TM プラットフォーム構成 ThreadX とは ThreadX の状態遷移 ThreadX とμITRONの機能比較 まとめ ページ 2 Synergy プラットフォーム構成中核を担う ThreadX リアルタイム OS ご紹介部分 ページ 3 ThreadX
スライド 1
マルチコア メニーコア向けの OS 2010 年 3 月 7 日 NGCOM 第 7 回ワークショップ東京農工大学佐藤未来子 Mail: [email protected] URL: www.namikilab.tuat.ac.jp/~mikiko/ 目次 背景 研究課題 目標 方針 システムの全体構成 研究成果 (1) 軽量なマルチスレッドプログラムの実行基盤 (2)OS による
Insert your Title here
マルチコア マルチスレッド環境での静的解析ツールの応用 米 GrammaTech 社 CodeSonar によるスレッド間のデータ競合の検出 2013 GrammaTech, Inc. All rights reserved Agenda 並列実行に起因する不具合の摘出 なぜ 並列実行されるプログラミングは難しいのか データの競合 デッドロック どのようにして静的解析ツールで並列実行の問題を見つけるのか?
RH850の割り込み/例外実現方法 CC-RHアプリケーションガイド
RH850の割り込み / 例外実現方法 CC-RH アプリケーションガイド R20UT3546JJ0101 2018.10.12 ソフトウェア開発統括部 ソフトウェア技術部ルネサスエレクトロニクス株式会社 アジェンダ 概要ページ 03 割り込み / 例外発生時に実行する関数の定義ページ 10 直接ベクタ方式のベクタの定義ページ 17 テーブル参照方式のベクタの定義ページ 25 その他 割り込み制御ページ
White Paper 高速部分画像検索キット(FPGA アクセラレーション)
White Paper 高速部分画像検索キット (FPGA アクセラレーション ) White Paper 高速部分画像検索キット (FPGA アクセラレーション ) Page 1 of 7 http://www.fujitsu.com/primergy Content はじめに 3 部分画像検索とは 4 高速部分画像検索システム 5 高速部分画像検索の適用時の改善効果 6 検索結果 ( 一例 )
今週の進捗
Virtualize APIC access による APIC フック手法 立命館大学富田崇詠, 明田修平, 瀧本栄二, 毛利公一 2016/11/30 1 はじめに (1/2) マルウェアの脅威が問題となっている 2015年に4 億 3000 万以上の検体が新たに発見されている マルウェア対策にはマルウェアが持つ機能 挙動の正確な解析が重要 マルウェア動的解析システム : Alkanet 仮想計算機モニタのBitVisorの拡張機能として動作
計算機のリソースとは 1.CPU 2. 主記憶 3. 補助記憶装置 の抽象化
システムソフトウェア講義の概要 1. 計算機システムの復習 : 中央演算処理装置 (CPU), プログラムの実行, 主記憶装置, 補助記憶装置 2. オペレーティングシステムとは :CPU, 主記憶装置, 補助記憶装置などの抽象化 3. CPUの抽象化 1: スレッドとプロセス, 割り込み 4. CPU の抽象化 2:CPU の割り当てアルゴリズム 5. 主記憶の抽象化 : アドレス空間と仮想記憶
TopSE並行システム はじめに
はじめに 平成 23 年 9 月 1 日 トップエスイープロジェクト 磯部祥尚 ( 産業技術総合研究所 ) 2 本講座の背景と目標 背景 : マルチコア CPU やクラウドコンピューティング等 並列 / 分散処理環境が身近なものになっている 複数のプロセス ( プログラム ) を同時に実行可能 通信等により複数のプロセスが協調可能 並行システムの構築 並行システム 通信 Proc2 プロセス ( プログラム
Microsoft PowerPoint ppt
仮想マシン () 仮想マシン 復習 仮想マシンの概要 hsm 仮想マシン プログラム言語の処理系 ( コンパイラ ) 原始プログラム (Source program) コンパイラ (Compiler) 目的プログラム (Object code) 原始言語 (Source language) 解析 合成 目的言語 (Object Language) コンパイルする / 翻訳する (to compile
ERDAS IMAGINE における処理速度の向上 株式会社ベストシステムズ PASCO CORPORATION 2015
ERDAS IMAGINE における処理速度の向上 株式会社ベストシステムズ 本セッションの目的 本セッションでは ERDAS IMAGINEにおける処理速度向上を目的として機器 (SSD 等 ) 及び並列処理の比較 検討を行った 1.SSD 及び RAMDISK を利用した処理速度の検証 2.Condorによる複数 PCを用いた並列処理 2.1 分散並列処理による高速化試験 (ERDAS IMAGINEのCondorを使用した試験
POSIXスレッド
POSIX スレッド (3) システムプログラミング 2011 年 11 月 7 日 建部修見 同期の戦略 単一大域ロック スレッドセーフ関数 構造的コードロッキング 構造的データロッキング ロックとモジュラリティ デッドロック 単一大域ロック (single global lock) 単一のアプリケーションワイドの mutex スレッドが実行するときに獲得, ブロックする前にリリース どのタイミングでも一つのスレッドが共有データをアクセスする
Microsoft PowerPoint - kougi7.ppt
到達目標 スーパバイザモード, 特権命令, 割り込み CPU の割り込みメカニズム 割り込みの種類ごとに, 所定の例外処理が呼び出される スーパーバイザモードに, 自動的に切り替わる 割り込み終了後に 元のモード に戻る ハードウエア割り込みについて 割り込み禁止 割り込み発生時の CPU の挙動 現在の処理を中断 例外処理用のプログラム ( ハンドラともいう ) が起動される プログラム実行の流れ
修士論文
AVX を用いた倍々精度疎行列ベクトル積の高速化 菱沼利彰 1 藤井昭宏 1 田中輝雄 1 長谷川秀彦 2 1 工学院大学 2 筑波大学 1 目次 1. 研究背景 目的 2. 実装, 実験環境 3. 実験 - 倍々精度ベクトル演算 - 4. 実験 - 倍々精度疎行列ベクトル積 - 5. まとめ 多倍長精度計算フォーラム 2 目次 1. 研究背景 目的 2. 実装, 実験環境 3. 実験 - 倍々精度ベクトル演算
Pervasive PSQL v11 のベンチマーク パフォーマンスの結果
Pervasive PSQL v11 のベンチマークパフォーマンスの結果 Pervasive PSQL ホワイトペーパー 2010 年 9 月 目次 実施の概要... 3 新しいハードウェアアーキテクチャがアプリケーションに及ぼす影響... 3 Pervasive PSQL v11 の設計... 4 構成... 5 メモリキャッシュ... 6 ベンチマークテスト... 6 アトミックテスト... 7
IBM Internet Security Systems NTFS ファイルシステム必須 一覧の 以後にリリースされた Service Pack (Release 2 等は除く ) は特に記載の無い限りサポートいたします メモリ 最小要件 512MB 推奨要件 1GB 最小要件 9GB 推奨要件
SiteProtector 2.0 Service Pack 9.0 システム要件 2012 年 2 月 13 日 SiteProtector 2.0 Service Pack 9.0 システム要件... 1 Service Pack 9.0 - SiteProtector システム要件... 1 Service Pack 9.0 仮想環境... 1 Deployment Manager のインストール要件...
PowerPoint プレゼンテーション
TCG-JRF セミナー講演資料 PCでの活用事例 : PC 実装に必要な対応項目 ソリューション例 2010 年 11 月 4 日 ( 株 ) 富士通研究所ヒューマンセントリックシステム研究所 アジェンダ Opal HDD 採用のモチベーション Opal HDDの特徴 PC 搭載 Opal HDDの初期設定 Shadow Area 開発における注意点 Opal HDDの具体的なアクセス方法 Opal
Microsoft PowerPoint ppt [互換モード]
計算機アーキテクチャ特論 2013 年 10 28 枝廣 前半 ( 並列アーキテクチャの基本 枝廣 ) 10/7, 10/21, 10/28, 11/11, 11/18, (12/2)( 程は予定 ) 内容 ( 変更の可能性あり ) 序論 ( マルチコア= 並列アーキテクチャ概論 ) キャッシュ コヒーレンシ メモリ コンシステンシ 並列アーキテクチャモデル OSモデル 並列プログラミングモデル 語
コンピュータ工学Ⅰ
コンピュータ工学 Ⅰ 中央処理装置 Rev. 2019.01.16 コンピュータの基本構成と CPU 内容 ➊ CPUの構成要素 ➋ 命令サイクル ➌ アセンブリ言語 ➍ アドレッシング方式 ➎ CPUの高速化 ➏ CPUの性能評価 コンピュータの構成装置 中央処理装置 (CPU) 主記憶装置から命令を読み込み 実行を行う 主記憶装置 CPU で実行するプログラム ( 命令の集合 ) やデータを記憶する
Microsoft PowerPoint ppt [互換モード]
計算機アーキテクチャ特論 A 2017 年 11 6 枝廣 計算機アーキテクチャ特論 A 並列アーキテクチャの基本 ( 枝廣 ) 10/2, 10/16, 10/23, 10/30, 11/6, 11/13, (11/20( 予備 )) 内容 ( 変更の可能性あり ) 序論 ( マルチコア= 並列アーキテクチャ概論 ) キャッシュ コヒーレンシ メモリ コンシステンシ 並列プログラミングモデル 語
PowerPoint プレゼンテーション
vsmp Foundation スケーラブル SMP システム スケーラブル SMP システム 製品コンセプト 2U サイズの 8 ソケット SMP サーバ コンパクトな筐体に多くのコアとメモリを実装し SMP システムとして利用可能 スイッチなし構成でのシステム構築によりラックスペースを無駄にしない構成 将来的な拡張性を保証 8 ソケット以上への拡張も可能 2 システム構成例 ベースシステム 2U
自己紹介 湯浅陽一 1999 年より Linux kernel 開発に参加 MIPS アーキテクチャのいくつかの CPU へ Linux kernel を移植
Kprobes による Embedded Linux kernel 動的解析手法 Yoichi Yuasa OSAKA NDS Embedded Linux Cross Forum #3 自己紹介 湯浅陽一 1999 年より Linux kernel 開発に参加 MIPS アーキテクチャのいくつかの CPU へ Linux kernel を移植 Kprobes とは Linux kernel デバッグ機能の一つ
RL78開発環境移行ガイド R8C/M16C, H8S/H8SXからRL78への移行(統合開発環境編)(High-performance Embedded Workshop→CS+)
RL78 開発環境移行ガイド R8C/M16C, H8S/H8SXからRL78への移行 ( 統合開発環境編 ) (High-performance Embedded Workshop CS+) 2017/4/7 R20UT2087JJ0103 ソフトウェア事業部ソフトウエア技術部ルネサスシステムデザイン株式会社 はじめに 本資料は 統合開発環境 High-performance Embedded Workshop
熊本大学学術リポジトリ Kumamoto University Repositor Title GPGPU による高速演算について Author(s) 榎本, 昌一 Citation Issue date Type URL Presentation
熊本大学学術リポジトリ Kumamoto University Repositor Title GPGPU による高速演算について Author(s) 榎本, 昌一 Citation Issue date 2011-03-17 Type URL Presentation http://hdl.handle.net/2298/23539 Right GPGPU による高速演算について 榎本昌一 東京大学大学院工学系研究科システム創成学専攻
Monthly Research / セキュアハードウェアの登場とその分析
Monthly Research セキュアハードウェアの登場とその分析 株式会社フォティーンフォティ技術研究所 http://www.fourteenforty.jp Ver2.00.02 1 セキュアハードウェア ハードウェアレベルでのセキュリティ拡張や それを実装したハードウェアが提案されている 通常のマイクロプロセッサを拡張することで柔軟性を確保する試みもある 今回は主に ARM TrustZone
<4D F736F F F696E74202D C190DD B A CB48D65208E DC58F49205B8CDD8AB B83685D>
今さら聞けない高位合成 ~ 一から学ぶ高位合成 ~ シャープ株式会社電子デバイス事業本部副参事山田晃久 1 ハードウェア設計と抽象度 要求仕様 動作仕様設計制約 ( コスト 性能 消費電力 ) システムの実現方式を決定システム設計 ( 動作レベル設計 ) ( アーキテクチャ アルゴリズム ) システム分割 (HW/SW) 機能ブロック RTL 記述 機能設計 (RTL 設計 ) 論理合成 ハードウェアの処理を設計
Application Note Application Note No. ESC-APN Document No.: ESC-APN adviceluna Linux デバッグ手順 (MIPS コア編 ) はじめに adviceluna Linux デバッグ手順 ( 以
No. ESC-APN-026-02 Document No.: ESC-APN-026-02 adviceluna Linux デバッグ手順 (MIPS コア編 ) はじめに adviceluna Linux デバッグ手順 ( 以下 本書 ) は adviceluna にて下記 Linux 環境をデバッグする手順を説明した文書です Application Shared Library Loadable
マルチコア時代の並列プログラミング
マルチコア時代の 並列プログラミング ~ ロックとメモリオーダリング ~ 中村実 [email protected] http://www.nminoru.jp/~nminoru/ まずは自己紹介を 電機メーカー勤務のエンジニア Java VM 特に並列 GC JIT コンパイラの研究 開発 Java 系雑誌にときどき寄稿 最近は IA-64 と戯れる日々 趣味で Web に細々とプログラミングのメモを綴る日々
MMUなしプロセッサ用Linuxの共有ライブラリ機構
MMU なしプロセッサ用 Linux の共有ライブラリ機構 大谷浩司 高岡正 近藤政雄 臼田尚志株式会社アックス はじめに μclinux には 仮想メモリ機構がないので共有ライブラリ機構が使えない でもメモリ消費抑制 ストレージ消費抑制 保守性の向上のためには 欲しい 幾つかの実装があるが CPU ライセンス 機能の制限のためにそのまま利用できない RidgeRun 社 (Cadenux 社 )
スライド 1
RX62N 周辺機能紹介データフラッシュ データ格納用フラッシュメモリ ルネサスエレクトロニクス株式会社ルネサス半導体トレーニングセンター 2013/08/02 Rev. 1.00 00000-A コンテンツ データフラッシュの概要 プログラムサンプル 消去方法 書き込み方法 読み出し方法 FCUのリセット プログラムサンプルのカスタマイズ 2 データフラッシュの概要 3 データフラッシュとは フラッシュメモリ
ジョブ管理ソフトウェア LoadStar Scheduler ご紹介資料 ~ システム運用品質の向上とコスト削減を実現 ~
ジョブ管理ソフトウェア LoadStar Scheduler ご紹介資料 ~ システム運用品質の向上とコスト削減を実現 ~ はじめに LoadStar Scheduler は システム運用管理者による視点でソフトバンクによって自社開発された運用ジョブ管理ソフトウェアで ソフトバンク社内のシステム運用管理において既に 4 年間の実績があり 業務効率化やコスト削減に大きな成果を挙げている製品です 2 LoadStar
Oracle Un お問合せ : Oracle Data Integrator 11g: データ統合設定と管理 期間 ( 標準日数 ):5 コースの概要 Oracle Data Integratorは すべてのデータ統合要件 ( 大量の高パフォーマンス バッチ ローブンの統合プロセスおよ
Oracle Un お問合せ : 0120- Oracle Data Integrator 11g: データ統合設定と管理 期間 ( 標準日数 ):5 コースの概要 Oracle Data Integratorは すべてのデータ統合要件 ( 大量の高パフォーマンス バッチ ローブンの統合プロセスおよびSOA 対応データ サービスへ ) を網羅する総合的なデータ統合プラットフォームです Oracle
