ShuuLog

ShuuLog

2022年07月13日
XML
カテゴリ: AIの勉強
Pythonの環境って色々と作り方がありますよね?
私が今回作成している環境は以下の通り。

  1. Windows標準のPython環境
    Microsoft StoreよりインストールできるPythonでVersionは3.10系
    簡単な動作確認なんかはこちらの環境で実施している。
    コードの作成はVSCodeを利用して作成し、そのままVSCodeで実行すると楽。

  2. WSLなUbuntu20.04での環境
    サンプルプログラムにシェルがあったりした場合、Linuxで実行したほうが簡単なので、こちらの環境を利用している。
    あまり使わないけど、とりあえず環境として構築した。

  3. Anacondaの環境
    様々な環境を切り替えたり、JupyterNotebookなども簡単に構築できるので非常に便利。
    標準Pythonでも仮想環境の切り替えできるけど、Windows使いのGUIに慣れていればAnacondaのGUIで設定の切り替えなどができる環境は使いやすい。

プログラムの作成はVSCodeを利用している。
https://azure.microsoft.com/ja-jp/products/visual-studio-code/

インストールも簡単だし、情報もたくさんWebに出ているしデバッグも実行も環境づくりも簡単。
多機能でPythonだけじゃなくて他の言語にも利用できる。
非常に便利です。

とりあえず、コマンドパレットのところで日本語化した後、拡張機能でPython(Microsoft製)を入れてやれば、Python使えます。


Anacondaで複数の環境を作っていれば、それらがすべて選択肢に出てくるのでいいですよ。

しかし、新しいパソコンの新しいCPUなのですが、マルチスレッド性能はよいのですが、シングルスレッド性能はそこまでよくないわけで、Pythonの実行については、マルチコアを十分に使用できていないようで、かなり時間がかかってしまいます。

プログラムをマルチスレッドで実行できるように作り変えないといけないんでしょうね。

もうちょっと、プログラムのマルチスレッド化を勉強してみます。

あと、やはりGPGPUでQuadra K2200はそこまで速くないのか、結構時間がかかってしまいますね。
まぁ、これでもCPUよりは早いんだろうけど。。。。

ちょっと、マルチスレッド化の勉強をしてきます( ̄▽ ̄)ゞ


追記
ちょこっと変更したらいけそうな感じだったー

まず、プログラムの構成が

file_list=pathlib.Path(読込フォルダ).glob('**/*.jpg'))


 image= cv2.imread(str(file_list[i]),)
   #画像関連の処理を以下に記載

って感じになっていますんで、処理部分を関数にサブルーチンにしてしまって、以下のようにすればOK

def img_proc(inFile):
 image= cv2.imread(str(inFile),)


if __name__ == '__main__':
    max_workers = os.cpu_count()#CPUコア数取得
    #元データの読み込み
    # フォルダ内に保存されているファイル一覧


    # ファイル数分繰り返す
    Parallel(n_jobs=max_workers )(delayed(img_proc)(file_list[i]) for i in range(len(file_list )))



tensorflowの学習で今手一杯なので、それが終わったら、マルチスレッドのテストやってみる!





テストの結果、820枚の画像を色々OpenCVで加工したりする処理がもともと39分かかっていたのが、4分になりました!
すっげー!

1スレッドで39分、32スレッド利用すれば、単純計算で32倍ですが、そう単純な計算にはならなくって、10分の1ぐらいの速度になりました。
それでも十分早いっす!





お気に入りの記事を「いいね!」で応援しよう

最終更新日  2022年07月13日 17時30分07秒
コメント(0) | コメントを書く
[AIの勉強] カテゴリの最新記事


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x

PR

プロフィール

ShuuLog

ShuuLog

カレンダー


© Rakuten Group, Inc.
X
Design a Mobile Website
スマートフォン版を閲覧 | PC版を閲覧
Share by: