Skip to content

spack(local setting)

Tomoki Kazawa edited this page Jul 3, 2024 · 40 revisions

概要

Spackとは、Lawrence Livermore National Laboratoryで開発されている高性能計算向けのソフトウェアパッケージ管理システムです。 Spackを使うことにより、同一ソフトウェアをバージョン、設定、コンパイラを様々に変えて複数ビルドし、切り替えて使うことができます。

導入

installまで

>basedir   
>~/work/localspack  
>で
>git clone https://github.com/RIKEN-RCCS/spack.git  
>cd spack で  
>~/worklocals packk/spackに移動 
  > git checkout fugaku-v0.17.0  
>. ./share/spack/setup-env.sh (参考ページはパスが間違っている)  
>spack compilers  
して富士通コンパイラとGCCが表示されることを確認  
## settingまで
~/.spackを作成 (700ならOK)
~/.spack/upstreams.yaml

upstreams:
spack-public-instance:
install_tree: /vol0004/apps/oss/spack/opt/spack
を設定
. ~/work/localspack/spack/share/spack/setup-env.sh
でspack環境へ。 spack repo add /vol0004/apps/oss/spack/var/spack/repos/local > ~/.spackに repos.yamlが追加される

~/.spack/linux フォルダを作成 cp /vol0004/apps/oss/spack/etc/spack/packages.yaml ~/.spack/linux/ logout >login後 もう一度 . ~/work/localspack/spack/share/spack/setup-env.sh (このコマンドはスクリプトとして保存しておくべき) でspack環境にはいって状態確認

# 使用方法 ## ソフト名指定方法 ハッシュ /に続いてハッシュを指定
spack uninstall /ffwtsvk
spack load lammps /vr5iwt5
名前
名前%コンパイラ@ヴァージョン 
[email protected] %[email protected]
Variants 指定 name=
例 spack load screen arch=linux-rhel8-a64fx

public instanceでの使用

spack find options
-$ spack find -x --explicit 利用可能なソフトの一覧
-$ spack find -d --deps 詳細情報表示
-$ spack find -l --long 依存関係の違いのみ表示
-$ spack find -f --show-flags compilerフラグ表示
-$ spack find -dfl のような表記も可能
$ spack load 利用可能にする(パスの改変)
$spack unload 利用不能にする(追加パスの削除)

local instance での新しいインストール関連

$ spack list インストール可能なソフトのリスト
$ spack info 詳細情報の表示
$ spack install インストール
$ spack uninstall アンインストール

FAQ

xos LPG 2002 - Failed to map HugeTLBfs for data/bss: がでる場合
export LD_LIBRARY_PATH=/lib64:$LD_LIBRARY_PATH で無視できます。

参考ページ  

マニュアル類

富岳マニュアル

abxiマニュアル
富士通マニュアル
spack 公式

git-repo(Spack 公式ドキュメント v0.16.2 をもとにチュートリアルの翻訳)

blog系

富岳にdonkeycarパッケージをインストールする

パッケージマネージャspackについて調べる.

spackを使った再現可能な環境の構築① [spack environment]

富岳の使い方~富岳で機械学習~株式会社エクサ堀 扶 2021年10月20日 新規作成 2021年10月28日 第4版