投稿

11月, 2022の投稿を表示しています

OpenMythosのサンプルプログラムを動かしました

1.概要 前回、OpenMythosの環境構築まで実現したので、GitHubにあるサンプルプログラム(Usage)を動かしてみました。一部エラーが発生しましたが、結果出力部分なので修正をしました。その内容を記述します。 2.詳細 Usageに記載されているPythonプログラムをopenmythos_usage.pyとして作成します。 $ source ~/mypy/bin/activate (mypy) $ pythoh3 openmythos_usage.py 下記エラーとなります [MLA] Parameters: 1,538,626 [MLA] Logits shape: torch.Size([2, 16, 1000]) [MLA] Generated shape: torch.Size([2, 24]) Traceback (most recent call last):   File "/home/nakasima/openmythos/openmythos_usage.py", line 48, in <module>     rho = torch.linalg.eigvals(A).abs().max().item()           ^^^^^^^^^^^^^^^^^^^^^^^ RuntimeError: linalg.eig: The input tensor A must have at least 2 dimensions. コードの下記部分を修正します #rho = torch.linalg.eigvals(A).abs().max().item() rho = A.abs().max().item() $ source ~/mypy/bin/activate (mypy) $ pythoh3 openmythos_usage.py [MLA] Parameters: 1,538,626 [MLA] Logits shape: torch.Size([2, 16, 1000]) [MLA] Generated shape: torch.Size([2, 24]) [MLA] Spectral radius ρ(A) = 0.3679 (mus...

将棋ソフトのやねうら王をubuntuで動かしてみました

1.概要 将棋ソフトは、ディープラーニング系とロジック系が競っている状態と言われています。ubuntuで楽しめるロジック系の将棋ソフトの「やねうら王」を導入して、動作させることをしました。今回はこの内容を記述します。 2.詳細 ロジック系の将棋ソフトの特徴は以下のとおりです。 ・ユーザインターフェイスはWindows対応で、ubuntuではmono-completeを利用します。 ・ロジック部は「やねうら王」でubuntu環境でbuildして利用します。 ・ロジック部の評価関数の違いで強さに差が出ます。名前も変わります。 参考資料に従って、shogidokoroを利用して、2つの評価関数を導入する方法を記載します。 (1) 導入手順 (a) mono-complete導入 (b) takaoフォント導入 (c) shogirdokoro導入 (d) やねうら王の導入 (e) 評価関数Kristallweizen_kaiV0.4の導入 (f) 評価関数Elmo wcsc29の導入 (g) 定石の導入 (h) shougidokoroの起動 (2) 詳細 (a) mono-complete導入 $ sudo apt install mono-complete (b) takaoフォント導入 $ sudo apt install fonts-takao (c) shogirdokoro導入 $ cd ~/Downloads $ wget http://shogigui.siganus.com/shogigui/ShogiGUIv0.0.7.30.zip $ cd ~ $ unzip ~/Downloads/ShogiGUIv0.0.7.30.zip (d) やねうら王の導入 $ sudo apt -y install build-essential clang lld libopenblas-dev unar git $ git clone https://github.com/yaneurao/YaneuraOu.git $ cd YaneuraOu/source $ make clean tournament TARGET_CPU=AVX2 $ mkdir -p ~/ShogiEngine/YaneuraOu/bin $ cp -a YaneuraOu-by-gcc ...

囲碁AIのLizzieとleela-zeroとGPUの組合せで動作検証(GPU版)

1.概要 前回、囲碁AIのLizzieをCPU環境で構築しました。今回はGPU環境で構築して、どの程度の性能改善するかを確認します。Ubuntuではエンジン部分の構築が変わります。GPUはnvidiaのgtx-1050Ti, gtx-1660 superで実施しました。見た目に性能が向上します。打つ手の候補を次々と探索していく様子が確認できます。 今回は、GPU環境での構築に関して記述します。 ※nvidai-driver-515とcuda 11.7で記述していますが、nvidia-driver-520とcuda 11.8でも動作します。 2.詳細 (1) 導入方法の検討 本ブログのLizzie using CPUを参照願います。 GPUを利用するために、nvidiaのドライバ導入、CUDA導入追加して、souceのbuildが必要です。 (2) 導入 (a) nvidiaドライバ導入 (b) cuda導入 これ以降は、Lizzie using CPUと同じ手順です。 (c) Lizzie.0.7.4.Mac-Linux.zip を参考サイトからDownloadして、解凍 (d) 必要なツールの導入 (e) souceコードのコピー (f) config.hの修正(不要です) (g) souceコードの修正(fix適用) (h) make後、 実行モジュールのコピー (3) 詳細 (a) nvidiaドライバ導入 ubuntu標準のnouveauを無効化します /etc/modprobe.d/blacklist.conf に下記2行を追加します blacklist nouveau options nouveau modeset=0 次に、下記コマンドを実行します $ sudo update-initramfs -u 次に、下記コマンドでnvida-driver(515)を導入します。 $ sudo apt install nvidia-driver-515 (b) cuda導入 参考資料を参照してcuda 11.7.1-515.65.01-1を導入します $ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin $ sud...

