array Cython en modo pitón puro

votos
-1

Deseo desempaquetar datos en columnas que vienen a través de un socket - un montón de enteros, y luego un montón de flotadores, etc., por lo que es más rápido que con struct.unpack

Yo estaba pensando en utilizar una matriz Cython, pero no pudo encontrar cómo usarlo dentro de un script en Python regular, ya que utiliza el ejemplo Cython from cpython cimport array

Me preguntaba si es posible definir una matriz Cython en modo Python puro (algo parecido a cython.locals), y si es así, cómo.

Publicado el 20/10/2018 a las 10:37
fuente por usuario
En otros idiomas...                            


1 respuestas

votos
0

Cython puede manejar matrices de tipo C (es decir, el puntero a la ubicación de memoria) y mecanografiado memoryviews . En la práctica los memoryviews corresponden a arrays NumPy o objetos de amortiguamiento .

De tipo C matrices son difíciles de manejar manualmente mientras que los arrays NumPy son más convenients en términos de gestión de memoria. En la práctica, el rendimiento en NumPy objetos matrices / memoryviews / tampón es el mismo que el almacenamiento de los datos se realiza "a la C" de todos modos (un puntero a una ubicación de memoria), yo recomiendo para gestionar los datos con NumPy y pase a su alrededor. Cualquier código Cython o Python consciente del protocolo de tampón con permite cálculos C velocidad disponible el código computacional es Cython / C / C ++.

Respondida el 20/10/2018 a las 16:21
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more