私は、マルチプロセッシングとS3からファイルをダウンロードするリクエストを使用するかなり単純なPythonスクリプトを実行しています。このスクリプトをローカルで実行すると、非常に高速です(2.5分で5k画像)。私が最適化されたEBSを使用していて、3600 IOPを与えても、EC2インスタンス(g2.2xlarge、GPUインスタンスを使用する必要があるため)で同じ正確なスクリプトを実行すると、非常に遅い(10倍遅く) 。この時点で、私は何をチェックすべきか分かりません。どんな提案も高く評価されます。S3からのファイルをEC2インスタンスよりもローカルホスト上で高速にダウンロードしていますか?
スクリプトが要求にurllib2の交換することにより、ここから変更されました:
https://github.com/BVLC/caffe/blob/master/examples/finetune_flickr_style/assemble_data.py
ここにスクリプトを投稿しますか?ディスクI/Oは大きな要因となります。ファイルを 'os.devnull'にダウンロードしようとしましたが、ローカルディスクI/Oを削除することはできませんでしたか?ローカル環境とS3ターゲットとの間の待ち時間とEC2インスタンスの待ち時間の違いは何ですか?両方からpingできますか? –
S3バケットはどの地域にあり、EC2インスタンスはどの地域にありますか? –
私はそれを理解しました。問題は私がS3によって絞られていた可能性が高いです。リクエストからboto3に切り替えると、ローカルマシンよりも速くなりました。 –