|  | 
| 2 | 2 | from scipy.sparse import random | 
| 3 | 3 | import pytest | 
| 4 | 4 | 
 | 
| 5 |  | -def test_add_sparse_window(benchmark): | 
|  | 5 | +def test_add_window(benchmark): | 
| 6 | 6 |     dim = 10000 | 
| 7 |  | -    matrix = random(dim, dim, format="csr") | 
|  | 7 | +    matrix = random(dim, dim, format="csr").todense() | 
|  | 8 | +    def bench(): | 
|  | 9 | +        x = matrix[1:(dim-1), 1:(dim-1)]  | 
|  | 10 | +        res = x + x | 
|  | 11 | +    benchmark.pedantic(bench, iterations=10) | 
| 8 | 12 | 
 | 
|  | 13 | +@pytest.mark.parametrize("dim", [5000, 10000, 20000]) | 
|  | 14 | +def test_add_sparse_window(benchmark, dim): | 
|  | 15 | +    matrix = random(dim, dim, format="csr") | 
| 9 | 16 |     def bench(): | 
| 10 | 17 |         x = matrix[1:(dim-1), 1:(dim-1)]  | 
| 11 | 18 |         res = x + x | 
| 12 | 19 |         # Sanity check that this has a similar runtime as taco. | 
| 13 | 20 |         # res = matrix + matrix | 
| 14 | 21 |     benchmark.pedantic(bench, iterations=10) | 
| 15 | 22 | 
 | 
| 16 |  | -def test_add_multiple_sparse_windows(benchmark): | 
| 17 |  | -    dim = 10000 | 
|  | 23 | +@pytest.mark.parametrize("dim", [5000, 10000, 20000]) | 
|  | 24 | +def test_add_multiple_sparse_windows(benchmark, dim): | 
| 18 | 25 |     matrix1 = random(dim, dim, format="csr") | 
| 19 | 26 |     matrix2 = random(dim, dim, format="csr") | 
| 20 |  | - | 
| 21 | 27 |     def bench(): | 
| 22 | 28 |         res = matrix1[1:(dim-1), 1:(dim-1)] + matrix2[1:(dim-1), 1:(dim-1)] + matrix1[0:(dim-2), 0:(dim-2)] | 
| 23 | 29 |     benchmark.pedantic(bench, iterations=10) | 
| 24 | 30 | 
 | 
| 25 |  | -def test_add_sparse_strided_window(benchmark): | 
| 26 |  | -    dim = 10000 | 
|  | 31 | +@pytest.mark.parametrize("dim", [5000, 10000, 20000]) | 
|  | 32 | +def test_add_sparse_strided_window(benchmark, dim): | 
| 27 | 33 |     matrix = random(dim, dim, format="csr") | 
| 28 | 34 |     def bench(): | 
| 29 | 35 |         x = matrix[1:(dim-1):2, 1:(dim-1):2]  | 
| 30 | 36 |         res = x + x | 
| 31 | 37 |     benchmark.pedantic(bench, iterations=10) | 
| 32 | 38 | 
 | 
| 33 |  | -def test_add_sparse_index_set(benchmark): | 
| 34 |  | -    dim = 10000 | 
|  | 39 | +@pytest.mark.parametrize("dim", [5000, 10000, 20000]) | 
|  | 40 | +def test_add_sparse_index_set(benchmark, dim): | 
| 35 | 41 |     indexes = [i * 2 for i in range(0, dim//2)] | 
| 36 | 42 |     matrix = random(dim, dim, format="csr") | 
| 37 | 43 |     def bench(): | 
|  | 
0 commit comments