diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml index 2d3516ae6..569b8ad68 100644 --- a/.github/workflows/pages.yml +++ b/.github/workflows/pages.yml @@ -11,6 +11,7 @@ on: - 'ja/**' - 'portal/**' - 'root/**' + - 'v3/**' concurrency: group: "pages" @@ -44,6 +45,10 @@ jobs: mkdocs build --config-file ./portal/root/mkdocs.yml --site-dir "${GITHUB_WORKSPACE}/site/portal/" mkdocs build --config-file ./portal/ja/mkdocs.yml --site-dir "${GITHUB_WORKSPACE}/site/portal/ja/" mkdocs build --config-file ./portal/en/mkdocs.yml --site-dir "${GITHUB_WORKSPACE}/site/portal/en/" + + mkdocs build --config-file ./v3/root/mkdocs.yml --site-dir "${GITHUB_WORKSPACE}/site/v3/" + mkdocs build --config-file ./v3/ja/mkdocs.yml --site-dir "${GITHUB_WORKSPACE}/site/v3/ja/" + mkdocs build --config-file ./v3/en/mkdocs.yml --site-dir "${GITHUB_WORKSPACE}/site/v3/en/" - name: Upload artifact uses: actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa # v3.0.1 diff --git a/Makefile b/Makefile index f24349d74..dc3dba4bf 100644 --- a/Makefile +++ b/Makefile @@ -13,6 +13,10 @@ build: mkdocs build --config-file $(MKDOCS_ROOT)/portal/ja/mkdocs.yml --site-dir $(SITE_DIR)/portal/ja/ mkdocs build --config-file $(MKDOCS_ROOT)/portal/en/mkdocs.yml --site-dir $(SITE_DIR)/portal/en/ + mkdocs build --config-file $(MKDOCS_ROOT)/v3/root/mkdocs.yml --site-dir $(SITE_DIR)/v3/ + mkdocs build --config-file $(MKDOCS_ROOT)/v3/ja/mkdocs.yml --site-dir $(SITE_DIR)/v3/ja/ + mkdocs build --config-file $(MKDOCS_ROOT)/v3/en/mkdocs.yml --site-dir $(SITE_DIR)/v3/en/ + publish-head: ghp-import -m "deploy $(COMMIT_ID)" -c $(CNAME) -r origin -b gh-pages -p site diff --git a/en/docs/abci-cloudstorage/migration.md b/en/docs/abci-cloudstorage/migration.md new file mode 100644 index 000000000..f715f6834 --- /dev/null +++ b/en/docs/abci-cloudstorage/migration.md @@ -0,0 +1,416 @@ + +# ABCI Cloud Storage Data Migration + +This section explains how to migrate data stored in ABCI cloud storage to another storage. + +## Prerequisites + +First, set up and issue an access key so you can retrieve data from the ABCI cloud storage. + +For instructions on issuing an access key, please refer to the [User Portal Guide](https://docs.abci.ai/portal/en/02/#282). + +The `rclone` will be used as the client for ABCI cloud storage. Since ABCI provides rclone, please run the following command to make it available for use. + +``` +[username@es ~]$ module load rclone +``` + +### rclone config + +The `rclone config` command is used to configure rclone interactively. + +Here, we list the configuration items required for using ABCI cloud storage and Amazon S3. Please refer to the table below when setting up rclone. + +For further details, please also refer to the [rclone configuration examples](#example-of-rclone-configuration). + +Please replace `Name`, `Access Key`, and `Secret Access Key` as appropriate. + +``` +[username@es ~]$ rclone config +``` + +Setting Items(ABCI Cloud Storage): + +| Item | Value | Description | +| -- | -- | -- | +| Name(`name>`) | `abci` | The name indicating the access destination. | +| Type of storage(`Storage>`) | `5` | Amazon S3 Compliant Storage(`s3`)。 | +| Provider(`provider>`) | `25` | Any other S3 compatible provider(`Other`). | +| Credentials(`env_auth>`) | `1` | Enter AWS credentials. | +| Access key(`access_key_id>`) | `ACCESS-KEY` | Access key issued by ABCI. | +| Secret access key(`secret_access_key>`) | `SECRET-ACCESS-KEY` | Secret access key issued by ABCI. | +| Region(`region>`) | `us-east-1` | ABCI cloud storage region. | +| Endpoint(`endpoint>`) | `https://s3.abci.ai` | ABCI cloud storage endpoint. | +| Location constraint(`location_constraint>`) | (empty) | Initial value. | +| ACL(`acl>`) | `1` | Gives owner `FULL_CONTROLL`. | + +Setting Items(Amazon S3): + +| Item | Value | Description | +| -- | -- | -- | +| Name(`name>`) | `s3` | The name indicating the access destination. | +| Storage type(`Storage>`) | `5` | Amazon S3 Compliant Storage(`s3`). | +| Provider(`provider>`) | `1` | Amazon S3. | +| Credentials(`env_auth>`) | `1` | Enter AWS credentials. | +| Access key(`access_key_id>`) | `ACCESS-KEY` | Access key issued by AWS. | +| Secret access key(`secret_access_key>`) | `SECRET-ACCESS-KEY` | Secret access key issued by AWS | +| Region(`region>`) | `14` | Amazon S3 region. The Tokyo region is specified. | +| Endpoint(`endpoint>`) | (empty) | Initial value. | +| Location constraint(`location_constraint>`) | (empty) | Initial value. | +| ACL(`acl>`) | `1` | Gives owner `FULL_CONTROLL`. | +| Server side encryption(`server_side_encryption>`) | (empty) | Initial value. | +| SSE KMS ID(`sse_kms_key_id>`) | (empty) | Initial value. | +| Storage class(`storage_class>`) | (empty) | Initial value. | + +## Migrating to ABCI 3.0 group area + +The ABCI 3.0 group area can be accessed from the interactive nodes of the ABCI 2.0 system at `/groups-new/grpname`. +Replace `grpname` with your own ABCI group name. + +To copy data from the `bucket` bucket in ABCI cloud storage to the `/groups-new/grpname/bucket` directory, run the following command. + +``` +[username@es ~]$ rclone copy abci:bucket /groups-new/grpname/bucket --multi-thread-streams 0 --transfers 8 --fast-list --no-traverse +``` + +You can use the `rclone check` command to check whether the copied data matches what is in the ABCI cloud storage. + +``` +[username@es ~]$ rclone check abci:bucket /groups-new/grpname/bucket +2024/10/31 8:15:00 NOTICE: Local file system at /groups-new/grpname/bucket: 0 differences found +2024/10/31 8:15:00 NOTICE: Local file system at /groups-new/grpname/bucket: 121 hashes could not be checked +2024/10/31 8:15:00 NOTICE: Local file system at /groups-new/grpname/bucket: 435 matching files +``` + +The rclone command options used are as follows: + +| Option | Description | +| -- | -- | +| `--fast-list` | Pre-fetch the file list, which increases memory usage but reduces transactions with cloud storage. | +| `--no-traverse` | Skip getting destination directory information. | +| `--transfers` | The number of file transfers to perform in parallel. | +| `--multi-thread-streams` | Number of streams for multi-threaded download (default: 4). If 0, download in single thread. | + +## Migrating to Amazon S3 + +You can also use the `rclone` command to transfer data to Amazon S3. + +Here, we will refer to the remote name of the ABCI cloud storage as `abci` and the remote name of Amazon S3 as `s3`. +Please configure these settings according to the [rclone configuration](#rclone-config) mentioned above. + +To copy data from the `bucket` bucket in ABCI cloud storage to the `s3-bucket` bucket in Amazon S3, run the following command. + +``` +[username@es ~]$ rclone copy abci:bucket s3:s3-bucket --transfers 8 --fast-list --no-traverse --s3-upload-concurrency 8 --s3-chunk-size 64M +``` + +You can use the `rclone check` command to check whether the copied data matches what is in the ABCI cloud storage. + +``` +[username@es ~]$ rclone check abci:bucket s3:s3-bucket +2024/10/31 8:15:00 NOTICE: S3 bucket s3-bucket: 0 differences found +2024/10/31 8:15:00 NOTICE: S3 bucket s3-bucket: 121 hashes could not be checked +2024/10/31 8:15:00 NOTICE: S3 bucket s3-bucket: 435 matching files +``` + +The rclone command options used are as follows: + +| Option | Description | +| -- | -- | +| `--fast-list` | Pre-fetch the file list, which increases memory usage but reduces transactions with cloud storage. | +| `--no-traverse` | Skip getting destination directory information. | +| `--transfers` | The number of file transfers to perform in parallel. | +| `--s3-upload-concurrency` | The number of parallel uploads for multipart uploads. (Default: 4) | +| `--s3-chunk-size` | Chunk size for multipart uploads. (Default: 5MiB) | + +## Example of rclone configuration + +Below is an example of running `rclone config`. + +### Configuration example for ABCI Cloud Storage + +``` +[username@es ~]$ rclone config +2024/10/31 8:15:00 NOTICE: Config file "/home/username/.config/rclone/rclone.conf" not found - using defaults +No remotes found, make a new one? +n) New remote +s) Set configuration password +q) Quit config +n/s/q> n + +Enter name for new remote. +name> abci + +Option Storage. +Type of storage to configure. +Choose a number from below, or type in your own value. +--(snip)-- + 5 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, Ceph, China Mobile, Cloudflare, ArvanCloud, DigitalOcean, Dreamhost, Huawei OBS, IBM COS, IDrive e2, IONOS Cloud, Liara, Lyve Cloud, Minio, Netease, RackCorp, Scaleway, SeaweedFS, StackPath, Storj, Tencent COS, Qiniu and Wasabi + \ (s3) +--(snip)-- +Storage> 5 + +Option provider. +Choose your S3 provider. +Choose a number from below, or type in your own value. +Press Enter to leave empty. +--(snip)-- +25 / Any other S3 compatible provider + \ (Other) +provider> 25 + +Option env_auth. +Get AWS credentials from runtime (environment variables or EC2/ECS meta data if no env vars). +Only applies if access_key_id and secret_access_key is blank. +Choose a number from below, or type in your own boolean value (true or false). +Press Enter for the default (false). + 1 / Enter AWS credentials in the next step. + \ (false) +--(snip)-- +env_auth> 1 + +Option access_key_id. +AWS Access Key ID. +Leave blank for anonymous access or runtime credentials. +Enter a value. Press Enter to leave empty. +access_key_id> EXAMPLE-KEY + +Option secret_access_key. +AWS Secret Access Key (password). +Leave blank for anonymous access or runtime credentials. +Enter a value. Press Enter to leave empty. +secret_access_key> EXAMPLE-SECRET-KEY + +Option region. +Region to connect to. +Leave blank if you are using an S3 clone and you don't have a region. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + / Use this if unsure. + 1 | Will use v4 signatures and an empty region. + \ () + / Use this only if v4 signatures don't work. + 2 | E.g. pre Jewel/v10 CEPH. + \ (other-v2-signature) +region> us-east-1 + +Option endpoint. +Endpoint for S3 API. +Required when using an S3 clone. +Enter a value. Press Enter to leave empty. +endpoint> https://s3.abci.ai + +Option location_constraint. +Location constraint - must be set to match the Region. +Leave blank if not sure. Used when creating buckets only. +Enter a value. Press Enter to leave empty. +location_constraint> + +Option acl. +Canned ACL used when creating buckets and storing or copying objects. +This ACL is used for creating objects and if bucket_acl isn't set, for creating buckets too. +For more info visit https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl +Note that this ACL is applied when server-side copying objects as S3 +doesn't copy the ACL from the source but rather writes a fresh one. +If the acl is an empty string then no X-Amz-Acl: header is added and +the default (private) will be used. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + / Owner gets FULL_CONTROL. + 1 | No one else has access rights (default). + \ (private) +--(snip)-- +acl> 1 + +Edit advanced config? +y) Yes +n) No (default) +y/n> n + +Configuration complete. +Options: +- type: s3 +- provider: Other +- access_key_id: EXAMPLE-KEY +- secret_access_key: EXAMPLE-SECRET-KEY +- region: us-east-1 +- endpoint: https://s3.abci.ai +- acl: private +Keep this "abci" remote? +y) Yes this is OK (default) +e) Edit this remote +d) Delete this remote +y/e/d> y + +Current remotes: + +Name Type +==== ==== +abci s3 + +e) Edit existing remote +n) New remote +d) Delete remote +r) Rename remote +c) Copy remote +s) Set configuration password +q) Quit config +e/n/d/r/c/s/q> q +``` + +### Configuration example for Amazon S3 + +``` +[username@es ~]$ rclone config +2024/10/31 8:15:00 NOTICE: Config file "/home/username/.config/rclone/rclone.conf" not found - using defaults +No remotes found, make a new one? +n) New remote +s) Set configuration password +q) Quit config +n/s/q> n + +Enter name for new remote. +name> s3 + +Option Storage. +Type of storage to configure. +Choose a number from below, or type in your own value. +--(snip)-- + 5 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, Ceph, China Mobile, Cloudflare, ArvanCloud, DigitalOcean, Dreamhost, Huawei OBS, IBM COS, IDrive e2, IONOS Cloud, Liara, Lyve Cloud, Minio, Netease, RackCorp, Scaleway, SeaweedFS, StackPath, Storj, Tencent COS, Qiniu and Wasabi + \ (s3) +--(snip)-- +Storage> 5 + +Option provider. +Choose your S3 provider. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + 1 / Amazon Web Services (AWS) S3 + \ (AWS) +provider> 1 + +Option env_auth. +Get AWS credentials from runtime (environment variables or EC2/ECS meta data if no env vars). +Only applies if access_key_id and secret_access_key is blank. +Choose a number from below, or type in your own boolean value (true or false). +Press Enter for the default (false). + 1 / Enter AWS credentials in the next step. + \ (false) + 2 / Get AWS credentials from the environment (env vars or IAM). + \ (true) +env_auth> 1 + +Option access_key_id. +AWS Access Key ID. +Leave blank for anonymous access or runtime credentials. +Enter a value. Press Enter to leave empty. +access_key_id> EXAMPLE-KEY + +Option secret_access_key. +AWS Secret Access Key (password). +Leave blank for anonymous access or runtime credentials. +Enter a value. Press Enter to leave empty. +secret_access_key> EXAMPLE-SECRET-KEY + +Option region. +Region to connect to. +Choose a number from below, or type in your own value. +Press Enter to leave empty. +--(snip)-- + / Asia Pacific (Tokyo) Region. +14 | Needs location constraint ap-northeast-1. + \ (ap-northeast-1) +--(snip)-- +region> 14 + +Option endpoint. +Endpoint for S3 API. +Leave blank if using AWS to use the default endpoint for the region. +Enter a value. Press Enter to leave empty. +endpoint> + +Option location_constraint. +Location constraint - must be set to match the Region. +Used when creating buckets only. +Choose a number from below, or type in your own value. +Press Enter to leave empty. +--(snip)-- +location_constraint> + +Option acl. +Canned ACL used when creating buckets and storing or copying objects. +This ACL is used for creating objects and if bucket_acl isn't set, for creating buckets too. +For more info visit https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl +Note that this ACL is applied when server-side copying objects as S3 +doesn't copy the ACL from the source but rather writes a fresh one. +If the acl is an empty string then no X-Amz-Acl: header is added and +the default (private) will be used. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + / Owner gets FULL_CONTROL. + 1 | No one else has access rights (default). + \ (private) +--(snip)-- +acl> 1 + +Option server_side_encryption. +The server-side encryption algorithm used when storing this object in S3. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + 1 / None + \ () +--(snip)-- +server_side_encryption> + +Option sse_kms_key_id. +If using KMS ID you must provide the ARN of Key. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + 1 / None + \ () +--(snip)-- +sse_kms_key_id> + +Option storage_class. +The storage class to use when storing new objects in S3. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + 1 / Default + \ () +--(snip)-- +storage_class> + +Edit advanced config? +y) Yes +n) No (default) +y/n> n + +Configuration complete. +Options: +- type: s3 +- provider: AWS +- access_key_id: EXAMPLE-KEY +- secret_access_key: EXAMPLE-SECRET-KEY +- region: ap-northeast-1 +- acl: private +Keep this "s3" remote? +y) Yes this is OK (default) +e) Edit this remote +d) Delete this remote +y/e/d> y + +Current remotes: + +Name Type +==== ==== +s3 s3 + +e) Edit existing remote +n) New remote +d) Delete remote +r) Rename remote +c) Copy remote +s) Set configuration password +q) Quit config +e/n/d/r/c/s/q> q +``` diff --git a/en/docs/apps/index.md b/en/docs/apps/index.md index 7e996b148..6f183cfdd 100644 --- a/en/docs/apps/index.md +++ b/en/docs/apps/index.md @@ -1,3 +1,6 @@ +!!! info + Applications will not be available due to the termination of the Compute Node service. + # Overview This section will explain how users can set up and execute applications, such as TensorFlow, PyTorch, MXNet, on ABCI. diff --git a/en/docs/gpu.md b/en/docs/gpu.md index 5e90ac63a..0b2ec2e4c 100644 --- a/en/docs/gpu.md +++ b/en/docs/gpu.md @@ -1,3 +1,6 @@ +!!! info + GPU is no longer available due to the end of service of Compute Nodes. + # 7. GPU The following libraries provided by NVIDIA are available on the ABCI System: diff --git a/en/docs/job-execution.md b/en/docs/job-execution.md index 44b6977be..e404a2dcb 100644 --- a/en/docs/job-execution.md +++ b/en/docs/job-execution.md @@ -1,3 +1,6 @@ +!!! info + The Job Service ended on October 31, 2024. + # Job Execution ## Job Services diff --git a/en/docs/mpi.md b/en/docs/mpi.md index 1a37a6f97..56f3950cd 100644 --- a/en/docs/mpi.md +++ b/en/docs/mpi.md @@ -1,3 +1,6 @@ +!!! info + MPI is no longer available due to the end of service of Compute Nodes. + # MPI The following MPIs can be used with the ABCI system. diff --git a/en/docs/storage.md b/en/docs/storage.md index 3cab750c7..c9522e333 100644 --- a/en/docs/storage.md +++ b/en/docs/storage.md @@ -1,14 +1,13 @@ +!!! info + * As of 15:00 on October 27, 2023, the Memory Intensive Node service was terminated. + * As of October 31, 2024, the [Global scratch area](#scratch-area) and [Local Storage](#local-storage) services have been discontinued. + # Storage -ABCI has the following five types of storage. +ABCI has the following three types of storage. * [Home Area](#home-area) * [Group Area](#group-area) -* [Global scratch area](#scratch-area) -* [Local Storage](#local-storage) - * [Local scratch](#local-scratch) - * [Persistent local scratch](#persistent-local-scratch) (Reserved only) - * [BeeOND storage](#beeond-storage) * [ABCI Cloud Storage](abci-cloudstorage.md) !!! Tips @@ -137,6 +136,9 @@ In the following example, the ABCI group uses MDT:0. ## Global scratch area {#scratch-area} +!!! info + As of October 31, 2024, the Global Scratch Area service was discontinued. + Global scratch area is lustre file system and available for all ABCI users. This storage is shared by interactive nodes and all Compute Nodes V and A. The quota for every users is set in 5TiB. @@ -257,14 +259,14 @@ Example) Enable the DoM feature and set a striping pattern (for OST(s)) of the d ## Local Storage +!!! info + As of October 31, 2024, the Local Storage service was discontinued. + In ABCI System, a 1.6 TB NVMe SSD x1 is installed into each compute node (V) and a 2.0 TB NVMe SSD x2 are installed into each compute node (A). There are two ways to utilize these storages as follows: * Using as a local scratch of a node (*Local scratch*, *Persistent local scratch (Reserved only)*). * Using as a distributed shared file system, which consists of multiple NVMe storages in multiple compute nodes (*BeeOND storage*). -!!! note - The memory-intensive node service ended at 15:00 on October 27, 2023. - ### Local scratch Local storage on compute nodes is available as a local scratch without specifying any special options at job submission. diff --git a/en/docs/system-overview.md b/en/docs/system-overview.md index 72b25dc84..66508f198 100644 --- a/en/docs/system-overview.md +++ b/en/docs/system-overview.md @@ -1,3 +1,6 @@ +!!! info + [Compute Node (V)](#compute-node-v) and [Compute Node (A)](#compute-node-a) were discontinued on October 31, 2024. + # ABCI System Overview ## System Architecture diff --git a/en/docs/system-updates.md b/en/docs/system-updates.md index f823cd245..8da01d69a 100644 --- a/en/docs/system-updates.md +++ b/en/docs/system-updates.md @@ -33,6 +33,10 @@ The following applications will still be accepted. However, while these changes will be reflected on the ABCI 2.0 system, they will not be reflected on ABCI 3.0. * Cloud Storage Usage +* User Password Reissue +* Usage History for ABCI Point + * Point usage history for ABCI 2.0 up to October 31, 2024 is available until March 30, 2025 at 17:00. + * ABCI 3.0 point usage history not visible. The following applications will be accepted. These changes will be reflected on the ABCI 2.0 system, but a separate application will be required to reflect them on ABCI 3.0. Application procedures for ABCI 3.0 will be provided at a later date. @@ -41,6 +45,11 @@ These changes will be reflected on the ABCI 2.0 system, but a separate applicati * Only email address changes will be accepted. * Delete User from ABCI Group * Register Public Key and Delete Public Key +* Edit User +* Set Administrator Authority +* Change Responsible Person +* Change a bill address or budget code +* Disk Addition or Reduction Request The following applications will not be accepted. The application buttons for these services will be hidden in the User Portal, and any applications submitted will not be approved. diff --git a/en/mkdocs.yml b/en/mkdocs.yml index 66dba0974..a13c6e321 100644 --- a/en/mkdocs.yml +++ b/en/mkdocs.yml @@ -51,6 +51,7 @@ nav: - 'Publishing Datasets': 'abci-cloudstorage/publishing-datasets.md' - 'Caution': 'abci-cloudstorage/caution.md' - 'Using s3fs-fuse': 'abci-cloudstorage/s3fs-usage.md' + - 'Data Migration': 'abci-cloudstorage/migration.md' - 'ABCI Datasets': 'abci-datasets.md' - 'ABCI Singularity Endpoint': 'abci-singularity-endpoint.md' - 'Open OnDemand': diff --git a/ja/docs/abci-cloudstorage/migration.md b/ja/docs/abci-cloudstorage/migration.md new file mode 100644 index 000000000..77d18fc4b --- /dev/null +++ b/ja/docs/abci-cloudstorage/migration.md @@ -0,0 +1,419 @@ + +# ABCIクラウドストレージのデータ移行 + +ここでは、ABCIクラウドストレージに保存しているデータを別ストレージへ移行する方法を説明します。 + +## 移行準備 + +まずは、ABCIクラウドストレージからデータを取得できるようアクセスキーの発行、設定を行います。 + +アクセスキーの発行方法は[利用者ポータルガイド](https://docs.abci.ai/portal/ja/02/#282)を参照してください。 + +ABCIクラウドストレージのクライアントとして`rclone`を利用します。 +ABCIではrcloneを提供していますので、次のコマンドを実行してrcloneを使えるようにしてください。 + +``` +[username@es ~]$ module load rclone +``` + +### rcloneの設定 {#rclone-config} + +rcloneの設定は`rclone config`コマンドを使用して、対話的に行います。 +ここではABCIクラウドストレージおよびAmazon S3を利用する場合の設定項目を記載しますので、下記の表を参考にrcloneの設定を行なってください。 + +詳細は[rcloneの設定例](#example-of-rclone-configuration)も参照してください。 + +`リモート名`、`アクセスキー`、`シークレットアクセスキー`は適宜変更してください。 + +``` +[username@es ~]$ rclone config +``` + +設定項目(ABCIクラウドストレージ): + +| 項目名 | 値 | 説明 | +| -- | -- | -- | +| リモート名(`name>`) | `abci` | アクセス先を示す名称。 | +| ストレージタイプ(`Storage>`) | `5` | Amazon S3準拠のストレージ(`s3`)。 | +| プロバイダー(`provider>`) | `25` | その他(`Other`)のS3プロバイダー。 | +| クレデンシャル(`env_auth>`) | `1` | AWSクレデンシャルを入力する。 | +| アクセスキー(`access_key_id>`) | `ACCESS-KEY` | ABCI利用者ポータルで発行したアクセスキー。 | +| シークレットアクセスキー(`secret_access_key>`) | `SECRET-ACCESS-KEY` | ABCI利用者ポータルで発行したシークレットアクセスキー。 | +| リージョン(`region>`) | `us-east-1` | ABCIクラウドストレージのリージョン。 | +| エンドポイント(`endpoint>`) | `https://s3.abci.ai` | ABCIクラウドストレージのエンドポイント。 | +| 場所の制約(`location_constraint>`) | (空白) | 初期値。 | +| ACL(`acl>`) | `1` | 所有者に`FULL_CONTROLL`を付与。 | + +設定項目(Amazon S3): + +| 項目名 | 値 | 説明 | +| -- | -- | -- | +| リモート名(`name>`) | `s3` | アクセス先を示す名称。 | +| ストレージタイプ(`Storage>`) | `5` | Amazon S3準拠のストレージ(`s3`)。 | +| プロバイダー(`provider>`) | `1` | Amazon S3。 | +| クレデンシャル(`env_auth>`) | `1` | AWSクレデンシャルを入力する。 | +| アクセスキー(`access_key_id>`) | `ACCESS-KEY` | AWSのアクセスキー。 | +| シークレットアクセスキー(`secret_access_key>`) | `SECRET-ACCESS-KEY` | AWSのシークレットアクセスキー。 | +| リージョン(`region>`) | `14` | Amazon S3のリージョン。ここでは東京リージョンを指定しています。 | +| エンドポイント(`endpoint>`) | (空白) | 初期値。 | +| 場所の制約(`location_constraint>`) | (空白) | 初期値。 | +| ACL(`acl>`) | `1` | 所有者に`FULL_CONTROLL`を付与。 | +| サーバーサイド暗号化(`server_side_encryption>`) | (空白) | 初期値。 | +| SSE KMS ID(`sse_kms_key_id>`) | (空白) | 初期値。 | +| ストレージクラス(`storage_class>`) | (空白) | 初期値。 | + + +## ABCI 3.0のグループ領域へ移行する + +ABCI 3.0のグループ領域はABCI 2.0のインタラクティブノードからは`/groups-new/grpname`として参照できます。 +`grpname`には利用者自身のABCIグループが入ります。 + +ABCIクラウドストレージの`bucket`バケットから`/groups-new/grpname/bucket`ディレクトリにデータをコピーする場合は以下のコマンドを実行します。 + +``` +[username@es ~]$ rclone copy abci:bucket /groups-new/grpname/bucket --multi-thread-streams 0 --transfers 8 --fast-list --no-traverse +``` + +コピーしたオブジェクトがABCIクラウドストレージ内のものと一致するかは`rclone check`コマンドで確認できます。 + +``` +[username@es ~]$ rclone check abci:bucket /groups-new/grpname/bucket +2024/10/31 8:15:00 NOTICE: Local file system at /groups-new/grpname/bucket: 0 differences found +2024/10/31 8:15:00 NOTICE: Local file system at /groups-new/grpname/bucket: 121 hashes could not be checked +2024/10/31 8:15:00 NOTICE: Local file system at /groups-new/grpname/bucket: 435 matching files +``` + +使用したrcloneのオプションについては以下の通りです。 + +| オプション | 説明 | +| -- | -- | +| `--fast-list` | 事前にファイル一覧を取得します。メモリ使用量が増えますが、クラウドストレージとのトランザクションが減少します。 | +| `--no-traverse` | 書き込み先のディレクトリ情報の取得をスキップします。 | +| `--transfers` | 並行して実行するファイル転送の数。| +| `--multi-thread-streams` | マルチスレッドダウンロードの最大ストリーム数(デフォルト:4)。0の場合シングルスレッドでダウンロードします。 | + + +## Amazon S3へ移行する + +rcloneを利用してAmazon S3にデータを転送することもできます。 + +ここではABCIクラウドストレージのリモート名を`abci`、Amazon S3のリモート名を`s3`として説明します。上述の[rcloneの設定](#rclone-config)を参考に設定しておいてください。 +ABCIクラウドストレージの`bucket`バケットからAmazon S3にある`s3-bucket`バケットにデータをコピーするには以下のコマンドを実行します。 + +``` +[username@es ~]$ rclone copy abci:bucket s3:s3-bucket --transfers 8 --fast-list --no-traverse --s3-upload-concurrency 8 --s3-chunk-size 64M +``` + +ABCIクラウドストレージの`bucket`バケット内のオブジェクトがAmazon S3の`s3-bucket`下にコピーされます。 + +コピーしたオブジェクトがABCIクラウドストレージ内のものと一致するかは`rclone check`コマンドで確認できます。 + +``` +[username@es ~]$ rclone check abci:bucket s3:s3-bucket +2024/10/31 8:15:00 NOTICE: S3 bucket s3-bucket: 0 differences found +2024/10/31 8:15:00 NOTICE: S3 bucket s3-bucket: 121 hashes could not be checked +2024/10/31 8:15:00 NOTICE: S3 bucket s3-bucket: 435 matching files +``` + +使用したrcloneのオプションについては以下の通りです。 + +| オプション | 説明 | +| -- | -- | +| `--fast-list` | 事前にファイル一覧を取得します。メモリ使用量が増えますが、クラウドストレージとのトランザクションが減少します。 | +| `--no-traverse` | 書き込み先のディレクトリ情報の取得をスキップします。 | +| `--transfers` | 並行して実行するファイル転送の数。| +| `--s3-upload-concurrency` | マルチパートアップロード時の並列数。(デフォルト:4) | +| `--s3-chunk-size` | マルチパートアップロード時のチャンクサイズ。(デフォルト:5MiB) | + + +## rcloneの設定例 {#example-of-rclone-configuration} + +以下は`rclone config`の実行例です。 + +### ABCIクラウドストレージの設定例 + +``` +[username@es ~]$ rclone config +2024/10/31 8:15:00 NOTICE: Config file "/home/username/.config/rclone/rclone.conf" not found - using defaults +No remotes found, make a new one? +n) New remote +s) Set configuration password +q) Quit config +n/s/q> n + +Enter name for new remote. +name> abci + +Option Storage. +Type of storage to configure. +Choose a number from below, or type in your own value. +--(snip)-- + 5 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, Ceph, China Mobile, Cloudflare, ArvanCloud, DigitalOcean, Dreamhost, Huawei OBS, IBM COS, IDrive e2, IONOS Cloud, Liara, Lyve Cloud, Minio, Netease, RackCorp, Scaleway, SeaweedFS, StackPath, Storj, Tencent COS, Qiniu and Wasabi + \ (s3) +--(snip)-- +Storage> 5 + +Option provider. +Choose your S3 provider. +Choose a number from below, or type in your own value. +Press Enter to leave empty. +--(snip)-- +25 / Any other S3 compatible provider + \ (Other) +provider> 25 + +Option env_auth. +Get AWS credentials from runtime (environment variables or EC2/ECS meta data if no env vars). +Only applies if access_key_id and secret_access_key is blank. +Choose a number from below, or type in your own boolean value (true or false). +Press Enter for the default (false). + 1 / Enter AWS credentials in the next step. + \ (false) +--(snip)-- +env_auth> 1 + +Option access_key_id. +AWS Access Key ID. +Leave blank for anonymous access or runtime credentials. +Enter a value. Press Enter to leave empty. +access_key_id> EXAMPLE-KEY + +Option secret_access_key. +AWS Secret Access Key (password). +Leave blank for anonymous access or runtime credentials. +Enter a value. Press Enter to leave empty. +secret_access_key> EXAMPLE-SECRET-KEY + +Option region. +Region to connect to. +Leave blank if you are using an S3 clone and you don't have a region. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + / Use this if unsure. + 1 | Will use v4 signatures and an empty region. + \ () + / Use this only if v4 signatures don't work. + 2 | E.g. pre Jewel/v10 CEPH. + \ (other-v2-signature) +region> us-east-1 + +Option endpoint. +Endpoint for S3 API. +Required when using an S3 clone. +Enter a value. Press Enter to leave empty. +endpoint> https://s3.abci.ai + +Option location_constraint. +Location constraint - must be set to match the Region. +Leave blank if not sure. Used when creating buckets only. +Enter a value. Press Enter to leave empty. +location_constraint> + +Option acl. +Canned ACL used when creating buckets and storing or copying objects. +This ACL is used for creating objects and if bucket_acl isn't set, for creating buckets too. +For more info visit https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl +Note that this ACL is applied when server-side copying objects as S3 +doesn't copy the ACL from the source but rather writes a fresh one. +If the acl is an empty string then no X-Amz-Acl: header is added and +the default (private) will be used. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + / Owner gets FULL_CONTROL. + 1 | No one else has access rights (default). + \ (private) +--(snip)-- +acl> 1 + +Edit advanced config? +y) Yes +n) No (default) +y/n> n + +Configuration complete. +Options: +- type: s3 +- provider: Other +- access_key_id: EXAMPLE-KEY +- secret_access_key: EXAMPLE-SECRET-KEY +- region: us-east-1 +- endpoint: https://s3.abci.ai +- acl: private +Keep this "abci" remote? +y) Yes this is OK (default) +e) Edit this remote +d) Delete this remote +y/e/d> y + +Current remotes: + +Name Type +==== ==== +abci s3 + +e) Edit existing remote +n) New remote +d) Delete remote +r) Rename remote +c) Copy remote +s) Set configuration password +q) Quit config +e/n/d/r/c/s/q> q +``` + +### Amazon S3の設定例 {#rclone-config-s3} + +``` +[username@es ~]$ rclone config +2024/10/31 8:15:00 NOTICE: Config file "/home/username/.config/rclone/rclone.conf" not found - using defaults +No remotes found, make a new one? +n) New remote +s) Set configuration password +q) Quit config +n/s/q> n + +Enter name for new remote. +name> s3 + +Option Storage. +Type of storage to configure. +Choose a number from below, or type in your own value. +--(snip)-- + 5 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, Ceph, China Mobile, Cloudflare, ArvanCloud, DigitalOcean, Dreamhost, Huawei OBS, IBM COS, IDrive e2, IONOS Cloud, Liara, Lyve Cloud, Minio, Netease, RackCorp, Scaleway, SeaweedFS, StackPath, Storj, Tencent COS, Qiniu and Wasabi + \ (s3) +--(snip)-- +Storage> 5 + +Option provider. +Choose your S3 provider. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + 1 / Amazon Web Services (AWS) S3 + \ (AWS) +provider> 1 + +Option env_auth. +Get AWS credentials from runtime (environment variables or EC2/ECS meta data if no env vars). +Only applies if access_key_id and secret_access_key is blank. +Choose a number from below, or type in your own boolean value (true or false). +Press Enter for the default (false). + 1 / Enter AWS credentials in the next step. + \ (false) + 2 / Get AWS credentials from the environment (env vars or IAM). + \ (true) +env_auth> 1 + +Option access_key_id. +AWS Access Key ID. +Leave blank for anonymous access or runtime credentials. +Enter a value. Press Enter to leave empty. +access_key_id> EXAMPLE-KEY + +Option secret_access_key. +AWS Secret Access Key (password). +Leave blank for anonymous access or runtime credentials. +Enter a value. Press Enter to leave empty. +secret_access_key> EXAMPLE-SECRET-KEY + +Option region. +Region to connect to. +Choose a number from below, or type in your own value. +Press Enter to leave empty. +--(snip)-- + / Asia Pacific (Tokyo) Region. +14 | Needs location constraint ap-northeast-1. + \ (ap-northeast-1) +--(snip)-- +region> 14 + +Option endpoint. +Endpoint for S3 API. +Leave blank if using AWS to use the default endpoint for the region. +Enter a value. Press Enter to leave empty. +endpoint> + +Option location_constraint. +Location constraint - must be set to match the Region. +Used when creating buckets only. +Choose a number from below, or type in your own value. +Press Enter to leave empty. +--(snip)-- +location_constraint> + +Option acl. +Canned ACL used when creating buckets and storing or copying objects. +This ACL is used for creating objects and if bucket_acl isn't set, for creating buckets too. +For more info visit https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl +Note that this ACL is applied when server-side copying objects as S3 +doesn't copy the ACL from the source but rather writes a fresh one. +If the acl is an empty string then no X-Amz-Acl: header is added and +the default (private) will be used. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + / Owner gets FULL_CONTROL. + 1 | No one else has access rights (default). + \ (private) +--(snip)-- +acl> 1 + +Option server_side_encryption. +The server-side encryption algorithm used when storing this object in S3. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + 1 / None + \ () +--(snip)-- +server_side_encryption> + +Option sse_kms_key_id. +If using KMS ID you must provide the ARN of Key. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + 1 / None + \ () +--(snip)-- +sse_kms_key_id> + +Option storage_class. +The storage class to use when storing new objects in S3. +Choose a number from below, or type in your own value. +Press Enter to leave empty. + 1 / Default + \ () +--(snip)-- +storage_class> + +Edit advanced config? +y) Yes +n) No (default) +y/n> n + +Configuration complete. +Options: +- type: s3 +- provider: AWS +- access_key_id: EXAMPLE-KEY +- secret_access_key: EXAMPLE-SECRET-KEY +- region: ap-northeast-1 +- acl: private +Keep this "s3" remote? +y) Yes this is OK (default) +e) Edit this remote +d) Delete this remote +y/e/d> y + +Current remotes: + +Name Type +==== ==== +s3 s3 + +e) Edit existing remote +n) New remote +d) Delete remote +r) Rename remote +c) Copy remote +s) Set configuration password +q) Quit config +e/n/d/r/c/s/q> q +``` diff --git a/ja/docs/apps/index.md b/ja/docs/apps/index.md index f19efb3c8..ed27de38e 100644 --- a/ja/docs/apps/index.md +++ b/ja/docs/apps/index.md @@ -1,3 +1,6 @@ +!!! info + 計算ノードのサービス終了にともない、各種アプリケーションは使用できません。 + # 概要 本セクションでは、TensorFlow、PyTorch、MXNetなど各種アプリケーションを、利用者がABCI上にインストールして利用するための手順を説明します。 diff --git a/ja/docs/gpu.md b/ja/docs/gpu.md index a3d7053ab..949fd3b8e 100644 --- a/ja/docs/gpu.md +++ b/ja/docs/gpu.md @@ -1,3 +1,6 @@ +!!! info + 計算ノードのサービス終了にともない、GPUは使用できません。 + # GPU ABCIシステムでは、NVIDIAが提供する以下のライブラリが利用できます。 diff --git a/ja/docs/job-execution.md b/ja/docs/job-execution.md index 714c787ae..eac09fc96 100644 --- a/ja/docs/job-execution.md +++ b/ja/docs/job-execution.md @@ -1,3 +1,6 @@ +!!! info + 2024年10月31日をもって、ジョブサービスは終了しました。 + # ジョブ実行 ## ジョブサービス {#job-services} diff --git a/ja/docs/mpi.md b/ja/docs/mpi.md index bd735be32..691007bd1 100644 --- a/ja/docs/mpi.md +++ b/ja/docs/mpi.md @@ -1,3 +1,6 @@ +!!! info + 計算ノードのサービス終了にともない、MPIは使用できません。 + # MPI ABCIシステムでは、以下のMPIを利用できます。 diff --git a/ja/docs/storage.md b/ja/docs/storage.md index 2961a8589..23e038fe3 100644 --- a/ja/docs/storage.md +++ b/ja/docs/storage.md @@ -1,14 +1,13 @@ +!!! info + * 2023年10月27日15:00をもって、メモリインテンシブノードサービスは終了しました。 + * 2024年10月31日をもって、[グローバルスクラッチ領域](#scratch-area)、[ローカルストレージ](#local-storage)サービスは終了しました。 + # ストレージ -ABCIで利用可能なストレージは、下記の5種類です。 +ABCIで利用可能なストレージは、下記の3種類です。 * [ホーム領域](#home-area) * [グループ領域](#group-area) -* [グローバルスクラッチ領域](#scratch-area) -* [ローカルストレージ](#local-storage) - * [ローカルスクラッチ](#local-scratch) - * [永続ローカルスクラッチ](#persistent-local-scratch) (Reserved専用) - * [BeeONDストレージ](#beeond-storage) * [ABCIクラウドストレージ](abci-cloudstorage.md) !!! Tips @@ -138,6 +137,9 @@ groups-MDT0005_UUID 3110850464 433 3110850031 1% /groups[MDT:5] ## グローバルスクラッチ領域 {#scratch-area} +!!! info + 2024年10月31日をもって、グローバルスクラッチ領域サービスは終了しました。 + グローバルスクラッチ領域は、利用者全員が利用可能な、インタラクティブノードおよび各計算ノードで共有されたLustreファイルシステムの短期利用向け高速ストレージです。ディスククォータは5TiBに設定されています。 各利用者は以下の領域を短期利用高速データ領域として利用することが可能です。 ``` @@ -256,14 +258,14 @@ dom-stripe-file ## ローカルストレージ {#local-storage} +!!! info + 2024年10月31日をもって、ローカルストレージサービスは終了しました。 + ABCIシステムでは、計算ノード(V)に1.6 TBのNVMe SSD x 1、計算ノード(A)に2.0 TBのNVMe SSD x 2が搭載されています。これらローカルストレージは次のように利用できます。 - ノードに閉じたスクラッチ領域として利用する(*ローカルスクラッチ*、*永続ローカルスクラッチ (Reserved専用)*)。 - 複数の計算ノードのローカルストレージにまたがる分散共有ファイルシステムを構成して利用する(*BeeONDストレージ*)。 -!!! note - メモリインテンシブノードのサービスは、2023年10月27日15:00 をもって終了しました。 - ### ローカルスクラッチ {#local-scratch} 計算ノードのローカルストレージは、ジョブ投入時に特別なオプションを指定することなくローカルスクラッチとして利用できます。 diff --git a/ja/docs/system-overview.md b/ja/docs/system-overview.md index a640caa5b..ca665b821 100644 --- a/ja/docs/system-overview.md +++ b/ja/docs/system-overview.md @@ -1,3 +1,6 @@ +!!! info + 2024年10月31日をもって、[計算ノード(V)](#compute-node-v)および[計算ノード(A)](#compute-node-a)のサービスは終了しました。 + # ABCIシステムの概要 ## システム全体概要 {#system-architecture} diff --git a/ja/docs/system-updates.md b/ja/docs/system-updates.md index 46f9af1b1..0903eaaa3 100644 --- a/ja/docs/system-updates.md +++ b/ja/docs/system-updates.md @@ -33,6 +33,10 @@ ただし、ABCI 2.0システムには反映しますが、ABCI3.0へは反映しません。 * クラウドストレージ管理 +* パスワード再発行 +* ABCIポイント使用履歴 + * 2024年10月31日までのABCI 2.0のポイント使用履歴が2025年3月30日17:00まで参照できます。 + * ABCI 3.0でのポイント使用履歴は参照できません。 以下の申請は受け付けます。 ただし、ABCI 2.0システムには反映しますが、ABCI3.0へ反映するためには別途申請が必要です。ABCI 3.0へ反映するための申請手順は、後日お知らせします。 @@ -41,6 +45,10 @@ * メールアドレスの変更のみ申請を受け付けます * 利用者削除 * 公開鍵の登録、公開鍵の削除 +* 利用管理者権限設定 +* 利用責任者変更 +* 請求書送付先・予算コード変更申請 +* グループディスク追加または削減申請 以下は申請を受け付けません。 利用者ポータルでは、下記サービスの申請ボタンは非表示となります。申請しても承認されません。 diff --git a/ja/mkdocs.yml b/ja/mkdocs.yml index d820f9d3b..7e31a268f 100644 --- a/ja/mkdocs.yml +++ b/ja/mkdocs.yml @@ -52,6 +52,7 @@ nav: - 'データセットの公開': 'abci-cloudstorage/publishing-datasets.md' - 'ご利用時の注意': 'abci-cloudstorage/caution.md' - 's3fs-fuseの利用': 'abci-cloudstorage/s3fs-usage.md' + - 'ABCIクラウドストレージのデータ移行': 'abci-cloudstorage/migration.md' - 'ABCI データセット': 'abci-datasets.md' - 'ABCI Singularity エンドポイント': 'abci-singularity-endpoint.md' - 'Open OnDemand': diff --git a/v3/en/docs/contact.md b/v3/en/docs/contact.md new file mode 100644 index 000000000..ae2048a4c --- /dev/null +++ b/v3/en/docs/contact.md @@ -0,0 +1,37 @@ +# Contact + +ABCI User Support accepts the following inquiries and reports (weekdays 9:00-17:00): + +* Inquiries regarding usage procedures + * How to log in + * How to submit a batch job + * How to transfer data + * etc. +* Inquiries regarding the software environment + * How to use the software installed on ABCI + * How to install typical software/framework + * etc. +* Hardware errors +* Software problems + * Problems with using the software installed on ABCI + * Problems with the batch job scheduler + * etc. +* Network problems +* Inquiries about this User Guide + +When you make an inquiry and a report, send an e-mail to with the following information: + +``` +[Full Name]: +[ABCI Account Name]: +[ABCI Group Name]: +[Organization]: +[Registered e-mail address]: +[Inquiry]: Please include information such as: + - the problem symptom + - when it happened (date and time) + - job ID + - command history including command line options + - output of the terminal + - etc. +``` diff --git a/v3/en/docs/getting-started.md b/v3/en/docs/getting-started.md new file mode 100644 index 000000000..ed8c326b0 --- /dev/null +++ b/v3/en/docs/getting-started.md @@ -0,0 +1,123 @@ +# Getting Started ABCI + +## Connecting to Interactive Node + +To connect to the interactive node (*login*), the ABCI frontend, two-step SSH public key authentication is required. + +1. Login to the access server (*as.v3.abci.ai*) with SSH public key authentication, so as to create an *SSH tunnel* between your computer and *login*. +2. Login to the interactive node (*login*) with SSH public key authentication via the SSH tunnel. + +In this document, ABCI server names are written in *italics*. + +### Prerequisites + +To connect to the interactive node, you will need the following in advance: + +* SSH client: Your computer most likely has an SSH client installed by default. If your computer is a UNIX-like system such as Linux and macOS, or Windows 10 version 1803 (April 2018 Update) or later, it should have an SSH client. You can also check for an SSH client, just by typing ``ssh`` at the command line. +* SSH protocol version: Only SSH protocol version 2 is supported. +* A secure SSH public/private key pair: ABCI only accepts the following public keys: + * RSA keys, at least 2048bits + * ECDSA keys, 256, 384, and 521bits + * Ed25519 keys +* Please contact the operations team (abci3-qa@abci.ai ) for SSH public key registration. + +!!! note + Tera Term and PuTTY can be used as SSH clients. + +### Login using an SSH Client + +In this section, we will describe two methods to login to the interactive node using a SSH client. The first one is creating an SSH tunnel on the access server first and connecting the interactive node via this tunnel next. The second one, much easier method, is connecting directly to the interactive node using ProxyJump implemented in OpenSSH 7.3 or later. + +#### General method + +Login to the access server (*as.v3.abci.ai*) with following command: + +``` +[yourpc ~]$ ssh -i /path/identity_file -L 10022:login:22 -l username as.v3.abci.ai +The authenticity of host 'as.v3.abci.ai (0.0.0.1)' can't be established. +RSA key fingerprint is XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX. <- Display only at the first login +Are you sure you want to continue connecting (yes/no)? <- Enter "yes" +Warning: Permanently added 'XX.XX.XX.XX' (RSA) to the list of known hosts. +Enter passphrase for key '/path/identity_file': <- Enter passphrase +``` + + +Successfully logged in, the following message is shown on your terminal. + +``` +Welcome to ABCI access server. +Please press any key if you disconnect this session. +``` + +!!! warning + Be aware! The SSH session will be disconnected if you press any key. + +Launch another terminal and login to the interactive node using the SSH tunnel: + +``` +[yourpc ~]$ ssh -i /path/identity_file -p 10022 -l username localhost +The authenticity of host 'localhost (127.0.0.1)' can't be established. +RSA key fingerprint is XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX. <- Display only at the first login +Are you sure you want to continue connecting (yes/no)? <- Enter "yes" +Warning: Permanently added 'localhost' (RSA) to the list of known hosts. +Enter passphrase for key '/path/identity_file': <- Enter passphrase +[username@login1 ~]$ +``` + +#### ProxyJump + +You can log in to an interactive node with a single command using ProxyJump, which was introduced in OpenSSH version 7.3. ProxyJump can be used in Windows Subsystem for Linux (WSL) environment as well. + +First, add the following configuration to your ``$HOME/.ssh/config``: + +``` +Host abci + HostName login + User username + ProxyJump %r@as.v3.abci.ai + IdentityFile /path/to/identity_file + HostKeyAlgorithms ssh-ed25519 + +Host as.v3.abci.ai + IdentityFile /path/to/identity_file +``` + +After that, you can log in with the following command only: + +``` +[yourpc ~]$ ssh abci +``` + +ProxyJump does not work with OpenSSH_for_Windows_7.7p1 which is bundled with Windows 10 version 1803 and later. Use ProxyCommand instead. The following is an example of a config file using ProxyCommand. Please specify the absolute path for `ssh.exe`. + +``` +Host abci + HostName login + User username + ProxyCommand C:\WINDOWS\System32\OpenSSH\ssh.exe -W %h:%p %r@as.v3.abci.ai + IdentityFile C:\path\to\identity_file + +Host as.v3.abci.ai + IdentityFile C:\path\to\identity_file +``` + +## File Transfer to Interactive Node + +When you transfer files between your computer and the ABCI system, create an SSH tunnel and run the `scp` (`sftp`) command. + +``` +[yourpc ~]$ scp -P 10022 local-file username@localhost:remote-dir +Enter passphrase for key: <- Enter passphrase + +local-file 100% |***********************| file-size transfer-time +``` + +If you have OpenSSH 7.3 or later and already added the configuration to your ``$HOME/.ssh/config`` as described at [ProxyJump](#proxyjump), you can directly run the `scp` (`sftp`) command. + +``` +[yourpc ~]$ scp local-file abci:remote-dir +``` + +## Login Shell + +The default login shell for the ABCI system is set to bash. For any changes to the login shell, please contact the operations team (abci3-qa@abci.ai ). diff --git a/v3/en/docs/img/abci30_dc.jpg b/v3/en/docs/img/abci30_dc.jpg new file mode 100644 index 000000000..802cf6975 Binary files /dev/null and b/v3/en/docs/img/abci30_dc.jpg differ diff --git a/v3/en/docs/img/abci_dc.jpg b/v3/en/docs/img/abci_dc.jpg new file mode 100644 index 000000000..1ba6d03a3 Binary files /dev/null and b/v3/en/docs/img/abci_dc.jpg differ diff --git a/v3/en/docs/img/favicon.png b/v3/en/docs/img/favicon.png new file mode 100644 index 000000000..47b7cf9a5 Binary files /dev/null and b/v3/en/docs/img/favicon.png differ diff --git a/v3/en/docs/img/logo.png b/v3/en/docs/img/logo.png new file mode 100644 index 000000000..76bcd3271 Binary files /dev/null and b/v3/en/docs/img/logo.png differ diff --git a/v3/en/docs/index.md b/v3/en/docs/index.md new file mode 100644 index 000000000..6fed13287 --- /dev/null +++ b/v3/en/docs/index.md @@ -0,0 +1,10 @@ +# Introduction + +[AI Bridging Cloud Infrastructure (ABCI)](https://abci.ai/), is an open computing infrastructure for both developing AI technology and bridging AI technology into the industry and the real world, constructed by [National Institute of Advanced Industrial Science and Technology (AIST)](https://www.aist.go.jp/index_en.html), and operated by [AIST Solutions Co. (AISol)](https://www.aist-solutions.co.jp/english/). ABCI started full-scale operation in August 2018. + +This User Guide describes the technical details of ABCI 3.0 and how to use it. All users who use ABCI 3.0 are strongly recommended to read this document, as it is helpful to gain better understanding of the system. + +!!! note + For simplicity, *ABCI 3.0* is hereafter referred to as *ABCI* in this document. + +![ABCI Overview](img/abci30_dc.jpg) diff --git a/v3/en/docs/job-execution.md b/v3/en/docs/job-execution.md new file mode 100644 index 000000000..170adf2e6 --- /dev/null +++ b/v3/en/docs/job-execution.md @@ -0,0 +1,455 @@ +# Job Execution + +## Job Services + +The following job services are available in the ABCI System. + +| Service name | Description | Service charge coefficient | Job style | +|:--|:--|:--|:--| +| On-demand | Job service of interactive execution | 1.0 | Interactive | +| Spot | Job service of batch execution | 1.0 | Batch | +| Reserved | Job service of reservation | 1.5 | Batch/Interactive | + +For the job execution resources available for each job service and the restrictions, see [Job Execution Resources](#job-execution-resource). Also, for accounting, see [Accounting](#accounting). + +### On-demand Service + +On-demand service is an interactive job execution service suitable for compiling and debugging programs, interactive applications, and running visualization software. + +See [Interactive Jobs](#interactive-jobs) for usage, and [Job Execution Options](#job-execution-options) for details on interactive job execution options. + +### Spot Service + +Spot Service is a batch job execution service suitable for executing applications that do not require interactive processing. It is possible to execute jobs that take longer or have a higher degree of parallelism than On-demand service. + +See [Batch Jobs](#batch-jobs) for usage, and [Job Execution Options](#job-execution-options) for details on batch job execution options. + +### Reserved Service (Available from mid-January) + +Reserved service is a service that allows you to reserve and use computational resources on a daily basis in advance. It allows planned job execution without being affected by the congestions of On-demand and Spot service. In addition, since you can reserve more days than the elapsed time limit of the Spot Service, it is possible to execute jobs for a longer time. + +In Reserved service, you first make a reservation in advance to obtain a reservation ID (AR-ID), and then use this reservation ID to execute interactive jobs and batch jobs. + +See [Advance Reservation](#advance-reservation) for the reservation method. The usage and execution options for batch job is the same as for Spot service. +The usage and execution options for interactive jobs and batch jobs are the same as for On-demand and Spot services. + +## Job Execution Resource + +The ABCI System allocates system resources to jobs using resource type that means logical partition of compute nodes. +When using any of the On-demand, Spot, and Reserved services, you need to specify the resource type and its quantity that you want to use, submit or execute jobs, and reserves compute nodes. + +The following describes the available resource types first, followed by the restrictions on the amount of resources available at the same time, elapsed time and node-time product, job submissions and executions, and so on. + +### Available Resource Types + +The ABCI system provides the following resource types: + + +| Resource type name | Description | Assigned physical CPU core | Number of assigned GPU | Memory (GB) | Local storage (GB) | Resource type charge coefficient | +|:--|:--|:--|:--|:--|:--|:--| +| rt\_HF | node-exclusive | 96 | 8 | 1728 | 14 | 15 | +| rt\_HG | node-sharing
with GPU | 8 | 1 | 144 | 1.4 | 3| +| rt\_HC | node-sharing
CPU only | 16 | 0 | 288 | 1.4 | 1 | + + +### Number of nodes available at the same time + +The available resource type and number of nodes for each service are as follows. When you execute a job using multiple nodes, you need to specify resource type `rt_HF`. + +| Service | Resource type name | Number of nodes | +|:--|:--|--:| +| Reserved | rt\_HF | 1-(number of reserved nodes) | + +### Elapsed time and node-time product limits + +There is an elapsed time limit (executable time limit) for jobs depending on the job service and resource type. The upper limit and default values are shown below. + +| Service | Resource type name | Limit of elapsed time (upper limit/default) | +|:--|:--|:--| +| Spot | rt\_HF, rt\_HG, rt\_HC | 168:00:00/1:00:00 | +| On-demand | rt\_HF, rt\_HG, rt\_HC | 12:00:00/1:00:00 | + +In addition, when executing a job that uses multiple nodes in On-demand or Spot services, there are the following restrictions on the node-time product (execution time × number of used nodes). + +| Service | max value of node-hour | +|:--|--:| +| Spot: | 21504 nodes · hourss | +| On-demand | 12 nodes · hours | + +!!!note + There is no limit on the elapsed time in the Reserved service, but the job will be forcibly terminated when the reservation ends. See [Advance Reservation](#advance-reservation) for more information about restrictions on Reserved Services. + +### Limitation on the number of job submissions and executions + +The job limit of submission and execution for the job service are as follows. +The number of the submitted jobs to the reserved node is included in the number of unfinished/running jobs as well as other On-demand/Spot job and are affected by the limit. + +| Limitations | Limits | +| :-- | :-- | +| The maximum number of tasks within an array job | 75000 | +| The maximum number of any user's unfinished jobs at the same time | 1000 | +| The maximum number of any user's running jobs at the same time | 200 | + +Until fiscal 2023, there was no limit on the number of jobs executed per resource type, and the system was allocated sequentially from the available calculation resources. Starting in fiscal 2024, we will impose restrictions on the number of running jobs at the same time per system for each resource type. +The Job Services subject to this will be the On-demand Service and the Spot Service. +Jobs submitted to reserved nodes in the Reserved service are not included in the count. + +| Resource type name | Maximum number of running jobs at the same time per system | +|:--|:--| +| rt_HF | 736 | +| rt_HG | 240 | +| rt_HC | 60 | + +## Job Execution Options + +Use `qsub` command to run interactive jobs and batch jobs. + +The major options of the `qsub` command are follows. + +| Option | Description | +|:--|:--| +| -P *group* | Specify ABCI user group. You can only specify the ABCI group to which your ABCI account belongs. (mandatory) | +| -q *resource_type* | Specify resource type (mandatory) | +| -l select=*num*[*:ncpus=num_cpus:mpiprocs=num_mpi:ompthreads=num_omp*] | Specify the number of nodes with *num* and the number of CPUs corresponding to each resource type with *num_cpus*, the number of MPI processes with *num_mpi*, and the number of threads with *num_omp*. (mandatory) | +| -l walltime=[*HH:MM:*]*SS* | Specify elapsed time by [*HH:MM:*]*SS*. When execution time of job exceed specified time, job is rejected. | +| -N name | Specify the job name with *name*. The default is the job script name. | +| -o *stdout_name* | Specify standard output stream of job | +| -j oe | Specify standard error stream is merged into standard output stream | + +## Interactive Jobs + +To run an interactive job, add the `-I` option to the `qsub` command. + +``` +$ qsub -I -P group -q resource_type -l select=num [options] +``` + +Example) Executing an interactive job (On-demand service) + +``` +[username@login1 ~]$ qsub -I -P grpname -q rt_HF -l select=1 +[username@hnode001 ~]$ +``` + +!!! note + If ABCI point is insufficient when executing an interactive job with On-demand service, the execution is failed. + +## Batch Jobs + +To run a batch job on the ABCI System, you need to make a job script in addition to execution program. +The job script is described job execute option, such as resource type, elapsed time limit, etc., and executing command sequence. + +```bash +#!/bin/sh +#PBS -q rt_HF +#PBS -l select=1 +#PBS -l walltime=1:23:45 +#PBS -P grpname + +cd ${PBS_O_WORKDIR} + +[Initialization of Environment Modules] +[Setting of Environment Modules] +[Executing program] +``` + +Example) Sample job script executing program with CUDA + +```bash +#!/bin/sh +#PBS -q rt_HF +#PBS -l select=1 +#PBS -l walltime=1:23:45 +#PBS -P grpname + +cd ${PBS_O_WORKDIR} + +source /etc/profile.d/modules.sh +module load cuda/12.6/12.6.1 +./a.out +``` + +### Submit a batch job + +To submit a batch job, use the `qsub` command. The job ID is displayed after submission. + +``` +$ qsub job_script +``` + +Example) Submission job script run.sh as a batch job (Spot service) + +``` +[username@login1 ~]$ qsub run.sh +1234.pbs1 +``` + +!!! note + If ABCI point is insufficient when executing a batch job with Spot service, the execution is failed. + +### Job submission error + +If the batch job submission is successful, the exit status of the `qsub` command will be `0`. +If it fails, it will be a non-zero value and an error message will appear. + +### Show the status of batch jobs + +To show the current status of batch jobs, use the `qstat` command. + +``` +$ qstat [option] +``` + +The major options of the `qstat` command are follows. + +| Option | Description | +|:--|:--| +| -f | Display additional information about job | +| -a | Display queued and running jobs along with additional information | + +Example) + +``` +[username@login1 ~]$ qstat +Job id Name User Time Use S Queue +--------------------- ---------------- ---------------- -------- - ----- +12345.pbs1 run.sh username 00:01:23 R rt_HF +``` + +| Field | Description | +|:--|:--| +| Job id | Job ID | +| Name | Job name | +| User | Job owner | +| Time Use | CPU usage time of the job | +| S | Job status (R: running, Q: queued, F: finished, S: suspended, E: exiting) | +| Queue | Resource type | + +### Delete a batch job + +To delete a batch job, use the `qdel` command. + +``` +$ qdel job_ID +``` + +Example) Delete a batch job + +``` +[username@login1 ~]$ qstat +Job id Name User Time Use S Queue +--------------------- ---------------- ---------------- -------- - ----- +12345.pbs1 run.sh username 00:01:23 R rt_HF +[username@login1 ~]$ qdel 12345.pbs1 +[username@login1 ~]$ +``` + + +### Stdout and Stderr of Batch Jobs + +Standard output file and standard error output file are written to job execution directory, or to files specified at job submission. +Standard output generated during a job execution is written to a standard output file and error messages generated during the +job execution to a standard error output file if no standard output and standard err output files are specified at job submission, +the following files are generated for output. + +- *JOB_NAME*.o*NUM_JOB_ID* --- Standard output file +- *JOB_NAME*.e*NUM_JOB_ID* --- Standard error output file + +## Advance Reservation (Under Update) + +In the case of Reserved service, job execution can be scheduled by reserving compute node in advance. + +The maximum number of nodes and the node-time product that can be reserved for this service is "Maximum reserved nodes per reservation" and "Maximum reserved node time per reservation" in the following table. In addition, in this service, the user can only execute jobs with the maximum number of reserved nodes. Note that there is an upper limit on "Maximum number of nodes can be reserved at once per system" for the entire system, so you may only be able to make reservations that fall below "Maximum reserved nodes per reservation" or you may not be able to make reservations. [Each resource types](#available-resource-types) are available for reserved compute nodes. + +| Item | Setting Value | +|:--|:--| +| Minimum reservation days | 1 day | +| Maximum reservation days | 60 days | +| Maximum number of nodes can be reserved at once per ABCI group | 192 nodes | +| Maximum number of nodes can be reserved at once per system | 384 nodes | +| Minimum reserved nodes per reservation | 1 nodes | +| Maximum reserved nodes per reservation | 192 nodes | +| Maximum reserved node time per reservation | 64,512 nodes x hour | + +### Make a reservation + +To make a reservation compute node, use `qrsub` command. +When the reservation is completed, a reservation ID will be issued. Please specify this reservation ID when using the reserved node. + +!!! warning + Making reservation of compute node is permitted to a Responsible Person or User Administrators. + +``` +$ qrsub options +``` + +| Option | Description | +|:--|:--| +| -a *YYYYMMDD* | Specify start reservation date (format: YYYYMMDD) | +| -d *days* | Specify reservation day. exclusive with -e option | +| -e *YYYYMMDD* | Specify end reservation date (format: YYYYMMDD). exclusive with -d option | +| -g *group* | Specify ABCI UserGroup | +| -N *name* | Specify reservation name. The reservation name can be alphanumeric and special characters `=+-_.`. The maximum length is 64 characters. However, the first letter must not be a number. | +| -n *nnode* | Specify the number of nodes. | +| -l *resource_type* | Specifies the resource type to reserve. ( default: rt_HF )| + +Example) Make a reservation 4 compute nodes (H) from 2024/07/05 to 1 week (7 days) + +``` +[username@login1 ~]$ qrsub -a 20240705 -d 7 -P grpname -n 4 -N "Reserve_for_AI" +Your advance reservation 12345 has been granted +``` + + +The ABCI points are consumed when complete reservation. +In addition, the issued reservation ID can be used for the ABCI accounts belonging to the ABCI group specified at the time of reservation. + +!!! note + If the number of nodes that can be reserved is less than the number of nodes specified by the `qrsub` command, the reservation acquisition fails with the following error message: + ``` + advance_reservation: no suitable queues + ``` + Note that the number of nodes displayed by the `qrstat --available` command does not include currently running jobs. Therefore, even if the `qrstat` command shows the number of nodes that can be reserved, the reservation might fail. + +### Show the status of reservations + +To show the current status of reservations, use the `qrstat` command. + +Example) + +``` +[username@login1 ~]$ qrstat +ar-id name owner state start at end at duration sr +---------------------------------------------------------------------------------------------------- + 12345 Reserve_fo root w 07/05/2024 10:00:00 07/12/2024 09:30:00 167:30:00 false +``` + +| Field | Description | +|:-|:-| +| ar-id | Reservation ID (AR-ID) | +| name | Reserve name | +| owner | `root` is always displayed | +| state | Status of reservation | +| start at | Start reservation date (start time is 10:00 a.m. at all time) | +| end at | End reservation date (end time is 9:30 a.m. at all time) | +| duration | Reservation term (hhh:mm:ss) | +| sr | `false` is always displayed | + +If you want to show the number of nodes that can be reserved, use`qrstat` command with `--available` option. + +Checking the Number of Reservable Nodes for Compute Nodes +``` +[username@login1 ~]$ qrstat --available +06/27/2024 441 +07/05/2024 432 +07/06/2024 434 +``` + + +!!! note + The no reservation day is not printed. + +### Cancel a reservation + +!!! warning + Canceling reservation is permitted to a Responsible Person or User Administrators. + +To cancel a reservation, use the `qrdel` command. When canceling reservation with qrdel command, multiple reservation IDs can be specified as comma separated list. If you specify a reservation ID that does not exist or a reservation ID that you do not have deletion permission for, an error occurs and any reservations are not canceled. + +Example) Cancel a reservation + +``` +[username@login1 ~]$ qrdel 12345,12346 +``` + +### How to use reserved node + +To run a job using reserved compute nodes, specify reservation ID with the `-ar` option. + +Example) Execute an interactive job on compute node reserved with reservation ID `12345`. + +``` +[username@login1 ~]$ qrsh -g grpname -ar 12345 -l rt_HF=1 -l h_rt=1:00:00 +[username@hnode001 ~]$ +``` + +Example) Submit a batch job on compute node reserved with reservation ID `12345`. + +``` +[username@login1 ~]$ qsub -P grpname -ar 12345 run.sh +Your job 12345 ("run.sh") has been submitted +``` + +!!! note + - You must specify ABCI group that you specified when making reservation. + - The batch job can be submitted immediately after making reservation, until reservation start time. + - The batch job submitted before resevation start time can be deleted with `qdel` command. + - If a reservation is deleted before reservation start time, batch jobs submitted to the reservation will be deleted. + - At reservation end time, running jobs are killed. + +### Cautions for Using reserved node + +Advance Reservation does not guarantee the health of the compute node for the duration. Some reserved compute nodes may become unavailable while they are in use. Please check the following points. + +* To check the availability status of the reserved compute nodes, using the `qrstat -ar ar_id` command. +* If some reserved compute nodes appear unavailable status the day before the reservation start date, consider canceling the reservation and making the reservation again. +* For example, if the compute node becomes unavailable during the reservation period, please check [Contact](./contact.md) and contact . + +!!! note + - Reservation can be canceled by 9:00 p.m. of the day before the reservation starts. + - Reservation cannot make when there is no free compute node. + - Hardware failures are handled properly. Please refrain from inquiring about unavailability before the day before the reservation starts. + - Requests to change the number of reserved compute nodes or to extend the reservation period can not be accepted. + +Example) hnode001 is available, hnode002 is unavailable +``` +[username@login1 ~]$ qrsub -a 20240705 -d 7 -P grpname -n 2 -N "Reserve_for_AI" +Your advance reservation 12345 has been granted +[username@login1 ~]$ qrstat -ar 12345 +(snip) +message reserved queue gpu@hnode002 is disabled +message reserved queue gpu@hnode002 is unknown +granted_parallel_environment perack01 +granted_slots_list gpu@hnode001=80,gpu@hnode002=80 +``` + +## Accounting (Under Update) + +### Spot Service + +In On-demand and Spot services, when starting a job, the ABCI point scheduled +for job is calculated by limited value of elapsed time, and subtract processing is executed. +When a job finishes, the ABCI point is calculated again by actual elapsed time, and repayment process is executed. + +The calculation formula of ABCI point for using On-demand and Spot services is as follows: + +> [Service charge coefficient](#job-services) +> × [Resource type charge coefficient](#available-resource-types) +> × POSIX priority charge coefficient(1.0 or 1.5) +> × Number of resource type +> × max(Elapsed time[sec], Minimum Elapsed time[sec]) +> × Utilization class coefficient(Standard Utilization:1.0, Development Acceleration Utilization:0.5) +> ÷ 3600 + +!!! note + * The five and under decimal places is rounding off. + * If the elapsed time of job execution is less than the minimum elapsed time, ABCI point calculated based on the minimum elapsed time. + +### Reserved Service + +In Reserved service, when completing a reservation, the ABCI point is calculated by +a period of reservation, end subtract processing is executed. +The repayment process is not executed unless reservation is cancelled. +The points are counted as the usage points of the person responsible for the use of the group. + +The calculation formula of ABCI point for using Reserved service is follows: + +> [Service charge coefficient](#job-services) +> × [Resource type charge coefficient](#available-resource-types) +> × number of reserved nodes +> × number of reserved days +> × Utilization class coefficient(Standard Utilization:1.0, Development Acceleration Utilization:0.5) +> × 24 + +!!! note + Reservation for Compute Node is treated as resource type rt_HF. diff --git a/v3/en/docs/system-overview.md b/v3/en/docs/system-overview.md new file mode 100644 index 000000000..4eea4a6ac --- /dev/null +++ b/v3/en/docs/system-overview.md @@ -0,0 +1,137 @@ +# ABCI System Overview + +## System Architecture + +The ABCI system consists of 766 compute nodes with 6,128 NVIDIA H200 GPU accelerators and other computing resources, 75PB of physical storage, InfiniBand network that connects these elements at high speed, firewall, and so on. It also includes software to make the best use of these hardware. And, the ABCI system uses SINET6, the Science Information NETwork, to connect to the Internet at 100 Gbps. + +## Computing Resources + +Below is a list of the computational resources of the ABCI system. + +| Node Type | Hostname | Description | # | +|:--|:--|:--|:--| +| Access Server | *as.v3.abci.ai* | SSH server for external access | 2 | +| Interactive Node | *login* | Login server, the frontend of the ABCI system | 5 | +| Compute Node (H) | *hnode001*-*hnode108*[^1] | Server w/ NVIDIA H200 GPU accelerators | 108 | + +[^1]: 766 compute nodes (H) will become available around January 2025. + +!!! note + Due to operational and maintenance reasons, some computing resources may not be provided. + +Among them, each interactive node and compute node (H) are equipped with InfiniBand HDR (200 Gbps) and are connected to Storage Systems described later by InfiniBand switch group. +Also, each compute node (H) is equipped with 8 port of InfiniBand NDR (200 Gbps) and the compute nodes (H) are connected by InfiniBand switch. + +Below are the details of these nodes. + +### Interactive Node + +The interactive node of ABCI system consists of HPE ProLiant DL380 Gen11. +The interactive node is equipped with two Intel Xeon Platinum 8468 Processors and approximately 1024 GB of main memory available. + +The specifications of the interactive node are shown below: + +| Item| Description | # | +|:--|:--|:--| +| CPU | Intel Xeon Platinum 8468 Processor 2.1 GHz, 48 Cores | 2 | +| Memory | 64 GB DDR5-4800 | 16 | +| SSD | SAS SSD 960 GB | 2 | +| SSD | NVMe SSD 3.2 TB | 4 | +| Interconnect | InfiniBand HDR (200 Gbps) | 2 | +| | 10GBASE-SR | 1 | + +Users can login to the interactive node, the frontend of the ABCI system, using SSH tunneling via the access server. + +The interactive node allows users to interactively execute commands, and create and edit programs, submit jobs, and display job statuses. The interactive node does not have a GPU, but users can use it to develop programs for compute nodes (H). + +Please refer to [Getting Started ABCI](getting-started.md) for details of login method and [Job Execution](job-execution.md) for details of job submission method. + +!!! warning + Do not run high-load tasks on the interactive node, because resources such as CPU and memory of the interactive node are shared by many users. If you want to perform high-load pre-processing and post-processing, please the compute nodes. + Please note that if you run a high-load task on the interactive node, the system will forcibly terminate it. + +### Compute Node + +To execute the program for the compute node, submit the program to the job management system as a batch job or an interactive job. Interactive jobs allow you to compile and debug programs, and run interactive applications, visualization software and so on. For details, refer to [Job Execution](job-execution.md). + +#### Compute Node (H) + +The compute node (H) of ABCI system consists of HPE Cray XD670. +The compute node (H) is equipped with two Intel Xeon Platinum 8558 Processors and eight NVIDIA H200 GPU accelerators. In the entire system, the total number of CPU cores is 73,536 cores, and the total number of GPUs is 6,128. + +The specifications of the compute node (H) are shown below: + +| Item | Description | # | +|:--|:--|:--| +| CPU | Intel Xeon Platinum 8558 2.1GHz, 48cores | 2 | +| GPU | NVIDIA H200 SXM 141GB | 8 | +| Memory | 64 GB DDR5-5600 4400 MHz | 32 | +| SSD | NVMe SSD 7.68 TB | 2 | +| Interconnect | InfiniBand NDR (200 Gbps) | 8 | +| | InfiniBand HDR (200 Gbps) | 1 | +| | 10GBASE-SR | 1 | + + +## Storage Systems + +The ABCI system has three storage systems for storing large amounts of data used for AI and Big Data applications, and these are used to provide shared file systems. Combined, /home, /groups, and /groups_s3 have an effective capacity of approximately 74 PB. + +| # | Storage System | Media | Usage | +|:--|:--|:--|:--| +| 1 | DDN ES400NVX2 | 61.44TB NVMe SSD x256 | Home area(/home) | +| 2 | DDN ES400NVX2 | 61.44TB NVMe SSD x1280 | Group area(/groups) | +| 3 | DDN ES400NVX2 | 30.72TB NVMe SSD x48 | ABCI Object area(/groups_s3) | + +Below is a list of shared file systems provided by the ABCI system using the above storage systems. + +| Usage | Mount point | Effective capacity | File system | Notes | +|:--|:--|:--|:--|:--| +| Home area | /home | 10 PB | Lustre | | +| Group area | /groups | 63 PB | Lustre | | +| Archive | /home-2.0 | 0.5 PB | Lustre | Read-only. Home area used in ABCI 2.0 | +| Archive | /groups-2.0 | 10.8 PB | Lustre | Read-only. Group area used in ABCI 2.0 | +| ABCI Object area | /groups_s3 | 1 PB | Lustre | | + + +Interactive nodes, and compute nodes (H) mount the shared file systems, and users can access these file systems from common mount points. + +Besides this, these nodes each have local storage that can be used as a local scratch area. The list is shown below. + +| Node type | Mount point | Capacity | File system | Notes | +|:--|:--|:--|:--|:--| +| Interactive node | /local | 12 TB | XFS | | +| Compute node (H) | /local1 | 7 TB | XFS | | +| | /local2 | 7 TB | XFS | Includes BeeGFS | + +## Software + +The software available on the ABCI system is shown below. Details on the version information are scheduled to be released by January 2025. + +| Category | Software | Interactive Node | Compute Node (H) | +|:--|:--|:--|:--| +| OS | Rocky Linux | - | 9.4 | +| OS | Red Hat Enterprise Linux | 9.4 | - | +| Job Scheduler | Altair PBS Professional | | | +| Development Environment | CUDA Toolkit | | | +| | Intel oneAPI
(compilers and libraries) | | | +| | Python | | | +| | Ruby | | | +| | R | | | +| | Java | | | +| | Scala | | | +| | Perl | | | +| | Go | | | +| File System | DDN Lustre | | | +| | BeeOND | | | +| Object Storage | DDN S3 API | | | +| Container | SingularityCE | | | +| MPI | Intel MPI | | | +| Library | cuDNN | | | +| | NCCL | | | +| | gdrcopy | | | +| | UCX | | | +| | Intel MKL | | | +| Utility | aws-cli | | | +| | s3fs-fuse | | | +| | rclone | | | + diff --git a/v3/en/mkdocs.yml b/v3/en/mkdocs.yml new file mode 100644 index 000000000..952978e4a --- /dev/null +++ b/v3/en/mkdocs.yml @@ -0,0 +1,34 @@ +site_name: ABCI 3.0 User Guide +site_description: ABCI 3.0 User Guide, English version +site_author: AIST +site_url: https://docs.abci.ai/v3/en +copyright: 'Copyright © 2024 National Institute of Advanced Industrial Science and Technology (AIST) / AIST Solutions Co. (AISol)' +nav: + - 'Introduction': 'index.md' + - 'ABCI System Overview': 'system-overview.md' + - 'Getting Started ABCI': 'getting-started.md' + - 'Job Execution': 'job-execution.md' + - 'Contact': 'contact.md' +extra: + alternate: + - name: 'English' + link: 'https://docs.abci.ai/v3/en/' + - name: '日本語' + link: 'https://docs.abci.ai/v3/ja/' +theme: + name: 'material' + favicon: 'img/favicon.png' + logo: 'img/logo.png' + palette: + primary: 'red' + features: + - toc.integrate + custom_dir: overrides +markdown_extensions: + - admonition + - codehilite + - attr_list + - footnotes +plugins: + - search: + lang: en diff --git a/v3/en/overrides/main.html b/v3/en/overrides/main.html new file mode 100644 index 000000000..add808541 --- /dev/null +++ b/v3/en/overrides/main.html @@ -0,0 +1,5 @@ +{% extends "base.html" %} + +{% block extrahead %} + +{% endblock %} diff --git a/v3/ja/docs/contact.md b/v3/ja/docs/contact.md new file mode 100644 index 000000000..b798e858e --- /dev/null +++ b/v3/ja/docs/contact.md @@ -0,0 +1,28 @@ +# お問い合わせ + +ABCIユーザサポートでは、以下のお問い合わせやご報告を受け付けております(平日9:00-17:00)。 + +* 利用手順に関する問い合わせ + * ログイン方法 + * ジョブの投入方法 + * データ転送方法など +* ソフトウェア環境に関する問い合わせ + * 導入済みのソフトウェア環境 + * 典型的なフレームワークソフトウェアの導入手順等 +* ソフトウェア障害 + * インストールされているソフトウェアで起こる問題 + * バッチジョブ実行に関する問題 +* ハードウェア障害 +* ネットワーク障害 +* 本利用手引きに関する問い合わせ + +お問い合わせやご報告の際は下記の情報を含めて までご連絡ください。 + +``` +[氏名]: +[ABCIアカウント名]: +[ABCIグループ名]: +[登録されている所属機関]: +[登録されているメールアドレス]: +[質問内容]: 現象発生日時、ジョブID、引数も含むコマンド履歴、エラーメッセージを含む出力等 +``` diff --git a/v3/ja/docs/getting-started.md b/v3/ja/docs/getting-started.md new file mode 100644 index 000000000..28556fb74 --- /dev/null +++ b/v3/ja/docs/getting-started.md @@ -0,0 +1,126 @@ +# ABCIの利用開始 + +## インタラクティブノードへの接続 {#connecting-to-interactive-node} + +ABCIシステムのフロントエンドであるインタラクティブノード(ホスト名: *login*)に接続するには、二段階のSSH公開鍵認証による接続を行います。 + +1. SSH公開鍵認証を用いてアクセスサーバ(ホスト名: *as.v3.abci.ai*)にログインして、ローカルPCとインタラクティブノードの間にSSHポートフォワーディングによるトンネリング(以下「SSHトンネル」という)を作成 +2. SSHトンネルを介して、SSH公開鍵認証を用いてインタラクティブノード(*login*)にログイン + +なお本章では、ABCIのサーバ名は *イタリック* で表記します。 + +### 前提 {#prerequisites} + +インタラクティブノードに接続するには、以下が必要になります。 + +* SSHクライアント: Linux、macOSを含むUNIX系OS、Windows 10 version 1803 (April 2018 Update)以降など、ほとんどのPCには、デフォルトでSSHクライアントがインストールされています。インストールされているかどうかを確認するには、コマンドラインから``ssh``コマンドを実行してください。 +* SSHプロトコルバージョン: SSHプロトコルバージョン2のみサポートしています。 +* 安全なSSH公開鍵・秘密鍵ペアの生成: ABCIで利用可能な鍵ペアは以下のとおりです。 + * RSA鍵 (2048bit以上) + * ECDSA鍵 (256bit、384bit、または521bit) + * Ed25519鍵 +* SSH公開鍵の登録については、運用担当者(abci3-qa@abci.ai )までご連絡ください。 + +!!! note + SSHクライアントとして、Tera TermやPuTTYも利用可能です。 + +### SSHクライアントによるログイン {#login-using-an-ssh-client} + +以下では、SSHクライアントを用いて、(1) アクセスサーバでSSHトンネルの作成後にインタラクティブノードにログインする方法と、(2) OpenSSH 7.3以降で実装されたProxyJumpを使ったより簡便なログイン方法を説明します。 + +#### 一般的なログイン方法 {#general-method} + +以下のコマンドでアクセスサーバ(*as.v3.abci.ai*)にログインし、SSHトンネルを作成します。 + +``` +[yourpc ~]$ ssh -i /path/identity_file -L 10022:login:22 -l username as.v3.abci.ai +The authenticity of host 'as.v3.abci.ai (0.0.0.1)' can't be established. +RSA key fingerprint is XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX. <- 初回ログイン時のみ表示 +Are you sure you want to continue connecting (yes/no)? <- yesを入力 +Warning: Permanently added ‘XX.XX.XX.XX' (RSA) to the list of known hosts. +Enter passphrase for key '/path/identity_file': <- パスフレーズ入力 +``` + + +アクセスサーバへのログインが成功すると、ターミナル上に下記のメッセージが表示されます。 + +``` +Welcome to ABCI access server. +Please press any key if you disconnect this session. +``` + +!!! warning + 上記状態で何らかのキーを入力するとSSH接続が切断されてしますので注意してください。 + +続いて、別のターミナルを起動し、SSHトンネルを用いてインタラクティブノードにログインします。 + +``` +[yourpc ~]$ ssh -i /path/identity_file -p 10022 -l username localhost +The authenticity of host 'localhost (127.0.0.1)' can't be established. +RSA key fingerprint is XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX. <- 初回ログイン時のみ表示 +Are you sure you want to continue connecting (yes/no)? <- yesを入力 +Warning: Permanently added 'localhost' (RSA) to the list of known hosts. +Enter passphrase for key '-i /path/identity_file': <- パスフレーズ入力 +[username@login1 ~]$ +``` + +#### ProxyJumpの使用 {#proxyjump} + +ここではOpenSSH 7.3で実装されたProxyJumpを使ったログイン方法を説明します。Windows Subsystem for Linux (WSL)でも同様のログイン方法が使えます。 + +まずローカルPCの``$HOME/.ssh/config``に以下の記述を行います。 + +``` +Host abci + HostName login + User username + ProxyJump %r@as.v3.abci.ai + IdentityFile /path/to/identity_file + HostKeyAlgorithms ssh-ed25519 + +Host as.v3.abci.ai + IdentityFile /path/to/identity_file +``` + +以降は、以下のコマンドのみでログインできます。 + +``` +[yourpc ~]$ ssh abci +``` + +Windows 10 バージョン 1803 以降に標準でバンドルされている OpenSSH_for_Windows_7.7p1 では ProxyJump が機能しないため、代わりに ProxyCommand を使用してください。以下に ProxyCommand を使った config ファイルの例を示します。ssh.exe は絶対パスで記述して下さい。 + +``` +Host abci + HostName login + User username + ProxyCommand C:\WINDOWS\System32\OpenSSH\ssh.exe -W %h:%p %r@as.v3.abci.ai + IdentityFile C:\path\to\identity_file + +Host as.v3.abci.ai + IdentityFile C:\path\to\identity_file +``` + +## インタラクティブノードへのファイル転送 {#file-transfer-to-interactive-node} + +ローカルPCとABCIシステム間でファイル転送をするには、`scp`(`sftp`)コマンドを利用します。この場合もSSHトンネルを介して行う必要があります。 + +SSHトンネルの設定後、以下のように実行します。 + +``` +[yourpc ~]$ scp -i /path/identity_file -P 10022 local-file username@localhost:remote-dir +Enter passphrase for key: <- パスフレーズを入力 + +local-file 100% |***********************| file-size transfer-time +``` + +ProxyJumpが使える場合は、SSHトンネルを明示的に設定する必要はありません。[ProxyJumpの使用](#proxyjump)で説明したとおり``$HOME/.ssh/config``の設定がしてあれば、直接`scp` (`sftp`)コマンドでファイル転送が行えます。 + +``` +[yourpc ~]$ scp local-file abci:remote-dir +``` + +## ログインシェル {#login-shell} + +ABCIシステムのデフォルトログインシェルは、bashが設定されています。 +ログインシェルの変更については、運用担当者(abci3-qa@abci.ai )までご連絡ください。 diff --git a/v3/ja/docs/img/abci30_dc.jpg b/v3/ja/docs/img/abci30_dc.jpg new file mode 100644 index 000000000..802cf6975 Binary files /dev/null and b/v3/ja/docs/img/abci30_dc.jpg differ diff --git a/v3/ja/docs/img/abci_dc.jpg b/v3/ja/docs/img/abci_dc.jpg new file mode 100644 index 000000000..1ba6d03a3 Binary files /dev/null and b/v3/ja/docs/img/abci_dc.jpg differ diff --git a/v3/ja/docs/img/favicon.png b/v3/ja/docs/img/favicon.png new file mode 100644 index 000000000..47b7cf9a5 Binary files /dev/null and b/v3/ja/docs/img/favicon.png differ diff --git a/v3/ja/docs/img/logo.png b/v3/ja/docs/img/logo.png new file mode 100644 index 000000000..76bcd3271 Binary files /dev/null and b/v3/ja/docs/img/logo.png differ diff --git a/v3/ja/docs/index.md b/v3/ja/docs/index.md new file mode 100644 index 000000000..9b274eaa1 --- /dev/null +++ b/v3/ja/docs/index.md @@ -0,0 +1,10 @@ +# はじめに + +[AI橋渡しクラウド(AI Bridging Cloud Infrastructure、以下「ABCI」という)](https://abci.ai/ja/)は、[国立研究開発法人 産業技術総合研究所](https://www.aist.go.jp/)が構築し、[AIST Solutions](https://www.aist-solutions.co.jp/)が運用する、AI技術開発・橋渡しのためのオープンな計算インフラストラクチャです。ABCIは、2018年8月に本格運用を開始しました。 + +このユーザガイドは、ABCI 3.0の技術的詳細や利用方法について説明しています。ABCI 3.0を利用する方は是非ご一読ください。システムについての理解を深めるのに役立ちます。 + +!!! note + 本書では、単純のために *ABCI 3.0* のことを以降 *ABCI* と呼びます。 + +![ABCI Overview](img/abci30_dc.jpg) diff --git a/v3/ja/docs/job-execution.md b/v3/ja/docs/job-execution.md new file mode 100644 index 000000000..dd3b5e6ad --- /dev/null +++ b/v3/ja/docs/job-execution.md @@ -0,0 +1,458 @@ +# ジョブ実行 + +## ジョブサービス {#job-services} + +ABCIシステムでは、以下のジョブサービスが利用可能です。 + +| サービス名 | 説明 | サービス課金係数 | 利用形態 | +|:--|:--|:--|:--| +| On-demand | インタラクティブジョブの実行サービス | 1.0 | インタラクティブジョブ | +| Spot | バッチジョブの実行サービス | 1.0 | バッチジョブ | +| Reserved | 事前予約型ジョブサービス | 1.5 | 事前予約 | + +各ジョブサービスで利用可能なジョブ実行リソース、制限事項等については、[ジョブ実行リソース](#job-execution-resource)を参照してください。また、課金については、[課金](#accounting)を参照してください。 + +### On-demandサービス {#on-demand-service} + +プログラムのコンパイルやデバッグ、対話的なアプリケーション、可視化ソフトウェアの実行に適したインタラクティブジョブの実行サービスです。 + +利用方法は[インタラクティブジョブ](#interactive-jobs)、インタラクティブジョブの実行オプションの詳細は[ジョブ実行オプション](#job-execution-options)をそれぞれ参照してください。 + +### Spotサービス {#spot-service} + +対話的な処理の必要がないアプリケーションの実行に適したバッチジョブの実行サービスです。On-demandサービスに比べてより長時間のジョブや、より並列度の高いジョブの実行が可能です。 + +利用方法は[バッチジョブ](#batch-jobs)、バッチジョブの実行オプションの詳細は[ジョブ実行オプション](#job-execution-options)をそれぞれ参照してください。 + +### Reservedサービス(1月中旬から利用可能です。) {#reserved-service} + +計算リソースを日単位で事前に予約して利用できるサービスです。On-demandおよびSpotサービスの混雑の影響を受けることなく、計画的なジョブ実行が可能となります。また、Spotサービスの経過時間制限以上の予約日数が取れるため、より長時間のジョブ実行が可能です。 + +Reservedサービスでは、まず事前予約を行って予約ID (AR-ID)を取得し、この予約IDを用いてインタラクティブジョブやバッチジョブの実行を行います。 + +予約方法は[事前予約](#advance-reservation)を参照してください。インタラクティブジョブやバッチジョブの利用方法、実行オプションはOn-demandおよびSpotサービスと共通です。 + +## ジョブ実行リソース {#job-execution-resource} + +ABCIシステムでは、計算リソースを論理的に分割した資源タイプを利用して、ジョブサービスにシステムリソースを割り当てます。On-demand、Spot、Reservedのいずれのサービスを利用する場合も、利用者は利用したい資源タイプとその数量を指定して、ジョブの投入/実行、計算ノードの予約を行います。 + +以下では、まず利用可能な資源タイプについて解説し、続いて同時に利用可能な資源量、経過時間およびノード時間積、ジョブ投入数および実行数に関する制限事項等を説明します。 + +### 利用可能な資源タイプ {#available-resource-types} + +ABCIシステムには、次の資源タイプが用意されています。 + + + +| 資源タイプ名 | 説明 | 割り当て物理CPUコア数 | 割り当てGPU数 | メモリ (GB) | ローカルストレージ (TB) | 資源タイプ課金係数 | +|:--|:--|:--|:--|:--|:--|:--| +| rt\_HF | ノード占有 | 96 | 8 | 1728 | 14 | 15 | +| rt\_HG | ノード共有
GPU利用 | 8 | 1 | 144 | 1.4 | 3 | +| rt\_HC | ノード共有
CPUのみ利用 | 16 | 0 | 288 | 1.4 | 1 | + + +### 同時に利用可能なノード数 {#number-of-nodes-available-at-the-same-time} + +ジョブサービスごとに利用可能な資源タイプとノード数の組み合わせを以下に示します。同時に複数ノードを利用する場合は、資源タイプ`rt_HF`を指定する必要があります。 + +| サービス名 | 資源タイプ名 | ノード数 | +|:--|:--|--:| +| Reserved | rt\_HF | 1-予約ノード数 | + +### 経過時間およびノード時間積の制限 {#elapsed-time-and-node-time-product-limits} + +ジョブサービス、資源タイプに応じて、ジョブの経過時間制限 (実行可能時間の制限) があります。上限値およびデフォルト値を以下に示します。 + +| サービス名 | 資源タイプ名 | 経過時間制限 (上限値/デフォルト) | +|:--|:--|:--| +| Spot | rt\_HF, rt\_HG, rt\_HC | 168:00:00/1:00:00 | +| On-demand | rt\_HF, rt\_HG, rt\_HC | 12:00:00/1:00:00 | + +また、On-demandおよびSpotサービスで、複数ノードを使用するジョブを実行する場合には、ノード時間積(使用ノード数 × 実行時間)に以下の制限があります。 + +| サービス名 | ノード時間積の最大値 | +|:--|--:| +| Spot | 21504 nodes · hours | +| On-demand | 12 nodes · hours | + +!!! note + Reservedサービスでは経過時間に制限はありませんが、予約の終了と共にジョブは強制終了します。 + Reservedサービスに関する制限の詳細については[事前予約](#advance-reservation)を参照してください。 + +### ジョブ投入数および実行数の制限 {#limitation-on-the-number-of-job-submissions-and-executions} + +1ユーザが同時に投入・実行できるジョブ数に以下の制限があります。 +予約ノードに投入されたジョブもOn-demandやSpotのジョブと同様にジョブ数のカウントに含まれ、本制約を受けます。 + +| 制限項目 | 制限値 | +|:--|:--| +| 1ユーザあたりの同時投入可能ジョブ数 | 1000 | +| 1ユーザあたりの同時実行ジョブ数 | 200 | +| 1アレイジョブあたりの最大投入可能タスク数 | 75000 | + +2023年度まで資源タイプごとのジョブ実行数に制限はなく、利用可能な計算リソースから順次割り当てていましたが、 +2024年度以降、資源タイプごとにシステムあたりの同時実行ジョブ数に制限を設けます。 +なお、対象となるジョブサービスはOn-demandサービスとSpotサービスとなります。 +Reservedサービスで予約ノードに投入されたジョブはカウントに含まれません。 + +| 資源タイプ | システムあたりの同時実行ジョブ数の制限値 | +|:--|:--| +| rt_HF | 736 | +| rt_HG | 240 | +| rt_HC | 60 | + +## ジョブ実行オプション {#job-execution-options} + +インタラクティブジョブ、バッチジョブの実行には`qsub`コマンドを使用します。 + +`qsub`コマンドに関する、主要なオプションを以下に示します。 + +| オプション | 説明 | +|:--|:--| +| -P *group* | ABCI利用グループを*group*で指定します。自分のABCIアカウントが所属しているABCIグループのみ指定できます。本オプションは指定必須です。 | +| -q *resource_type* | 資源タイプ*resource_type*を指定します。本オプションは指定必須です。 | +| -l select=*num*[*:ncpus=num_cpus:mpiprocs=num_mpi:ompthreads=num_omp*] | ノード数を*num*で、資源タイプに対応したCPU数を*num_cpus*で、MPIプロセス数を*num_mpi*で、スレッド数を*num_omp*で指定します。本オプションは指定必須です。 | +| -l walltime=[*HH:MM:*]*SS* | 経過時間制限値を指定します。[*HH:MM:*]*SS*で指定することができます。ジョブの実行時間が指定した時間を超過した場合、ジョブは強制終了されます。 | +| -N name | ジョブ名を*name*で指定します。デフォルトは、ジョブスクリプト名です。 | +| -o *stdout_name* | 標準出力名を*stdout_name*で指定します。 | +| -j oe | 標準エラー出力を標準出力にマージします。 | + +## インタラクティブジョブ {#interactive-jobs} + +インタラクティブジョブを実行するには、`qsub`コマンドに`-I`オプションを付け加えます。 + +``` +$ qsub -I -P group -q resource_type -l select=num [options] +``` + +例) インタラクティブジョブを実行 (On-demandサービス) + +``` +[username@login1 ~]$ qsub -I -P grpname -q rt_HF -l select=1 +[username@hnode001 ~]$ +``` + +!!! note + On-demandサービスでは、インタラクティブジョブ実行時にABCIポイントが不足している場合、ジョブの実行に失敗します。 + +## バッチジョブ {#batch-jobs} + +ABCIシステムでバッチジョブを実行する場合、実行するプログラムとは別にジョブスクリプトを作成します。 +ジョブスクリプトには利用する資源タイプ名、経過時間制限値などの資源などのジョブ実行オプションを記述した上で、 +実行するコマンド列を記載します。 + +```bash +#!/bin/sh +#PBS -q rt_HF +#PBS -l select=1 +#PBS -l walltime=1:23:45 +#PBS -P grpname + +cd ${PBS_O_WORKDIR} + +[Environment Modules の初期化] +[Environment Modules の設定] +[プログラムの実行] +``` + +例) CUDAを利用したプログラムを実行するジョブスクリプト例 + +```bash +#!/bin/sh +#PBS -q rt_HF +#PBS -l select=1 +#PBS -l walltime=1:23:45 +#PBS -P grpname + +cd ${PBS_O_WORKDIR} + +source /etc/profile.d/modules.sh +module load cuda/12.6/12.6.1 +./a.out +``` + +### バッチジョブの投入 {#submit-a-batch-job} + +バッチジョブを実行するには、`qsub`コマンドを使用します。実行後はジョブIDが出力されます。 + +``` +$ qsub script_name +``` + +例) ジョブスクリプトrun.shをバッチジョブとして投入 (Spotサービス) + +``` +[username@login1 ~]$ qsub run.sh +1234.pbs1 +``` + +!!! note + Spotサービスでは、バッチジョブ投入時にABCIポイントが不足している場合、バッチジョブの投入に失敗します。 + +### ジョブ投入時のエラー {#job-submission-error} + +バッチジョブの投入に成功した場合、`qsub`コマンドの終了ステータスは`0`となります。 +失敗した場合は0以外の値となり、エラーメッセージが出力されます。 + +### バッチジョブの状態の確認 {#show-the-status-of-batch-jobs} + +バッチジョブを状態を確認するには、`qstat`コマンドを利用します。 + +``` +$ qstat [options] +``` + +`qstat`コマンドの主要なオプションを以下に示します。 + +| オプション | 説明 | +|:--|:--| +| -f | ジョブに関する追加情報を表示します。 | +| -a | 待機中および実行中のジョブを、追加情報を含めて表示します。 | + +例) + +``` +[username@login1 ~]$ qstat +Job id Name User Time Use S Queue +--------------------- ---------------- ---------------- -------- - ----- +12345.pbs1 run.sh username 00:01:23 R rt_HF +``` + +| 項目 | 説明 | +|:--|:--| +| Job id | ジョブID | +| Name | ジョブ名 | +| User | ジョブのオーナー | +| Time Use | ジョブのCPU利用時間 | +| S | ジョブ状態 (R: 実行中, Q: 待機中, F: 完了, S: 一時停止, E: 終了中) | +| Queue | 資源タイプ | + + +### バッチジョブの削除 {#delete-a-batch-job} + +バッチジョブを削除するには、`qdel`コマンドを利用します。 + +``` +$ qdel job_id +``` + +例) バッチジョブを削除 + +``` +[username@login1 ~]$ qstat +Job id Name User Time Use S Queue +--------------------- ---------------- ---------------- -------- - ----- +12345.pbs1 run.sh username 00:01:23 R rt_HF +[username@login1 ~]$ qdel 12345.pbs1 +[username@login1 ~]$ +``` + + +### バッチジョブの標準出力と標準エラー出力 {#stdout-and-stderr-of-batch-jobs} + +バッチジョブの標準出力ファイルと標準エラー出力ファイルは、ジョブ実行ディレクトリもしくは、 +ジョブ投入時に指定されたファイルに出力されます。 +標準出力ファイルにはジョブ実行中の標準出力、標準エラー出力ファイルにはジョブ実行中のエラーメッセージが出力されます。 +ジョブ投入時に、標準出力ファイル、標準エラー出力ファイルを指定しなかった場合は、以下のファイルに出力されます。 + +- *JOB_NAME*.o*NUM_JOB_ID* --- 標準出力ファイル +- *JOB_NAME*.e*NUM_JOB_ID* --- 標準エラー出力ファイル + +例)ジョブ名がrun.sh、ジョブIDが`12345.pbs1`の場合 + +- 標準出力ファイル名:run.sh.o12345 +- 標準エラー出力ファイル名:run.sh.e12345 + +## 事前予約(更新中) {#advance-reservation} + +Reservedサービスでは、計算ノードを事前に予約して計画的なジョブ実行が可能となります。 + +本サービスで予約可能なノード数およびノード時間積は、以下表の「1予約あたりの最大予約ノード数」、「1予約あたりの最大予約ノード時間積」が上限です。また、本サービスでは、利用者は予約ノード数を上限とするジョブしか実行できません。なお、システム全体で「システムあたりの最大同時予約可能ノード数」に上限があるため、「1予約あたりの最大予約ノード数」を下回る予約しかできない場合や、予約自体ができない場合があります。予約した計算ノードにて[各資源タイプ](#available-resource-types)が利用可能です。 + +| 項目 | 設定値 | +|:--|:--| +| 最小予約日数 | 1日 | +| 最大予約日数 | 60日 | +| ABCIグループあたりの最大同時予約可能ノード数 | 192ノード | +| システムあたりの最大同時予約可能ノード数 | 384ノード | +| 1予約あたりの最小予約ノード数 | 1ノード | +| 1予約あたりの最大予約ノード数 | 192ノード | +| 1予約あたりの最大予約ノード時間積 | 64,512ノード時間積 | + +### 予約の実行 {#make-a-reservation} + +計算ノードを予約するには、`qrsub`コマンドを使用します。 +予約が完了すると、予約IDが発行されますので、予約した計算ノードを使用する際にこの予約IDを指定してください。 + +!!! warning + 計算ノードの予約は、利用責任者もしくは利用管理者のみが実施できます。 + +``` +$ qrsub options +``` + +| オプション | 説明 | +|:--|:--| +| -a *YYYYMMDD* | 予約開始日を*YYYYMMDD*で指定します。 | +| -d *days* | 予約日数を*days*で指定します。 -eオプションとは排他です。 | +| -e *YYYYMMDD* | 予約終了日を*YYYYMMDD*指定します。-dオプションとは排他です。 | +| -g *group* | ABCI利用グループを*group*で指定します。 | +| -N *name* | 予約名を*name*で指定します。英数字と記号`=+-_.`が指定可能で、最大64文字まで指定できます。ただし、先頭の文字に数字を指定することはできません。 | +| -n *nnnode* | 予約するノード数を*nnnode*で指定します。 | +| -l *resource_type* | 予約する資源タイプを*resource_type*で指定します。 省略した場合は、rt_HF が指定されたとみなします。| + +例) 2024年7月5日から1週間 (7日間) 計算ノード(H)4台を予約 + +``` +[username@login1 ~]$ qrsub -a 20240705 -d 7 -P grpname -n 4 -N "Reserve_for_AI" +Your advance reservation 12345 has been granted +``` + + +計算ノードの予約が完了した時点でABCIポイントを消費します。 +また、発行された予約IDは予約時に指定したABCIグループに所属するABCIアカウントでご利用いただけます。 + +!!! note + 予約可能なノード数が`qrsub`コマンドで指定したノード数より少ない場合、以下のエラーメッセージを出力して予約取得に失敗します。 + ``` + advance_reservation: no suitable queues + ``` + なお、`qrstat --available` コマンドで表示されるノード数には、現在実行中のジョブは加味されておりません。そのため、qrstat コマンドで「予約可能なノード数」が表示されていても、予約に失敗することがあります。 + +### 予約状態の確認 {#show-the-status-of-reservations} + +予約状態を確認するには、`qrstat`コマンドを使用します。 + +例) + +``` +[username@login1 ~]$ qrstat +ar-id name owner state start at end at duration sr +---------------------------------------------------------------------------------------------------- + 12345 Reserve_fo root w 07/05/2024 10:00:00 07/12/2024 09:30:00 167:30:00 false +``` + +| 項目 | 説明 | +|:--|:--| +| ar-id | 予約ID (AR-ID) | +| name | 予約名 | +| owner | 常にrootと表示 | +| state | 予約状態 | +| start at | 予約開始日 (予約開始時刻は常に午前10時) | +| end at | 予約終了日 (予約終了時刻は常に午前9時30分) | +| duration | 予約期間 (hhh:mm:ss) | +| sr | 常にfalseと表示 | + +システムあたりの予約可能ノード数を確認するには、`qrstat`コマンドの`--available`オプションを使用します。 + +計算ノードの予約可能ノード数の確認 +``` +[username@login1 ~]$ qrstat --available +06/27/2024 441 +07/05/2024 432 +07/06/2024 434 +``` + + +!!! note + 計算ノードが予約されていない日付は表示されません。 + +### 予約の取り消し {#cancel-a-reservation} + +!!! warning + 予約の取り消しは利用責任者もしくは利用管理者のみが実施できます。 + +予約を取り消すには、`qrdel`コマンドを使用します。`qrdel`コマンドでの予約取り消しは、「,(カンマ)」区切りのリストとして複数指定できます。指定したar_idの中に1つでも存在しない予約ID、もしくは削除権限のない予約IDが指定されている場合は、エラーとなり削除は実行されません。 + +例) 予約を取り消し + +``` +[username@login1 ~]$ qrdel 12345,12346 +``` + +### 予約ノードの使い方 {#how-to-use-reserved-node} + +予約した計算ノードには、`-ar`オプションにて予約IDを指定してジョブを投入します。 + +例) 予約ID`12345`で予約された計算ノードでインタラクティブジョブを実行 + +``` +[username@login1 ~]$ qrsh -g grpname -ar 12345 -l rt_HF=1 -l h_rt=1:00:00 +[username@hnode001 ~]$ +``` + +例) ジョブスクリプトrun.shを予約ID`12345`で予約された計算ノードにバッチジョブとして投入 + +``` +[username@login1 ~]$ qsub -P grpname -ar 12345 run.sh +Your job 12345 ("run.sh") has been submitted +``` + +!!! note + - 予約作成時に指定したABCIグループを指定する必要があります。 + - バッチジョブは予約作成直後から投入できますが、予約開始時刻になるまで実行されません。 + - 予約開始時刻前に投入したバッチジョブは`qdel`コマンドで削除できます。 + - 予約開始時刻前に予約を削除した場合、当該予約に投入されていたバッチジョブは削除されます。 + - 予約終了時刻になると実行中のジョブは強制終了されます。 + +### 予約ノードご利用時の注意 {#cautions-for-using-reserved-node} + +予約は期間中の計算ノードの可用性を保証するものではありません。予約した計算ノードの利用中に一部が利用不可となることがありますので、以下の点をご確認ください。 + +* 予約した計算ノードの利用可否状態は、`qrstat -ar ar_id` コマンドで確認できます。 +* 予約開始前日に一部の予約ノードが利用不可と表示される場合は、予約の取り消し・再度予約をご検討ください。 +* 予約期間中に計算ノードが利用不可となった場合などの時は、[お問い合わせ](./contact.md)のページをご覧の上、 までご連絡ください。 + +!!! note + - 予約の取り消しは予約開始前日の午後9時までになります。 + - 計算ノードの空きが無い場合、予約の作成はできません。 + - ハードウェア障害は適宜対応しております。予約開始前日より前の利用不可に対するお問い合わせはご遠慮願います。 + - 予約している計算ノード数変更や予約期間の延長の依頼は対応不可になります。 + +例) hnode001は利用可能、hnode002は利用不可 +``` +[username@login1 ~]$ qrsub -a 20240705 -d 7 -P grpname -n 2 -N "Reserve_for_AI" +Your advance reservation 12345 has been granted +[username@login1 ~]$ qrstat -ar 12345 +(snip) +message reserved queue gpu@hnode002 is disabled +message reserved queue gpu@hnode002 is unknown +granted_parallel_environment perack01 +granted_slots_list gpu@hnode001=80,gpu@hnode002=80 +``` + +## 課金(更新中) {#accounting} + +### Spotサービス {#on-demand-and-spot-services} + +On-demandおよびSpotサービスでは、ジョブ実行開始時にジョブが使用予定のABCIポイントを経過時間制限値を元に計算し、減算処理を実施します。ジョブ実行終了時に実際の経過時間を元にABCIポイントを再計算し、返却処理を実施します。 + +サービスごとの使用ABCIポイントの計算式は以下の通りです。 + +> [サービス課金係数](#job-services) +> × [資源タイプ課金係数](#available-resource-types) +> × POSIX 優先度課金係数 (1.0 or 1.5) +> × 資源タイプ個数 +> × max(経過時間[秒], 最低経過時間[秒]) +> × 利用クラス係数 (標準利用:1.0, 開発加速利用:0.5) +> ÷ 3600 + +!!! note + - 小数点5位以下は切り捨てられます。 + - 最低経過時間より短い経過時間ジョブを実行した場合、ABCIポイントは最低経過時間を元に計算されます。 + +### Reservedサービス {#reserved-service_1} + +Reservedサービスでは、予約完了時に予約期間を元にABCIポイントを計算し、減算処理を実施します。予約の取り消しをしない限り、返却処理は実施されません。予約にて消費するポイントは、グループの利用責任者の消費ポイントとしてカウントされます。 + +サービスごとの使用ABCIポイントの計算式は以下の通りです。 + +> [サービス課金係数](#job-services) +> × [資源タイプ課金係数](#available-resource-types) +> × 予約ノード数 +> × 予約日数 +> × 利用クラス係数 (標準利用:1.0, 開発加速利用:0.5) +> × 24 + +!!! note + 計算ノードの予約は資源タイプrt_HFとして扱われます。 diff --git a/v3/ja/docs/system-overview.md b/v3/ja/docs/system-overview.md new file mode 100644 index 000000000..d246e6afb --- /dev/null +++ b/v3/ja/docs/system-overview.md @@ -0,0 +1,134 @@ +# ABCIシステムの概要 + +## システム全体概要 {#system-architecture} + +ABCIシステムは、合計6,128基のNVIDIA H200 GPUアクセラレーターを備えた766台の計算ノード(H)を始めとする計算リソース、物理容量75PBのストレージ、これらを高速に結合するInfiniBandネットワーク、ファイアウォールなどからなるハードウェアと、これらを最大限活用するためのソフトウェアから構成されます。また、ABCIシステムは学術情報ネットワークSINET6を利用して、100 Gbpsでインターネットに接続しています。 + +## 計算リソース {#computing-resources} + +ABCIシステムの計算リソースの一覧を以下に示します。 + +| 項目 | ホスト名 | 説明 | ノード数 | +|:--|:--|:--|:--| +| アクセスサーバ | *as.v3.abci.ai* | 外部からアクセスするためのSSHサーバ | 2 | +| インタラクティブノード | *login* | ABCIシステムのフロントエンドとなるログインサーバ | 5 | +| 計算ノード(H) | *hnode001*-*hnode108*[^1] | NVIDIA H200 GPUを搭載するサーバ | 108 | + +[^1]: 2025年1月頃に766台の計算ノード(H)が利用可能となります。 + +!!! note + 運用・保守上の合理的理由により、計算リソースの一部が提供されない場合があります。 + +このうち、インタラクティブノードと計算ノード(H)は、それぞれInfiniBand HDR (200 Gbps)を備えており、後述のストレージシステムにInfiniBandスイッチを介して接続されます。 +また、計算ノード(H)は追加でInfiniBand NDR (200 Gbps)を8ポート備えており、計算ノード(H)間がInfiniBandスイッチにより接続されます。 + +以下ではこれらのノードの詳細を示します。 + +### インタラクティブノード {#interactive-node} + +ABCIシステムのインタラクティブノードは、HPE ProLiant DL380 Gen11で構成されています。 +Intel Xeon Platinum 8468プロセッサーを2基搭載し、約1024 GBのメインメモリが利用可能です。 + +インタラクティブノードの構成を以下に示します。 + +| 項目 | 説明 | 個数 | +|:--|:--|:--| +| CPU | Intel Xeon Platinum 8468 Processor 2.1 GHz, 48 Cores | 2 | +| Memory | 64 GB DDR5-4800 | 16 | +| SSD | SAS SSD 960 GB | 2 | +| SSD | NVMe SSD 3.2 TB | 4 | +| Interconnect | InfiniBand HDR (200 Gbps) | 2 | +| | 10GBASE-SR | 1 | + +ABCIシステムのフロントエンドであるインタラクティブノードには、アクセスサーバを経由したSSHトンネリングを用いてログインします。インタラクティブノードではコマンドの対話的実行が可能であり、プログラムの作成・編集、ジョブ投入・表示などを行います。インタラクティブノードにはGPUが搭載されていませんが、インタラクティブノードで計算ノード向けのプログラム開発も可能です。 + +ログイン方法の詳細は[ABCIの利用開始](getting-started.md)、ジョブ投入方法の詳細は[ジョブ実行](job-execution.md)をそれぞれ参照してください。 + +!!! warning + インタラクティブノードのCPUやメモリなどの資源は多くの利用者で共有するため、高負荷な処理は行わないようにしてください。高負荷な前処理、後処理を行う場合は、計算ノードを利用してください。 + インタラクティブノードで高負荷な処理を行った場合、システムにより処理が強制終了されますのでご注意ください。 + +### 計算ノード {#compute-node} + +計算ノード向けのプログラムを実行するには、バッチジョブもしくはインタラクティブジョブとしてジョブ管理システムに処理を依頼します。インタラクティブジョブでは、プログラムのコンパイルやデバッグ、対話的なアプリケーション、可視化ソフトウェアの実行が可能です。詳細は[ジョブ実行](job-execution.md)を参照してください。 + +#### 計算ノード(H) {#compute-node-h} + +計算ノード(H)は、HPE Cray XD670で構成されています。 +計算ノード(H)は、Intel Xeon Platinum 8558プロセッサーを2基、NVIDIA H200 GPUアクセラレーターを8基搭載しています。システム全体では、総CPUコア数は73,536コア、総GPU数は6,128基となります。 + +計算ノード(H)の構成を以下に示します。 + +| 項目 | 説明 | 個数 | +|:--|:--|:--| +| CPU | Intel Xeon Platinum 8558 2.1GHz, 48cores | 2 | +| GPU | NVIDIA H200 SXM 141GB | 8 | +| Memory | 64 GB DDR5-5600 4400 MHz | 32 | +| SSD | NVMe SSD 7.68 TB | 2 | +| Interconnect | InfiniBand NDR (200 Gbps) | 8 | +| | InfiniBand HDR (200 Gbps) | 1 | +| | 10GBASE-SR | 1 | + + +## ストレージシステム {#storage-systems} + +ABCIシステムは、人工知能やビッグデータ応用に用いる大容量データを格納するためのストレージシステムを3基備えており、これらを用いて共有ファイルシステムを提供しています。下記の/home、 /groups、 /groups_s3の合算で約74 PBの実効容量があります。 + +| 構成 | ストレージシステム | メディア | 用途 | +|:--|:--|:--|:--| +| 1 | DDN ES400NVX2 | 61.44TB NVMe SSD x256 | ホーム領域(/home) | +| 2 | DDN ES400NVX2 | 61.44TB NVMe SSD x1280 | グループ領域(/groups) | +| 3 | DDN ES400NVX2 | 30.72TB NVMe SSD x48 | ABCIオブジェクト領域(/groups_s3) | + +上記のストレージシステムを用いて、ABCIシステムが提供している共有ファイルシステムの一覧を以下に示します。 + +| 用途 | マウントポイント | 実行容量 | ファイルシステム | 備考 | +|:--|:--|:--|:--|:--| +| ホーム領域 | /home | 10 PB | Lustre | | +| グループ領域 | /groups | 63 PB | Lustre | | +| アーカイブ | /home-2.0 | 0.5 PB | Lustre | 読み取り専用。ABCI 2.0で利用されていたホーム領域 | +| アーカイブ | /groups-2.0 | 10.8 PB | Lustre | 読み取り専用。ABCI 2.0で利用されていたグループ領域 | +| ABCIオブジェクト領域 | /groups_s3 | 1 PB | Lustre | | + + +インタラクティブノード、計算ノードは、共有ファイルシステムをマウントしており、利用者は共通のマウントポイントからこれらのファイルシステムにアクセスすることができます。 + +これ以外に、これらのノードはそれぞれローカルスクラッチ領域として利用可能なローカルストレージを搭載しています。以下に一覧を示します。 + +| ノード種類 | マウントポイント | 容量 | ファイルシステム | 備考 | +|:--|:--|:--|:--|:--| +| インタラクティブノード | /local | 12 TB | XFS | | +| 計算ノード(H) | /local1 | 7 TB | XFS | | +| | /local2 | 7 TB | XFS | BeeGFS含む | + +## ソフトウェア {#software} + +ABCIシステムで利用可能なソフトウェア一覧を以下に示します。詳細なバージョン情報については2025年1月までに公表予定です。 + +| Category | Software | Interactive Node | Compute Node | +|:--|:--|:--|:--| +| OS | Rocky Linux | - | 9.4 | +| OS | Red Hat Enterprise Linux | 9.4 | - | +| Job Scheduler | Altair PBS Professional | | | +| Development Environment | CUDA Toolkit | | | +| | Intel oneAPI
(compilers and libraries) | | | +| | Python | | | +| | Ruby | | | +| | R | | | +| | Java | | | +| | Scala | | | +| | Perl | | | +| | Go | | | +| File System | DDN Lustre | | | +| | BeeOND | | | +| Object Storage | DDN S3 API | | | +| Container | SingularityCE | | | +| MPI | Intel MPI | | | +| Library | cuDNN | | | +| | NCCL | | | +| | gdrcopy | | | +| | UCX | | | +| | Intel MKL | | | +| Utility | aws-cli | | | +| | s3fs-fuse | | | +| | rclone | | | diff --git a/v3/ja/mkdocs.yml b/v3/ja/mkdocs.yml new file mode 100644 index 000000000..c64d9e9a6 --- /dev/null +++ b/v3/ja/mkdocs.yml @@ -0,0 +1,34 @@ +site_name: ABCI 3.0 User Guide +site_description: ABCI 3.0 User Guide +site_author: AIST +site_url: https://docs.abci.ai/v3/ja +copyright: 'Copyright © 2024 National Institute of Advanced Industrial Science and Technology (AIST) / AIST Solutions Co. (AISol)' +nav: + - 'はじめに': 'index.md' + - 'ABCIシステムの概要': 'system-overview.md' + - 'ABCIの利用開始': 'getting-started.md' + - 'ジョブ実行': 'job-execution.md' + - 'お問い合わせ': 'contact.md' +extra: + alternate: + - name: 'English' + link: 'https://docs.abci.ai/v3/en/' + - name: '日本語' + link: 'https://docs.abci.ai/v3/ja/' +theme: + name: 'material' + favicon: 'img/favicon.png' + logo: 'img/logo.png' + palette: + primary: 'red' + features: + - toc.integrate + custom_dir: overrides +markdown_extensions: + - admonition + - codehilite + - attr_list + - footnotes +plugins: + - search: + lang: ja \ No newline at end of file diff --git a/v3/ja/overrides/main.html b/v3/ja/overrides/main.html new file mode 100644 index 000000000..add808541 --- /dev/null +++ b/v3/ja/overrides/main.html @@ -0,0 +1,5 @@ +{% extends "base.html" %} + +{% block extrahead %} + +{% endblock %} diff --git a/v3/root/docs/img/favicon.png b/v3/root/docs/img/favicon.png new file mode 100644 index 000000000..47b7cf9a5 Binary files /dev/null and b/v3/root/docs/img/favicon.png differ diff --git a/v3/root/docs/img/logo.png b/v3/root/docs/img/logo.png new file mode 100644 index 000000000..76bcd3271 Binary files /dev/null and b/v3/root/docs/img/logo.png differ diff --git a/v3/root/mkdocs.yml b/v3/root/mkdocs.yml new file mode 100644 index 000000000..a9cb50232 --- /dev/null +++ b/v3/root/mkdocs.yml @@ -0,0 +1,20 @@ +site_name: ABCI User Guide +site_description: ABCI User Guide +site_author: AIST +site_url: https://docs.abci.ai/v3 +copyright: 'Copyright © 2024 National Institute of Advanced Industrial Science and Technology (AIST) / AIST Solutions Co. (AISol)' +nav: + - 'ABCI User Guide 日本語版': 'https://docs.abci.ai/v3/ja/' + - 'ABCI User Guide English version': 'https://docs.abci.ai/v3/en/' +theme: + name: 'material' + favicon: 'img/favicon.png' + logo: 'img/logo.png' + palette: + primary: 'red' +markdown_extensions: + - admonition +plugins: + - redirects: + redirect_maps: + 'index.md': 'https://docs.abci.ai/v3/ja/'