programing

Cython을 Python to C Converter로 사용

newstyles 2023. 10. 6. 20:56

Cython을 Python to C Converter로 사용

저는 거대한 파이썬 모듈(+8000 라인)을 가지고 있습니다.이들은 기본적으로 하드웨어 레지스터를 읽고 쓰는 방식으로 직렬 포트를 통해 하드웨어 플랫폼과 상호 작용하기 위한 수많은 기능을 가지고 있습니다.

수치 알고리즘이 아닙니다.따라서 애플리케이션은 하드웨어 레지스터/메모리에 읽기/쓰기에 불과합니다.저는 이 라이브러리를 사용하여 사용자 지정 스크립트를 작성합니다.결국 하드웨어에 내장된 프로세서에서 실행되도록 이 모든 것들을 옮겨야 더 세밀하게 제어할 수 있습니다. 그런 다음 PC에서 이벤트를 시작하고 나머지는 하드웨어에서 실행됩니다.

그래서 나는 그것들을 C로 변환해야 합니다.자동 도구로 스크립트를 C로 변환할 수 있다면 시간을 많이 절약할 수 있을 것입니다.이것이 제가 Cython에게 끌리게 된 이유입니다.효율성은 중요하지 않습니다. 제 코드는 숫자 크런치가 아닙니다.그러나 생성된 코드는 제한된 메모리(수백 킬로바이트)에 맞추기에는 상대적으로 작아야 합니다.

C에 대한 맞춤형 Python 스크립트의 변환기로 Cython을 사용할 수 있습니까?예, 어떤 경우에 하드웨어에서 실행할 수 있는 .c 파일을 사용할 수 있습니까?제 생각에는 제 하드웨어에 Cython이 있어야 작동할 수 있기 때문이 아닌 것 같습니다.하지만 .c 파일을 만들기만 하면 코드가 Python의 기능을 많이 사용하지 않기 때문에 스크립트를 구현하는 데 빠르게 사용하기 때문에 나는 그것을 통과해서 독립적으로 만들 수 있습니다.

  1. 네, 핵심은 Cython이 하는 일입니다.그렇지만.....
  2. Cython은 필요 없지만, 당신은 필요합니다.libpython. Python 기능을 많이 사용하지 않는 것처럼 느껴질 수도 있지만, 이 기능을 사용해 보면 사실이 아니라는 것을 알 수 있을 것입니다. 프로그램을 에 대한 의존성에서 분리할 수 없을 것입니다.libpython파이썬 언어를 계속 사용하면서 말입니다.

또 다른 옵션은 PyPy이며, 구체적으로는 PyPyPyPython 인터프리터가 아닌 번역 툴체인입니다.파이썬 언어의 하위 집합인 RPython을 C로 번역할 수 있습니다.파이썬 언어 기능이나 라이브러리를 많이 사용하지 않는 경우에는 효과가 있을 수 있습니다.

PyPy는 대부분 대안적인 파이썬 구현으로 알려져 있지만 동적 언어를 다양한 형태로 컴파일하기 위한 도구의 집합이기도 합니다.이것이 (R)Python으로 작성된 Python의 PyPy 구현을 기계 코드로 컴파일할 수 있게 하는 것입니다.

C++를 사용할 수 있다면, Nuitka는 RPython(셰이크킨과 PyPy가 사용하는 것)뿐만 아니라 일반 Python에서도 작동하는 Python to C++ 컴파일러입니다.

해당 임베디드 플랫폼에 C++를 사용할 수 있는 경우, shed skin이 있으면 python을 c++로 변환합니다.

언급URL : https://stackoverflow.com/questions/7112812/use-cython-as-python-to-c-converter