囲碁AIのLizzieとleela-zeroの組合せで動作検証(CPU版)

1.概要 囲碁AIのLizzieをネットで見つけて、Lizzieは日本棋院でも活用されているようなので動かしてみようと考えました。Lizzieはアルファゼロ方式のDeepLearningを利用した製品です。UI部分はJava、エンジン部分はC、学習済みのモデルは同梱されており、Windows環境ではすぐに利用できます。Ubuntuではエンジン部分のBuildが必要です。今回は、まず、CPU環境での構築に関して記述します。 2.詳細 (1) 導入方法の検討 まず、参考サイトからLizzie.0.7.4.Mac-Linux.zipをDownloadして、README.txtを読みます。 Java 8 or higherが必要 sourceをDownload後、CPU利用時はconfig.hの修正が必要 次に、sourceをgitからDownload(git clone https://github.com/gcp/leela-zero) sourceのREADME.mdを読みます。 Install build depedenciesを導入後、makeが必要 となります。 (2) 導入 (a) Lizzie.0.7.4.Mac-Linux.zip を参考サイトからDownloadして、解凍 (b) 必要なツールの導入 (c) souceコードのコピー (d) config.hの修正 (e) souceコードの修正(fix適用) (f) make後、 実行モジュールのコピー (3) 詳細 (a) Lizzie.0.7.4.Mac-Linux.zip を参考サイトからDownloadして、解凍 $ wget https://github.com/featurecat/lizzie/releases/download/0.7.4/Lizzie.0.7.4.Mac-Linux.zip $ unzip Lizzie.0.7.4.Mac-Linux.zip 上記手順でLizzieディレクトリに解凍されます。 (b) 必要なツールの導入 $ sudo apt -y install build-essential default-jre git $ sudo apt -y install libboost-dev libboost-program-options-dev libopenb...

ASRockマザーにAMD 3200GとGTX-1660 Superを設定してGPU限定利用実現

 1.概要 ASRock A320M-HDVのマザーボード搭載PCにnvidia GTX-1660 Superを増設しました。BIOS設定に悩んだことを記述します。このPCスペックは以下の通りです。AMD 3200GなのでCPUにVGAが内蔵されています。 Mother: ASRock A320M-HDV CPU:    AMD Ryzen 3 3200G Memory: 8GB x 2 SSD:    256GB ASRock A320-HDVにGTX 1660 Superを増設するとディスプレイに何も表示されなくなりました。増設するGTX 1660 SuperはAIのGPU用途のため、ディスプレイを接続しません。この問題解決に関して記述します。 2.詳細 (1) 試したこと (a) GTX 1660 Superを取り除くとディスプレイに表示されます。 (b) GTX 1660 Superを増設後、GTX 1660 Superにディスプレイを接続すると表示されます。 この時点で、BIOSの既定値設定の問題と気が付きました。 (2) BIOS設定 (a) Onboard Device設定の確認 ASRock A320-HDVのBIOSで、Advanced => Onboard Device Configurationを参照すると、ディスプレイに関する設定はありません。通常はOnboard設定にあると思っていました。しかし、AMD 3200GはCPUにVGA機能を内蔵しています。そこで、BIOSの設定をすべて調べて設定する項目を探しました。 (b) Advanced設定のAMD PBS Adbanced => AMD PBS => Primary Video Adapter項目があり、Int Graphicsへ変更。これで、GTX 1600 Superを接続した状態で内蔵VGAで表示されるようになりました。 (c) 内蔵VGAが利用するMemory設定 Advanced => Onboard Devices Configuration => UMF Frame buffer Sizeで指定できます。64MBから2GBまで設定できますが、Autoに設定すると2GBに設定されます。Ubuntu ...