ja ja es ja ja ja ja ja es ja ja zh es es en tr en en ja ja pl ja ja ja ja ja ja ja ja ja ja pl en ja ja ja ja ja ja ja ja ja ja en ja ja ja en ja ja ja en ja en ja ja en ja ja ja ja ja ja de en en es en ja ja ja ja en ja es es en tr en en ja en zh en ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja en ja ja ja ja ja ja ja ja ja ja ja zh ja ja ja es ja ja ja ja ja ja ja ja en en ru
exit()やctrl+c で終了します。
pypyは展開されたフォルダ内に環境を作成します。なので、アナコンダや、すでにpythonがある環境とは別です。pythonモジュールをインストールするpipをpypyで利用できるようにします。次のコマンドを実行します。
PS D:\Users\PCUser\Downloads\pypy3-v6.0.0-win32> .\pypy3.exe -m ensurepip Collecting setuptools Collecting pip Installing collected packages: setuptools, pip Successfully installed pip-9.0.1 setuptools-28.8.0 PS D:\Users\PCUser\Downloads\pypy3-v6.0.0-win32> .\pypy3.exe -m pip install -U pip Cache entry deserialization failed, entry ignored Collecting pip Cache entry deserialization failed, entry ignored Downloading https://files.pythonhosted.org/packages/c2/d7/90f34cb0d83a6c5631cf71dfe64cc1054598c843a92b400e55675cc2ac37/pip-18.1-py2.py3-none-any.whl (1.3MB) 100% |################################| 1.3MB 644kB/s Installing collected packages: pip Found existing installation: pip 9.0.1 Uninstalling pip-9.0.1: Successfully uninstalled pip-9.0.1 Successfully installed pip-18.1 Cache entry deserialization failed, entry ignored
先程も書きましたが、pypyは別環境です。
PS D:\Users\PCUser\Downloads\pypy3-v6.0.0-win32> pip -V pip 18.1 from c:\users\pcuser\appdata\local\programs\python\python37\lib\site-packages\pip (python 3.7) PS D:\Users\PCUser\Downloads\pypy3-v6.0.0-win32> .\pypy3.exe -m pip -V pip 18.1 from D:\Users\PCUser\Downloads\pypy3-v6.0.0-win32\site-packages\pip (python 3.5)
モジュールのインストール
ではモジュールをインストールしてみます。ここではsimplejsonをインストールします。
PS D:\Users\PCUser\Downloads\pypy3-v6.0.0-win32> .\pypy3.exe -m pip install simplejson Collecting simplejson Downloading https://files.pythonhosted.org/packages/e3/24/c35fb1c1c315fc0fffe61ea00d3f88e85469004713dab488dee4f35b0aff/simplejson-3.16.0.tar.gz (81kB) 100% |################################| 81kB 1.4MB/s Installing collected packages: simplejson Running setup.py install for simplejson ... done Successfully installed simplejson-3.16.0
インストールできました
「windows版だと、コンパイルが必要なモジュールは高確率で利用できません(pythonコードのみのモジュールしか使えない)」
ubuntuでは、numpyや、jupyterlabをpypyにインストールできたので、やっぱりwindowsはつかえなゲフンゲフン。
次のプログラムを実行してみました。for と再帰の速度をテストします。
def hoge(N): foo=0 for i in range(N): foo+=1 return 0 def bar(N): for i in range(N): bar(N-1) import cProfile cProfile.run('hoge(10**7)') cProfile.run('bar(10)')
python3.7.1
PS D:\Users\PCUser\Downloads\pypy3-v6.0.0-win32> python .\fibo.py 4 function calls in 6.790 seconds Ordered by: standard name ncalls tottime percall cumtime percall filename:lineno(function) 1 0.000 0.000 6.790 6.790  :1( ) 1 6.790 6.790 6.790 6.790 fibo.py:1(hoge) 1 0.000 0.000 6.790 6.790 {built-in method builtins.exec} 1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects} 9864104 function calls (4 primitive calls) in 4.581 seconds Ordered by: standard name ncalls tottime percall cumtime percall filename:lineno(function) 1 0.000 0.000 4.581 4.581  :1( ) 9864101/1 4.581 0.000 4.581 4.581 fibo.py:6(bar) 1 0.000 0.000 4.581 4.581 {built-in method builtins.exec} 1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
pypy3( Python 3.5.3 32bit)
PPS D:\Users\PCUser\Downloads\pypy3-v6.0.0-win32> .\pypy3.exe .\fibo.py 8 function calls in 0.170 seconds Ordered by: standard name ncalls tottime percall cumtime percall filename:lineno(function) 1 0.000 0.000 0.170 0.170  :1( ) 1 0.000 0.000 0.000 0.000 ?:1(anonymous) 1 0.170 0.170 0.170 0.170 fibo.py:1(hoge) 1 0.000 0.000 0.170 0.170 {built-in function exec} 2 0.000 0.000 0.000 0.000 {built-in function isinstance} 1 0.000 0.000 0.000 0.000 {method 'bit_length' of 'int' objects} 1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects} 9864254 function calls (154 primitive calls) in 1.835 seconds Ordered by: standard name ncalls tottime percall cumtime percall filename:lineno(function) 75 0.000 0.000 0.000 0.000  :190(cb) 1 0.000 0.000 1.835 1.835  :1( ) 9864101/1 1.835 0.000 1.835 1.835 fibo.py:6(bar) 1 0.000 0.000 1.835 1.835 {built-in function exec} 1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects} 75 0.000 0.000 0.000 0.000 {method 'get' of 'dict' objects}
pypyにインタプリタを変えただけで、for が40倍、再帰が2.5倍早くなりました。
ちなみに、nunbaはfor が0.057 seconds、再帰が0.105 secondsでした。
実際に動かすプログラムによって高速化の度合いが変わってくるので実際に試してみるしかないですね。
ソフトウェアPython, python高速化
Posted by penM
よろしければシェアお願いします
GeForce 417.71 WHQL ドライバ
R6S(PC版)を安く買う方法(結局セール待ち?)
windows python にcython とNumba 入れてみた。
前提環境 以下の手順で導入しています。Cコンパイラも入れていおてください。win ...
raspberry pi にpython3のopencv を入れる簡単な話
はじめに raspberry pi にpython3で使えるopencvを導入す ...
Pythonと正規表現
正規表現って便利だよねーって話 Gistの埋め込みテストついでに正規表現について ...
Alexa スキル サーバーをpythonで作る
はじめに スキルの使い方などはこの頃増えてきたけど、AWSが主流なので、自前サー ...
Alexa 自作スキルで音楽再生
flask-askを使って再生させてみます。pythonのサーバー機能を使い、同 ...
まだ、コメントがありません
コメントをどうぞ コメントをキャンセル
メールアドレスが公開されることはありません。* が付いている欄は必須項目です
新しいコメントをメールで通知
新しい投稿をメールで受け取る
このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください。
この記事のトラックバックURL
chromeのファイルダウンロードを早くする方法
ARK: Survival Evolved linux サーバーの立て方
ルーターを自作する際に気をつけること
HandBrake 1.3.x 日本語版
WW3 設定画面 日本語訳
ARK: Survival Evolved windows サーバーの立て方
OBSで、インスタントリプレイをしてみる
OBSを独自ストリーミングする方法
steamに接続できない原因と解決策
PowerShellでpipのパッケージを一括アップデートする方法
Copyright © 2022 ゆっくり遅報 All Rights Reserved.
WordPress Luxeritas Theme is provided by "Thought is free".