[PYTHON] Ich habe Cython unter Ubuntu auf VirtualBox ausprobiert

Ich habe Cython unter Ubuntu auf VirtualBox ausprobiert.

$ sudo apt-get install cython

$ cython -V Überprüfen Sie die Versionsanzeige mit.

"Beschleunigen von Python durch Fusion mit Cython C" p3, Cython-Version der Fibonacci-Funktion Speichern Sie als fib.pyx.

fib.pyx


# -*- coding: utf-8 -*-
def fib(n):
    cdef int i
    cdef double a=0.0, b = 1.0
    for i in range(n):
        a, b = a + b, a
    return a

Platzieren Sie setup.py in Seite 15 von "Beschleunigen von Python durch Fusion mit Cython C" im selben Verzeichnis wie fib.pyx.

setup.py


from distutils.core import setup
from Cython.Build import cythonize

setup(ext_modules=cythonize('fib.pyx'))

$ python setup.py build_ext --inplace Ausführen.

Starten Sie die IPython-Konsole in der integrierten Spyder-Umgebung.

in [1]: import fib

in [2]: fib.fib(1) Out[2]: 1.0

in [3]:fib.fib(90) Out[3]: 2.880067194370816e+18

in [4]: %timeit fib.fib(90) 10000000 loops, best of 3: 137 ns per loop

in [5]: import fib0

in [6]: %timeit fib0.fib(90) 100000 loops, best of 3: 4.78 µs per loop

In diesem Beispiel führt die CPU-Bindung zu einer signifikanten Verbesserung der Verarbeitungsgeschwindigkeit. Es scheint gut zu sein, den Engpass bei den Problemen jeder Person zu untersuchen und eine andere Methode mit oder ohne Cython in Betracht zu ziehen.

Referenz: "Python durch Fusion mit Cython C beschleunigen" O'Reilly Japan

Nachtrag: Auf der folgenden Website wird das Verfahren zum Ausführen von Cython auf Raspberry Pi beschrieben. "Tutorial für elektronische Arbeit" 1 Laden Sie Cython herunter http://lumenbolk.com/?p=1054

Hinweis: Wenn Sie Scikit-Learn oder Scikit-Image aus dem Quellcode erstellen müssen, werden Sie es wahrscheinlich als Teil des Builds ausführen, ohne Cython zu kennen. Nun, es ist unwahrscheinlich, dass Sie das tun müssen. In den meisten Fällen sollte die Pip-Installation ausreichen.

Recommended Posts

Ich habe Cython unter Ubuntu auf VirtualBox ausprobiert
Ich habe ROS unter Ubuntu 18.04 installiert
Ich habe MLflow auf Databricks ausprobiert
Ich habe versucht, den Linux-Kernel auf virtualbox + vagrant zu installieren
Ich habe AdaNet gegen Tabellendaten ausprobiert
Ich konnte unter Ubuntu 20.04 kein Japanisch eingeben
Ich habe versucht, ein Windows-Spiel mit Steam Play unter Ubuntu 20.04 LTS zu spielen
Ich habe versucht, TensorFlow (GPU-Version) unter Ubuntu zu installieren
Ich stolperte über die Installation des Satzstücks auf Ubuntu
Ich habe versucht zu kratzen
Ich habe PyQ ausprobiert
Shebang auf Ubuntu 20.04
Ich habe AutoKeras ausprobiert
Ich habe es mit Papiermühle versucht
Ich habe versucht, Django-Slack
Ich habe es mit Django versucht
Ich habe es mit Spleeter versucht
Ich habe es mit cgo versucht
Dask kann unter Ub nicht mit pip auf Ubuntu installiert werden
Ich habe versucht, Remote API mit GAE / J zu verwenden
Ich habe versucht, YOLO v3 mit Google Colab auszuführen
[Pythonocc] Ich habe versucht, CAD auf einem Jupyter-Notebook zu verwenden
Ändern Sie die Auflösung von Ubuntu, das auf VirtualBox ausgeführt wird
Ich habe LINE Message API (line-bot-sdk-python) mit GAE ausprobiert
Ich habe versucht, mit tkinter mit dem Taschenrechner zu spielen
Ich habe versucht, die Daten des Laptops durch Booten unter Ubuntu zu retten
Ich habe versucht, parametrisiert zu verwenden
Ich habe versucht, Argparse zu verwenden
Ich habe versucht, Mimesis zu verwenden
Ich habe versucht, anytree zu verwenden
Ich habe versucht, Pymc auszuführen
Ich habe ARP-Spoofing ausprobiert
Ich habe versucht, Mine Sweeper auf dem Terminal mit Python zu implementieren
Ich habe versucht, aiomysql zu verwenden
Ich habe Python> autopep8 ausprobiert
Installieren Sie PySide2 unter Ubuntu
Ich habe Python zum ersten Mal mit Heroku ausprobiert
Ich habe versucht, Coturn zu verwenden
Ich habe versucht, Pipenv zu verwenden
Ich habe versucht, Matplotlib zu verwenden
Ich habe versucht, "Anvil" zu verwenden.
Ich habe einen UnicodeDecodeError erhalten, als ich auf Ubuntu Pip installiert habe
Ich habe versucht, Hubot zu verwenden
Ich habe eine Python3-Umgebung unter Ubuntu mit direnv erstellt.
Ich habe versucht, ESPCN zu verwenden
Ich habe PyCaret2.0 (pycaret-nightly) ausprobiert.
Ich habe versucht, openpyxl zu verwenden
Installieren Sie JModelica unter Ubuntu
Ich habe einen visuellen Regressionstest auf GitHub Pages versucht
Ich habe versucht, Ipython zu verwenden
Ich habe versucht zu debuggen.
Ich habe Kivys Kartenansicht ausprobiert
Ich habe versucht, ngrok zu verwenden
Ich habe versucht, face_recognition zu verwenden
Ich möchte OpenJDK 11 mit Ubuntu Linux 18.04 LTS / 18.10 verwenden
Ich habe versucht, PySpark von Jupyter 4.x auf EMR zu verwenden
Ich habe versucht, Jupyter zu verwenden