pyodide/benchmark/benchmarks/pairwise_loop.py

21 lines
512 B
Python

# from: http://jakevdp.github.com/blog/2012/08/24/numba-vs-cython/
# setup: import numpy as np ; X = np.linspace(0,10,200).reshape(20,10)
# run: pairwise_loop(X)
# pythran export pairwise_loop(float [][])
import numpy as np
def pairwise_loop(X):
M, N = X.shape
D = np.empty((M, M))
for i in range(M):
for j in range(M):
d = 0.0
for k in range(N):
tmp = X[i, k] - X[j, k]
d += tmp * tmp
D[i, j] = np.sqrt(d)
return D