OPTIMIZANDO-CODIGOS-PARA-ALTA-PERFORMANCE
CYTHON
Embora o Python seja uma linguagem conveniente de alto nível, certos cálculos podem ser várias vezes mais rápidos do que em Python se eles forem implementados usando tipos estáticos em uma linguagem compilada. Alguns aspectos do Sage seriam muito lentos se eles fossem escritos inteiramente em Python. Para lidar com isso, o Sage suporta uma “versão” compilada do Python chamada Cython ([Cyt] and [Pyr]). O Cython é simultaneamente similar ao Python e ao C. A maior parte das construções em Python, incluindo “list comprehensions”, expressões condicionais, código como += são permitidos; você também pode importar código que você escreveu em outros módulos em Python. Além disso, você pode declarar variáveis em C arbitrárias, e qualquer chamada de bibliotecas em C pode ser feita diretamente. O código resultante é convertido para C e compilado usando um compilador para C
Execução da serie de fibonacci para o termo 35
Julia |
Python (jupyter) | Sage | Sage (Cython) | C(terminal) | Octave(GUI) | Scilab(GUI) | Maxima(GUI) | Matlab |
0.094s | 3.302s | 5.720s | 0.66s | 0.034s | 322.918s |
60.067 |
98.350s |
Altere o nome do arquivo contendo o codigo python de ".py" para ".spyx" e importe o arquivo ".spyx" e execute
Outro exemplo
Calcular a integral de:
Integração por metodo do trapezio entre os intervalos 0 a 5 e N = 500000
Compilando com o Cython