Re: cython

Page principale

Répondre à ce message
Auteur: Jérôme Kieffer
Date:  
À: Patrick Dupre
CC: guilde
Sujet: Re: cython
On Tue, 2 Feb 2021 11:10:56 +0100
Patrick Dupre <pdupre@???> wrote:

> J'ai essaye cet exemple:
> https://cython.readthedocs.io/en/latest/src/userguide/numpy_tutorial.html
>
> Voici mon code .py
>
> import numpy as np
> array_1 = np.random.uniform(0, 1000, size=(3000, 2000)).astype(np.intc)
> array_2 = np.random.uniform(0, 1000, size=(3000, 2000)).astype(np.intc)
> a = 4
> b = 3
> c = 9
> def compute_np(array_1, array_2, a, b, c):
>     return np.clip(array_1, 2, 10) * a + array_2 * b + c
> #%timeit compute_np(array_1, array_2, a, b, c)

>
> import cython_test
> cython_test.compute(array_1, array_2, a, b, c)
>
>
> Comment je fais apparaitre les temps CPU ?


Tu peux utiliser %timeit sur du code cython aussi.
Pour le profiling plus avancé, il y a des options de compilation qui
permettent aux profiliers python d'acceder.

Si ces thématiques t'interessent, on a sorti un papier sur les
performances de cython et autres (manque que Transonic, made in Genoble
au passage)
https://hal.archives-ouvertes.fr/hal-02194025v2/documenthttps://hal.archives-ouvertes.fr/hal-02194025v2/document

A++

Jérôme