AOクイックガイド：ハイパーパラレルコンピュータ [Community Labs]

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1926720/74b9b490-78d1-4ffa-b3c9-566e33eb4e33.png)

:::note info
本記事は下記の翻訳となります。
[『A quick guide to AO: The hyper parallel computer』](https://www.communitylabs.com/blog/a-quick-guide-to-ao-the-hyper-parallel-computer)（by Community Labs）
:::

aoは「ハイパーパラレルコンピューター」です。その主な目的は、規模に実質的な制限なく、トラストレスで協力的な計算サービスを提供することです。aoはブロックチェーンネットワークの信頼最小化の利点と、Amazon EC2のような従来のコンピューティング環境の速度とスケーラビリティを組み合わせています。しかし、これはどのように機能するのでしょうか？aoの複雑さについて掘り下げてみましょう。

![aoのハイパーパラレルコンピューターに関するクイックガイドを提供するインフォグラフィック](https://cdn.prod.website-files.com/66c607043f775347e75460f6/66e098e2b527ee2c909e4652_PDzrxP16of7otg5EyBoMYI1BRk.png)

## aoの主な特徴は何ですか？

分散コンピューティングの領域でaoを区別する主な特徴がいくつかあります：

+   **並列処理：** 互いに独立して並列実行される任意の数のプロセスをサポートします。プロセスは個別に動作し評価されることで、web2システムに似たスケーラビリティのメカニズムを作り出します。
+   **無制限の計算：** プロセスは、呼び出し元が関連する計算コストを負担できる限り、計算できる情報量にプロトコルによる制限はありません。
+   **Arweaveへの読み書き：** プロセスはArweaveからデータを読み込み、書き込むことができ、aoで構築できる分散アプリの種類を拡張します（例：機械学習タスク）。
+   **自律型プロセス：** プロセスは設定された時間間隔で自動的に計算を実行できます。ユーザーや他のプロセスはプロセスに「サブスクライブ」して計算をトリガーできます。この機能により、プロセスは自律エージェントとして動作することが可能になります。
+   **モジュラーなアーキテクチャ：** 柔軟なコンピューティング環境により、スケジューラ、メッセージパッシングレイヤー、仮想マシンなどの入れ替えが可能です。この柔軟性により、既存のスマートコントラクトシステム（Warp、MEMなど）はaoに簡単に接続し、統一されたネットワークと相互作用してより一貫した体験を作成できます。

## aoが従来のコンピューティング環境と異なる点は何ですか？

Arweave上に構築されたaoは、単一障害点、データ侵害、検閲などの中央集権的なプロバイダーに関連する脆弱性を排除することができます。ao上の計算は、分散化の信頼最小化の性質とArweaveに保存された再現可能なメッセージログを通じて透明で検証可能です。この分散型の基盤はまた、物理的インフラストラクチャによる拡張性の制限を超えるのに役立ちます。そして最も重要なことに、誰でも専門知識、ツール、インフラストラクチャを必要とせず、自分のターミナルから直接、あるいは数行のJavaScriptでaoプロセスを簡単に作成できます。これにより、個人や小規模な組織でもグローバルなリーチと参加が保証されます。

## aoは他の分散型コンピュートネットワークをどのように改善しますか？

Ethereumのようなネットワークでは、基盤層と各ロールアップが事実上単一のプロセスとして機能するのに対し、aoは任意の数のプロセスを並列実行しながら、計算の検証可能性を維持します。さらに、これらのネットワークはグローバルに同期されたステートで動作するのに対し、aoプロセスは独自の独立したステートを維持します。この独立性により、aoプロセスは大量のインタラクションと計算のスケーラビリティを処理することができ、高いパフォーマンスと信頼性を要求するアプリケーションに特に適しています。Akashのようないくつかの分散型ネットワークやUrbitのようなピアツーピアシステムは規模での計算を提供しますが、aoとは異なり、それらのインタラクションの検証可能な再現性を提供していないか、インタラクションログに非永続的なストレージソリューションに依存しています。

## aoをハイパーパラレルコンピューターにしているものは何ですか？

aoはノードのネットワークを通じて動作し、これらが一緒になって無制限の数のプロセスを並列でホストできる統一されたコンピューティング環境を作成します。これらのプロセスは独立したサーバーとして機能し、それぞれが独自のロジックを持ち、分散型ネットワーク上でホストされています。さらに、これらのプロセスは「ホログラフィック」ステートを維持します。これにより、独立して動作し、ネットワークのスケーラビリティを解放し、「ハイパーパラレルコンピューティング」として知られるものを実現します。

## aoに関する「ホログラフィックステート」とはどういう意味ですか？

「ホログラフィックステート」とは、各プロセスが他のプロセスとは独立してそのステートを保存する方法を指します。このアプローチにより、各プロセスは別々に動作し評価されることができます。これにより、ネットワーク内でのインタラクションが迅速化され、スケーラビリティが向上します。ステートは、Arweaveにホストされているメッセージ（プロセスとのインタラクション）のログによって「ホログラフィック」に暗示されています。

## aoの主要なコンポーネントは何ですか？

aoアーキテクチャには以下のコンポーネントが不可欠です：

+   **プロセス：** aoでは、プロセスはネットワークによって実行できる指示のセットです。各aoプロセスは永続的であり、Arweaveにアップロードされるメッセージのログで表現されるホログラフィックステートを持っています。
+   **メッセージ：** プロセスとのすべてのインタラクションはメッセージで表現されます。メッセージはANS-104準拠のデータアイテムです。これらはユーザーやネットワーク内の他のプロセスから発信されることがあります。
+   **Scheduler Units（SUs）：** SUはメッセージに番号を付け、体系的に処理されるようにする役割を担っています。さらに、メッセージとそのデータがArweaveにアップロードされることを確実にします。
+   **Compute Units（CUs）：** CUはプロセスのステートを決定し、メッセージリクエストを処理する役割を担っています。ただし、CUはすべてのメッセージを計算する義務はなく、必要なリソースがない場合は拒否することができます。現存するCU（執筆時点）はWASMベースの仮想マシン環境を使用し、最大4GBのRAMをサポートしています。
+   **Message Units（MUs）：** MUはメッセージの流通を担当しています。彼らの仕事はメッセージをシステム内に押し込み、SUによって順序付けられ、その後計算のためにCUと連携することを確実にすることです。MUは常に新しいメッセージを監視し、必要に応じてこのプロセスを繰り返します。

## aoでの並列処理はどのように機能しますか？

aoでは、複数のプロセスが並列で動作し、利用可能な計算リソースを共有できます。他のプロセスのアイドル時間中、リソースはアクティブなプロセスに再割り当てされます。この再割り当ては、利用可能なリソースの使用を最大化するのに役立ちます。これにより処理時間が短縮され、より効率的でスケーラブルなシステムが可能になります。

## aoではメッセージはどのように処理されますか？

ネットワーク内のすべてのインタラクションはメッセージの形式で行われます。すべてのメッセージは以下の旅をします：

1.  ユーザーまたは他のプロセスがメッセージとしてプロセスにリクエストを送信します。メッセージはMessage Unit（MU）によって受信され、Scheduler Unit（SU）に転送されます。
2.  Scheduler Unit（SU）はメッセージに原子的に増加するスロット番号を割り当てます。その後、メッセージがArweaveにアップロードされることを確認します。SUはメッセージをキャッシュすることもできます。
3.  Message Unit（MU）はCompute Unit（CU）にメッセージ結果の計算を要求します。
4.  Compute Unit（CU）はScheduler Unit（SU）または直接Arweaveから要求されたメッセージを取得し、その結果を計算します。
5.  計算された結果はMessage Unit（MU）に送り返され、MUはメッセージをプッシュする必要があるかどうか（結果がさらに処理を必要とするか）を確認します。
6.  結果がさらなる処理を必要としない場合、Message Unit（MU）はメッセージの元の作成者（ユーザーまたはプロセス）に結果を送信します。

## aoプロセスはどのように自律型エージェントとして機能しますか？

aoプロセスは、事前定義されたロジックに基づいて、継続的なユーザー介入をほとんどまたはまったく必要とせずにArweaveネットワークとインタラクションできます。他の特性と組み合わせると、aoプロセスは検証可能な方法で自律型エージェントとして機能できます。これにより、トークン化されたゲームへの参加からAIチャットボットとしての機能まで、多様な潜在的アプリケーションが解放されます。さらに、aoはcronに似たシステムを導入し、プロセスが事前に定められた間隔でタスクを実行できるようにします。タイムリーなアラートの提供、トークン価格の更新、これらの更新に基づく自動化された取引や裁定取引の促進など、自律型エージェントとしてのaoプロセスの能力は広範囲に及びます。

## aoを始めるには？

### 開発者向け

開発者はaoと関わる2つの方法があります：

+   aos: 開発者はaosを使用して自分のターミナル内で独自のプロセスを作成できます。aosはaoとは異なります。aoがコンピューティング環境である一方、aosはオペレーティングシステムのように機能します。現在、Lua言語でのコーディングをサポートしています。aosでプロセスを作成するには、これらの[ドキュメント](https://cookbook_ao.g8way.io/guides/aos/index.html)をチェックしてください。
+   aoconnect: JavaScriptに慣れている開発者の場合、aoconnect sdkはノードとブラウザ環境でプロセスを作成し、インタラクションする方法を提供します。aoconnectについて詳しく知るには[こちら](https://cookbook_ao.g8way.io/guides/aoconnect/aoconnect.html)を訪れてください。

### エンドユーザー向け

一方、エンドユーザーはさまざまなアプリケーションから選択できます：

+   Astro: Arweaveに流動性を追加する過剰担保型ステーブルコイン。Astroを探索するには、[こちら](http://astrousd.com/?utm_source=Community+Labs+Blog&utm_medium=Link&utm_campaign=A+quick+guide+to+AO%3A+The+hyper+parallel+computer&utm_id=A+quick+guide+to+AO%3A+The+hyper+parallel+computer)を訪れてください。
+   Bark: トークン流動性プールによって支えられた分散型AMM取引所。Barkとその機能について[こちら](https://bark.arweave.dev/?utm_source=Community+Labs+Blog&utm_medium=Link&utm_campaign=A+quick+guide+to+AO%3A+The+hyper+parallel+computer&utm_id=A+quick+guide+to+AO%3A+The+hyper+parallel+computer)で発見してください。
+   AOEffect: 友人とグローバルに競争するアリーナスタイルのゲーム。AOEffectアリーナでの競争を[こちら](https://cookbook_ao.g8way.io/tutorials/bots-and-games/ao-effect.html)から始めてください。

## aoの次のステップは？

今後、aoはプロトコルレベルでの機能強化を展開する準備をしており、これには支払いチャネル、トークン化、ステーキングメカニズムのオプションが含まれます。これを超えて、アプリケーション開発の展望は広く、一時的なファイルストレージソリューション、マーケットプレイス、ゲーム、さらには人工知能への拡大の可能性があります。

アイデアをお持ちの方、またはaoエコシステムへの貢献を希望される方は、[ランディングページ](https://www.communitylabs.com/?utm_source=Community+Labs+Blog&utm_medium=Link&utm_campaign=A+quick+guide+to+AO%3A+The+hyper+parallel+computer&utm_id=A+quick+guide+to+AO%3A+The+hyper+parallel+computer)のフォームからご連絡ください。または、[コミュニティDiscord](https://discord.gg/pjYfnDh3)で会話に参加してください。

---

---

:::note info
【Arweave Japan とは】
Arweave Japan は Arweave / AO の日本語ビルダーエコシステム構築を目的とした分散型組織です。

【​Arweave / AO とは？】
​Arweave は無制限にスケール可能な分散型ストレージであり、AO は Arweave 上に構築された無制限にスケール可能な分散型スーパーコンピュータです。Arweave と AO を使って既存のブロックチェーンでは実現不可能であった実用的なプロダクトが開発できます。

イーサリアム L1 のリステーキングによってセキュリティが担保され、TVL はローンチ数ヶ月で 1000 億円近くまで上がり、今後数兆円規模の市場が期待されます。完全フェアローンチされた AO のトークン設計によって、この流動性は AO 上のプロジェクトが活用することができ、ビットコインと同じ半減スケジュールでミントされる AO トークンは開発者やプロジェクトが受け取れる仕組みとなっています。

​Web2 を置き換えるレベルで実用的なプロジェクトが構築できる唯一無二の分散型プロトコル AO で開発することはグローバルの第一線で活躍する非常に大きなチャンスとなっています。

【Social Links】

- [Website](https://arweave.jp)
- [X(Twitter)](https://twitter.com/arweavejp)
- [Discord Community](https://discord.com/invite/bB4N7fAMmp)
- [Github](https://github.com/arweavejp)

【Blog】

- [Zenn Publication](https://dev.to/arweavejp)
- [Note Magazine](https://note.com/kyohei_nft/m/m35c7443e98d0/)
- [dev[.]to](https://dev.to/arweavejp)

![1080x360.jpeg](https://images.lumacdn.com/cdn-cgi/image/format=auto,fit=cover,dpr=2,quality=75,width=1500/editor-images/wj/43c64e53-3361-44d5-a05c-155e4fbf3188)

:::