Skip to content

Commit

Permalink
modify README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
subarutaro committed Aug 1, 2020
1 parent d95f459 commit 853270b
Showing 1 changed file with 9 additions and 3 deletions.
12 changes: 9 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,14 @@
# PIKG
# PIKG (Ver 0.0)
本プロジェクトは,FDPS( https://github.com/FDPS/FDPS )およびその他の粒子系シミュレータの粒子間相互作用カーネル関数の自動ジェネレータである.
粒子間相互作用をDSLで記述し,パラメータを指定すると,任意のアーキテクチャ(Intel CPU, Fujitsu A64FX, NVIDIA GPU, PEZY-SC2, etc.)向けのカーネルを生成する.

# 動作環境
Ruby環境が必要.ruby 2.3.7で動作確認.

# 言葉の定義
## 粒子系シミュレータ
粒子が互いに作用しながら時間発展するような系を扱うシミュレーションプログラム.分子動力学,N体,SPHシミュレーションプログラムなどがこれにあたる.

## カーネル
2粒子間の相互作用を計算する関数.
相互作用を受ける粒子のインデックスを*i*,相互作用を与える粒子のインデックスを*j*とすると,
Expand All @@ -28,7 +34,7 @@ $(PIKG_DIR)/bin/pikg -i (input_file) -o (output_file) [options]
```
output_fileにC++のヘッダーファイルができるので相互作用計算の構造体(デフォルトclass名Kernel)を利用する
生成されたヘッダーファイルを利用してコンパイルする際には./inc/pikg_vetor.hppに宣言されている型が使われているのでインクルードする
詳細についてはdoc/kernel_generator_spec/pdfを参照ください.
詳細についてはdoc/kernel_generator_spec.pdfを参照ください.

現在参照できるサンプルは以下のとおりです.
> ./sample/LennardJones
Expand All @@ -37,7 +43,7 @@ output_fileにC++のヘッダーファイルができるので相互作用計算
それぞれに関しては,各ディレクトリのREADME.mdをご参照ください.

# 目標ターゲット命令セット
# 目標とする最適化可能な命令セット
- AVX2
- AVX-512
- ARM SVE
Expand Down

0 comments on commit 853270b

Please sign in to comment.