[過去ログ] (情報科学)技術的特異点と科学技術等 2 (ナノテク)©2ch.net (319レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
244
(1): >>243 2018/07/30(月)07:00 ID:wOzVCFyH(28/50) AAS
AA省
245
(1): >>244 2018/07/30(月)07:01 ID:wOzVCFyH(29/50) AAS
BEアイコン:nida.gif
Page 23

簡単な最適化の説明

? 前述のpzcAddサンプルを用いて、PEZY-SC内での簡単な最適化の説明を行う
? ここでは以下のような最適化を行っている
  ? カーネル呼び出しのオーバヘッドの削減
  ? chgthreadを用いたレイテンシーの隠蔽
  ? 同期を用いたキャッシュアクセスの効率化

Page 24

オーバヘッド削減(1/2)
省11
246
(1): >>245 2018/07/30(月)07:03 ID:wOzVCFyH(30/50) AAS
BEアイコン:nida.gif
Page 25

オーバヘッド削減(2/2)

? 以下のようにカーネルコードを修正し、CPUからの呼び出し時のスレッド数を固定にしても、
1回のカーネル呼び出しで全要素の処理を行えることとなる。
? これによってオーバヘッドを減らすことができる。

void pzc_Add(float* a, float* b, float* c, int count)
{
  int tid = get_tid(); // thread ID (0 - 7)
  int pid = get_pid(); // PE ID
省7
247
(1): >>246 2018/07/30(月)07:03 ID:wOzVCFyH(31/50) AAS
BEアイコン:nida.gif
Page 26

寄り道:CPUエミュレート

? このようにカーネルの中でループさせることは別のメリットもある。
? CPUで1スレッドでの動作として、この関数を同じように動作させることができる
→ソースを共有したデバッグに有効

void pzc_Add(float* a, float* b, float* c, int count)
{
  int tid = get_tid(); // thread ID (0 - 7)
  int pid = get_pid(); // PE ID
省12
248
(1): >>247 2018/07/30(月)07:04 ID:wOzVCFyH(32/50) AAS
BEアイコン:nida.gif
Page 27

スレッドの切り替え (1/3)

? 1つのPEに8スレッド存在するが、一度には4スレッドのみが動作する。
  ? 表裏で4スレッドずつ。
? sync/flushなどの同期やchgthreadを使用しないと、表裏が切り替わらない。
249
(1): >>248 2018/07/30(月)07:05 ID:wOzVCFyH(33/50) AAS
AA省
250
(1): >>249 2018/07/30(月)07:06 ID:wOzVCFyH(34/50) AAS
AA省
251
(1): >>250 2018/07/30(月)07:06 ID:wOzVCFyH(35/50) AAS
AA省
252
(1): >>251 2018/07/30(月)07:07 ID:wOzVCFyH(36/50) AAS
AA省
253
(1): >>252 2018/07/30(月)07:08 ID:wOzVCFyH(37/50) AAS
AA省
254
(1): >>253 2018/07/30(月)07:08 ID:wOzVCFyH(38/50) AAS
AA省
255
(1): >>254 2018/07/30(月)07:09 ID:wOzVCFyH(39/50) AAS
BEアイコン:nida.gif
Page 36

プログラミングのパターン

? フロントエンドがclangであり、ほとんどのケースではSCとCPUでのソースコードの共有が容易。
? デバッグ時には細かい単位で切り替えながら不具合を特定することが非常に有効

  CPU処理1 ⇔ SC処理1
      ↓
  CPU処理2 ⇔ SC処理2
      ↓
  CPU処理3 ⇔ SC処理3
省16
256
(1): >>255 2018/07/30(月)07:10 ID:wOzVCFyH(40/50) AAS
AA省
257
(1): >>256 2018/07/30(月)07:10 ID:wOzVCFyH(41/50) AAS
BEアイコン:nida.gif
Page 41

共同開発のパターン2

? そもそもPEZY-SCは利用できそうだろうか?

? まずは簡単に触ってみたい。。。
? PEZY-SCを空冷環境下でご提供
  ? ただし、開発途上のものなので十分な情報やサポートを保証できるものではありません。
  (弊社側で可能な範囲でのご提供となります)

  A社/大学/研究所
    ↑    ↑
省2
258
(1): >>257 2018/07/30(月)07:12 ID:wOzVCFyH(42/50) AAS
AA省
259
(1): >>258 2018/07/30(月)07:13 ID:wOzVCFyH(43/50) AAS
BEアイコン:nida.gif
Page 43

共同開発のパターン3

? そもそもPEZY-SCは利用できそうだろうか?
? 液浸環境下でスパコン構成を試してみたい。 →菖蒲システムの利用公募
外部リンク:accc.riken.jp
こちらも十分な情報やサポートを保証できるものではありません(可能な範囲でのご提供となります)
研究開発用途で開発情報を公開可能ならばお勧め!
個人でも応募可!!

Page 44
省7
260
(1): >>259 2018/07/30(月)07:14 ID:wOzVCFyH(44/50) AAS
AA省
261
(1): >>260 2018/07/30(月)07:14 ID:wOzVCFyH(45/50) AAS
BEアイコン:nida.gif
Page 47

今後の展開

Page 48

今後の展開

? 新プロセッサ PEZY-SC2の開発
  ? 2,048コアの演算PE+MIPSプロセッサ内蔵
  ? TCIインタフェースによる、メモリ帯域の飛躍的拡大
省4
262
(1): >>261 2018/07/30(月)07:15 ID:wOzVCFyH(46/50) AAS
BEアイコン:nida.gif
Page 49

PEZY-SC2の特徴

? CPUがMIPSとなりSC2とメモリ空間を共有する
→従来XeonとSCの間で必要であったメモリ転送が必要なくなる。

メモリ
↑ Xeon
↓ SC SC SC SC
メモリ メモリ メモリ メモリ

  ↓
省8
263
(1): >>262 2018/07/30(月)07:16 ID:wOzVCFyH(47/50) AAS
BEアイコン:nida.gif
Page 51

外部に公開している情報

? 若干のサンプルプログラム
? Doxygenで自動生成されたAPIリファレンス
? 簡単なアーキテクチャ説明資料
? 簡単なプログラミングマニュアル

Page 52

外部に公開している情報
省7
1-
あと 56 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.012s