Articles of performance

Cómo hacer que este bloque de código de python sea corto y eficiente

Soy un novato total en progtwigción y python. Estaba resolviendo un problema. He encontrado la solución pero parece demasiado lento. if n % 2 == 0 and n % 3 == 0 and\ n % 4 == 0 and n % 5 == 0 and\ n % 6 == 0 and n % 7 == […]

numpy en hardware multinúcleo

¿Cuál es el estado de la técnica con respecto a obtener numpy para usar núcleos de múltiples numpy (en el hardware de Intel) para cosas como productos vectoriales internos y externos, multiplicaciones de matrices vectoriales, etc.? Estoy feliz de reconstruir el numpy si es necesario, pero en este momento estoy buscando formas de acelerar las […]

Operaciones matemáticas eficientes en arreglos pequeños en python con cython

Utilizo numpexpr para matemáticas rápidas en arreglos grandes, pero si el tamaño de la matriz es menor que el caché de la CPU, escribir mi código en Cython usando matrices simples es mucho más rápido, especialmente si la función se llama varias veces. El problema es, ¿cómo se trabaja con arrays en Cython, o más […]

¿Por qué la escritura lineal de lectura aleatoria no es más rápida que la escritura de lectura lineal aleatoria?

Actualmente estoy tratando de comprender mejor los problemas de rendimiento relacionados con la memoria / caché. Leí en algún lugar que la localidad de la memoria es más importante para la lectura que para la escritura, porque en el primer caso la CPU tiene que esperar los datos, mientras que en el último caso puede […]

Leyendo archivo enorme en Python

Tengo un archivo de texto de 384MB con 50 millones de líneas. Cada línea contiene 2 enteros separados por espacios: una clave y un valor. El archivo está ordenado por clave. Necesito una forma eficiente de buscar los valores de una lista de aproximadamente 200 claves en Python. Mi enfoque actual se incluye a continuación. […]

¿Cómo puedo acelerar la lectura de varios archivos y colocar los datos en un dataframe?

Tengo varios archivos de texto, digamos 50, que necesito leer en un dataframe masivo. En este momento, estoy usando los siguientes pasos. Lee cada archivo y comprueba cuáles son las tags. La información que necesito a menudo está contenida en las primeras líneas. Las mismas tags simplemente se repiten para el rest del archivo, con […]

Convertir una serie de pasos en cadenas: ¿por qué se aplica mucho más rápido que un astype?

Tengo un pandas.Series contienen enteros, pero necesito convertirlos en cadenas para algunas herramientas pandas.Series . Supongamos que tengo un objeto de la Series : import numpy as np import pandas as pd x = pd.Series(np.random.randint(0, 100, 1000000)) En StackOverflow y otros sitios web, he visto a la mayoría de las personas argumentar que la mejor […]

Count vs len en un Django QuerySet

En Django, dado que tengo un QuerySet que voy a recorrer e imprimir los resultados, ¿cuál es la mejor opción para contar los objetos? len(qs) o qs.count() ? (También dado que contar los objetos en la misma iteración no es una opción).

Pandas pd.Series.isin rendimiento con conjunto frente a matriz

En Python en general, la pertenencia a una colección de hashable se prueba mejor a través del set . Sabemos esto porque el uso de hashing nos da O (1) complejidad de búsqueda en comparación con O (n) para la list o np.ndarray . En Pandas, a menudo tengo que verificar si soy miembro de […]

Detectar eficientemente los cambios de signo en python.

Quiero hacer exactamente lo que este chico hizo: Python – contar los cambios de signo Sin embargo necesito optimizarlo para correr super rapido. En resumen, quiero tomar una serie de tiempo y decirle cada vez que cruce cruces cero (cambia de signo). Quiero registrar el tiempo entre cero cruces. Dado que se trata de datos […]