Ich habe riesige Python-Module (+8000 Zeilen). Sie haben im Grunde jede Menge Funktionen für die Interaktion mit einer Hardwareplattform über die serielle Schnittstelle durch Lesen und Schreiben in Hardwareregister.
Sie sind keine numerischen Algorithmen. Die Anwendung liest/schreibt also nur in Hardwareregister/-speicher. Ich verwende diese Bibliotheken, um benutzerdefinierte Skripte zu schreiben. Schließlich muss ich all diese Dinge verschieben, damit sie in einem eingebetteten Prozessor auf meiner Hardware ausgeführt werden, um eine genauere Kontrolle zu haben, dann starte ich das Ereignis einfach vom PC und der Rest ist in der Hardware.
Also muss ich sie in C konvertieren. Wenn ich meine Skripte von einem automatischen Tool in C konvertieren lassen könnte, würde mir das eine Menge Zeit sparen. Aus diesem Grund fühlte ich mich zu Cython hingezogen. Effizienz ist nicht wichtig, meine Codes sind keine Rechenmaschinen. Der generierte Code sollte jedoch relativ klein sein, um in meinen begrenzten Speicher (einige hundert Kilobyte) zu passen.
Kann ich Cython als Konverter für meine benutzerdefinierten Python-Skripte in C verwenden? Meine Vermutung ist ja, in welchem Fall kann ich diese .c-Dateien verwenden, um auf meiner Hardware ausgeführt zu werden? Meine Vermutung ist nicht, da ich Cython auch in meiner Hardware haben muss, damit sie laufen. Aber wenn nur einige .c-Dateien erstellt werden, kann ich sie durchgehen und eigenständig machen, da der Code nicht viele Funktionen von Python verwendet, sondern nur als schnell zu implementierendes Skript verwendet wird.
Hat jemand damit wirklich Erfolg gehabt? Ich glaube, das wäre sehr schwer zu debuggen. Ich möchte das wirklich selbst mit Cython/PyPy machen, aber das sieht so aus, als könnte es sehr interessant sein, es zu testen …
– Radix07
16. Juni 2015 um 20:33 Uhr