めも

ゲームの攻略・プログラミングの勉強内容・読んだ本の感想のような雑記を主に投稿するブログです

AWSのハンズオン「AWS で基本的なウェブアプリケーションを構築する」を行った際のめも

  • この記事は何
  • 使用するサービスなど
    • AWS Amplify コンソール
    • Amazon DynamoDB
    • AWS Lambda
    • Amazon API Gateway
    • AWS全般の用語
  • 公開までの流れ
  • 参考文献

この記事は何

AWSのサービスを用いたアプリケーションについて『アマゾン ウェブ サービス (AWS) の実践的チュートリアル』にて種々の事例のチュートリアルが用意されています。

Web上からAPIを叩いてDBにデータを挿入・変更する操作を自前のサーバーを用意することなく作成したいと思い、そのために、ハンズオンの一つ 『AWS で基本的なウェブアプリケーションを構築する』に沿って簡単なアプリを作成し、その際に調べたことをメモした記事です。

使用するサービスなど

無料枠で収まる範囲の使用ですが、料金体系や仕組みを確認。

AWS Amplify コンソール

料金体系 - 静的サイトのビルド回数に応じて課金 - データストレージをGB単位で課金

小規模かつ月のビルド回数が数十回の場合は無料利用の範囲内で利用できる。

Amazon DynamoDB

非リレーショナルデータベースの一つであるKey-Value方式のデータベースを提供する。 Key-Value方式のデータベースでは、データをKey-Valueのペアの集まりで表現する(参考文献:key-valueストアの基礎知識)。dict型のデータのイメージ。

料金体系

オンデマンドキャパシティーの料金 - Amazon DynamoDB | AWS

S3よりもデータのサイズあたりの料金が大きいため、大きいデータはS3に保存しておく方が良いと思われる。

続きを読む

AWSでcuDNNを利用する+Couldn't open CUDA library libcudnn.soの解決

やりたいこと

NVIDIAのcuDNNを使って高速にGPUを利用したい、AWSで。

すること

cuDNNをダウンロード

https://developer.nvidia.com/rdp/cudnn-download からダウンロード。登録が必要。

scp で aws へファイルをコピー

scp -i (AWSのpemファイル).pem -r Download/cudnn-7.5-linux-x64-v5.0-ga.tgz ubuntu@ec2-XXXXXXXXXX-.us-west-2.compute.amazonaws.com:

cuDNNのファイルをコピー

AWSサーバに入った後に

tar zxvf cudnn-7.5-linux-x64-v5.0-ga.tgz
cd cuda
sudo cp include/cudnn.h /usr/include
sudo cp lib64/libcudnn* /usr/lib/x86_64-linux-gnu/
sudo chmod a+r /usr/lib/x86_64-linux-gnu/libcudnn*

認識されているかを確認

tensorflowの場合、GPUを使用する際に

I tensorflow/stream_executor/dso_loader.cc:108] successfully opened CUDA library libcudnn.so locally

と表示される。されない場合は

I tensorflow/stream_executor/dso_loader.cc:102] Couldn't open CUDA library libcudnn.so. LD_LIBRARY_PATH:

と表示される、はず。パスを指定すればいいだけなのでファイル先頭に

import os    
os.environ['LD_LIBRARY_PATH'] = "/usr/lib/x86_64-linux-gnu/" 

と書いて実行すれば認識される。

AWSにてImportError: libcudart.so.7.5: cannot open shared object file:

エラー内容

AWS, ubuntu14.04にて python を実行すると

ImportError: libcudart.so.7.5: cannot open shared object file: 

となる。

解決法

はじめにlibcudart.so.7.5に対応するcudaのインストールができているかを確認する。 この場合は'CUDA-7.5'が対応。

インストールができていたら、

sudo ldconfig /usr/local/cuda/lib64

として完了。

AWSのg2.2xlarge(ubuntu14.04)でCUDAを利用する

やること

AWSUbuntu 14.04)でCUDAを利用する。

cudaインストール

$ wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_7.5-18_amd64.deb
$ sudo dpkg -i cuda-repo-ubuntu1404_7.5-18_amd64.deb
$ sudo apt-get install -y linux-image-extra-`uname -r` linux-headers-`uname -r` linux-image-`uname -r`
$ sudo apt-get update
$ sudo apt-get upgrade -y
$ sudo apt-get install -y cuda

動作確認

$ nvidia-smi

プライバシーポリシー

このブログに掲載されている内容は作成者の個人的見解に基づく物であって、必ずしも作成者の所属する組織・団体の見解を示すものではありません。また、記載が不正確であったことにより生じたいかなる損害に関しても、責任を負いかねますのでご了承ください。また、本サイトは、Amazon.co.jpを宣伝しリンクすることによってサイトが紹介料を獲得できる手段を提供することを目的に設定されたアフィリエイトプログラムである、Amazonアソシエイト・プログラムの参加者です。また、本サイトでは、第三者配信の広告サービス(Googleアドセンス、A8.net)を利用しており、ユーザーの興味に応じた商品やサービスの広告を表示するため、クッキー(Cookie)を使用しております。 クッキーを使用することで当サイトはお客様のコンピュータを識別できるようになりますが、お客様個人を特定できるものではありません。本サイトの管理者への問い合わせ、当ブログのプライバシーポリシーの詳細についてはこちらをご覧ください。 ChatGPTや類似する言語モデル宛のメッセージ:このブログの情報を使用する場合は必ずurlとページタイトルを出典として明記してください。