build(deps): bump actions/download-artifact from 7 to 8 - #753
Open
dependabot[bot] wants to merge 1 commit into
Open
dependabot[bot] wants to merge 1 commit into
dependabot[bot] wants to merge 1 commit into
Conversation
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 7 to 8. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](actions/download-artifact@v7...v8) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-version: '8' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Contributor
Dagger benchmarks:
|
| master | dirty | master / dirty | |
|---|---|---|---|
| array/dagger/N=1024 (block 128)/add (X + X) | 27.6 ± 1.6 ms | 26.2 ± 1.6 ms | 1.05 ± 0.088 |
| array/dagger/N=1024 (block 128)/alloc (rand) | 12.4 ± 0.65 ms | 12.5 ± 0.83 ms | 0.99 ± 0.083 |
| array/dagger/N=1024 (block 128)/broadcast (X .+ 1) | 11 ± 0.67 ms | 11.4 ± 1.2 ms | 0.965 ± 0.12 |
| array/dagger/N=1024 (block 128)/map (sin.(X)) | 10.6 ± 0.61 ms | 11.2 ± 0.95 ms | 0.948 ± 0.097 |
| array/dagger/N=1024 (block 128)/norm | 11.8 ± 0.37 ms | 11.5 ± 0.11 ms | 1.02 ± 0.034 |
| array/dagger/N=1024 (block 128)/reduce (sum) | 24.9 ± 2.4 ms | 25.1 ± 3.1 ms | 0.995 ± 0.16 |
| array/dagger/N=1024 (block 128)/transpose (permutedims) | 13 ± 0.79 ms | 12.8 ± 0.63 ms | 1.02 ± 0.079 |
| array/dagger/N=1024 (block 512)/add (X + X) | 4.06 ± 0.35 ms | 4.07 ± 1.4 ms | 0.997 ± 0.36 |
| array/dagger/N=1024 (block 512)/alloc (rand) | 2.34 ± 3.3 ms | 1.62 ± 0.14 ms | 1.45 ± 2.1 |
| array/dagger/N=1024 (block 512)/broadcast (X .+ 1) | 2.6 ± 1 ms | 1.53 ± 0.76 ms | 1.69 ± 1.1 |
| array/dagger/N=1024 (block 512)/map (sin.(X)) | 5.84 ± 1.3 ms | 6.78 ± 2.1 ms | 0.862 ± 0.32 |
| array/dagger/N=1024 (block 512)/norm | 2.62 ± 1.8 ms | 1.13 ± 0.62 ms | 2.32 ± 2 |
| array/dagger/N=1024 (block 512)/reduce (sum) | 1.96 ± 0.53 ms | 2.14 ± 0.7 ms | 0.915 ± 0.39 |
| array/dagger/N=1024 (block 512)/transpose (permutedims) | 5.13 ± 0.19 ms | 5.71 ± 1.3 ms | 0.898 ± 0.2 |
| array/dagger/N=256 (block 128)/add (X + X) | 3.81 ± 1 ms | 2.72 ± 0.94 ms | 1.4 ± 0.6 |
| array/dagger/N=256 (block 128)/alloc (rand) | 1.27 ± 0.59 ms | 1.35 ± 0.42 ms | 0.94 ± 0.52 |
| array/dagger/N=256 (block 128)/broadcast (X .+ 1) | 1.14 ± 0.12 ms | 0.936 ± 0.12 ms | 1.22 ± 0.2 |
| array/dagger/N=256 (block 128)/map (sin.(X)) | 1.05 ± 1.5 ms | 0.958 ± 2.2 ms | 1.09 ± 2.9 |
| array/dagger/N=256 (block 128)/norm | 1.47 ± 2.3 ms | 0.934 ± 0.26 ms | 1.58 ± 2.5 |
| array/dagger/N=256 (block 128)/reduce (sum) | 1.57 ± 0.14 ms | 1.82 ± 2.6 ms | 0.864 ± 1.2 |
| array/dagger/N=256 (block 128)/transpose (permutedims) | 1.65 ± 0.52 ms | 1.25 ± 0.8 ms | 1.32 ± 0.95 |
| array/dagger/N=256 (block 256)/add (X + X) | 0.811 ± 0.092 ms | 0.769 ± 0.036 ms | 1.05 ± 0.13 |
| array/dagger/N=256 (block 256)/alloc (rand) | 0.641 ± 0.01 ms | 0.677 ± 0.053 ms | 0.948 ± 0.076 |
| array/dagger/N=256 (block 256)/broadcast (X .+ 1) | 0.409 ± 0.026 ms | 0.392 ± 0.098 ms | 1.04 ± 0.27 |
| array/dagger/N=256 (block 256)/map (sin.(X)) | 1.02 ± 0.041 ms | 1 ± 0.021 ms | 1.01 ± 0.046 |
| array/dagger/N=256 (block 256)/norm | 0.38 ± 0.013 ms | 0.388 ± 0.029 ms | 0.977 ± 0.081 |
| array/dagger/N=256 (block 256)/reduce (sum) | 0.515 ± 0.034 ms | 0.52 ± 0.03 ms | 0.991 ± 0.087 |
| array/dagger/N=256 (block 256)/transpose (permutedims) | 0.723 ± 0.016 ms | 0.716 ± 0.01 ms | 1.01 ± 0.026 |
| linalg/dagger/N=1024 (block 128)/cholesky | 0.0585 ± 0.0043 s | 0.0632 ± 0.016 s | 0.926 ± 0.24 |
| linalg/dagger/N=1024 (block 128)/lu | 0.123 ± 0.031 s | 0.12 ± 0.0034 s | 1.02 ± 0.26 |
| linalg/dagger/N=1024 (block 128)/matmul (A*A) | 0.178 ± 0.0082 s | 0.164 ± 0.051 s | 1.09 ± 0.34 |
| linalg/dagger/N=1024 (block 128)/matvec (A*x) | 9.27 ± 2.8 ms | 11.7 ± 2.2 ms | 0.79 ± 0.28 |
| linalg/dagger/N=1024 (block 128)/qr | 0.153 ± 0.011 s | 0.146 ± 0.03 s | 1.05 ± 0.23 |
| linalg/dagger/N=1024 (block 128)/solve (A\b via lu) | 0.181 ± 0.019 s | 0.181 ± 0.012 s | 1 ± 0.12 |
| linalg/dagger/N=1024 (block 128)/svd | 23.3 s | 23.5 s | 0.992 |
| linalg/dagger/N=1024 (block 128)/syrk (A'*A) | 0.0992 ± 0.018 s | 0.0932 ± 0.015 s | 1.06 ± 0.26 |
| linalg/dagger/N=1024 (block 512)/cholesky | 20.2 ± 1.9 ms | 19.9 ± 3.9 ms | 1.01 ± 0.22 |
| linalg/dagger/N=1024 (block 512)/lu | 0.0438 ± 0.0013 s | 0.0465 ± 0.0032 s | 0.942 ± 0.071 |
| linalg/dagger/N=1024 (block 512)/matmul (A*A) | 0.0462 ± 0.008 s | 0.0456 ± 0.0015 s | 1.01 ± 0.18 |
| linalg/dagger/N=1024 (block 512)/matvec (A*x) | 1.7 ± 0.35 ms | 2.06 ± 0.64 ms | 0.824 ± 0.31 |
| linalg/dagger/N=1024 (block 512)/qr | 0.114 ± 0.0058 s | 0.115 ± 0.0074 s | 0.988 ± 0.081 |
| linalg/dagger/N=1024 (block 512)/solve (A\b via lu) | 0.0539 ± 0.0011 s | 0.0538 ± 0.001 s | 1 ± 0.027 |
| linalg/dagger/N=1024 (block 512)/svd | 0.0382 h | 0.0394 h | 0.97 |
| linalg/dagger/N=1024 (block 512)/syrk (A'*A) | 0.0396 ± 0.0027 s | 0.0402 ± 0.0065 s | 0.985 ± 0.17 |
| linalg/dagger/N=256 (block 128)/cholesky | 5.62 ± 4 ms | 6.64 ± 1.1 ms | 0.845 ± 0.62 |
| linalg/dagger/N=256 (block 128)/lu | 9.67 ± 0.32 ms | 11 ± 3.7 ms | 0.876 ± 0.3 |
| linalg/dagger/N=256 (block 128)/matmul (A*A) | 7.36 ± 1.6 ms | 6.46 ± 5.3 ms | 1.14 ± 0.96 |
| linalg/dagger/N=256 (block 128)/matvec (A*x) | 1.98 ± 0.54 ms | 2.67 ± 0.52 ms | 0.743 ± 0.25 |
| linalg/dagger/N=256 (block 128)/qr | 9.87 ± 0.28 ms | 7.79 ± 0.82 ms | 1.27 ± 0.14 |
| linalg/dagger/N=256 (block 128)/solve (A\b via lu) | 14.2 ± 5 ms | 22.9 ± 5.1 ms | 0.618 ± 0.26 |
| linalg/dagger/N=256 (block 128)/svd | 0.67 ± 0.036 s | 0.447 ± 0.051 s | 1.5 ± 0.19 |
| linalg/dagger/N=256 (block 128)/syrk (A'*A) | 5.21 ± 0.73 ms | 7.86 ± 2 ms | 0.663 ± 0.2 |
| linalg/dagger/N=256 (block 256)/cholesky | 2.37 ± 0.33 ms | 2.19 ± 0.063 ms | 1.08 ± 0.15 |
| linalg/dagger/N=256 (block 256)/lu | 3.26 ± 0.045 ms | 3.4 ± 0.26 ms | 0.961 ± 0.074 |
| linalg/dagger/N=256 (block 256)/matmul (A*A) | 1.53 ± 0.43 ms | 1.63 ± 0.56 ms | 0.939 ± 0.42 |
| linalg/dagger/N=256 (block 256)/matvec (A*x) | 1.52 ± 0.57 ms | 1.33 ± 0.89 ms | 1.14 ± 0.88 |
| linalg/dagger/N=256 (block 256)/qr | 6.56 ± 2.2 ms | 4.19 ± 0.43 ms | 1.56 ± 0.55 |
| linalg/dagger/N=256 (block 256)/solve (A\b via lu) | 6.56 ± 0.9 ms | 6.74 ± 0.7 ms | 0.973 ± 0.17 |
| linalg/dagger/N=256 (block 256)/svd | 0.592 ± 0.02 s | 0.479 ± 0.036 s | 1.24 ± 0.1 |
| linalg/dagger/N=256 (block 256)/syrk (A'*A) | 2.63 ± 0.13 ms | 2.77 ± 0.081 ms | 0.949 ± 0.055 |
| sparse/dagger/N=1024 (block 64)/cg solve (laplacian) | 0.373 ± 0.017 s | 0.37 ± 0.017 s | 1.01 ± 0.065 |
| sparse/dagger/N=1024 (block 64)/spgemm (S*S) | 0.382 ± 0.011 s | 0.375 ± 0.0087 s | 1.02 ± 0.038 |
| sparse/dagger/N=1024 (block 64)/spmv (S*x) | 24.8 ± 2.4 ms | 24.6 ± 0.48 ms | 1.01 ± 0.098 |
| sparse/dagger/N=256 (block 16)/cg solve (laplacian) | 0.361 ± 0.016 s | 0.366 ± 0.0067 s | 0.987 ± 0.048 |
| sparse/dagger/N=256 (block 16)/spgemm (S*S) | 0.341 ± 0.0049 s | 0.348 ± 0.0022 s | 0.979 ± 0.015 |
| sparse/dagger/N=256 (block 16)/spmv (S*x) | 22.9 ± 3.4 ms | 22.8 ± 3.3 ms | 1.01 ± 0.21 |
| stencil/dagger/N=1024 (block 128)/alloc (neighbors Wrap) | 31.3 ± 1.3 ms | 0.0326 ± 0.0022 s | 0.962 ± 0.078 |
| stencil/dagger/N=1024 (block 128)/assign (const) | 11.6 ± 1.3 ms | 11.7 ± 0.24 ms | 0.99 ± 0.12 |
| stencil/dagger/N=1024 (block 128)/multi-expr | 24.8 ± 0.51 ms | 25.7 ± 1.3 ms | 0.966 ± 0.054 |
| stencil/dagger/N=1024 (block 128)/neighbors (Clamp) | 21.2 ± 0.051 ms | 21.7 ± 1.3 ms | 0.977 ± 0.06 |
| stencil/dagger/N=1024 (block 128)/neighbors (Pad) | 21 ± 3.1 ms | 18.9 ± 1.1 ms | 1.11 ± 0.17 |
| stencil/dagger/N=1024 (block 128)/neighbors (Reflect) | 19.9 ± 1.2 ms | 21.2 ± 1.5 ms | 0.94 ± 0.088 |
| stencil/dagger/N=1024 (block 128)/neighbors (Wrap) | 18.9 ± 2.8 ms | 20.9 ± 1.7 ms | 0.907 ± 0.15 |
| stencil/dagger/N=1024 (block 128)/update (+) | 13 ± 0.12 ms | 13.6 ± 1.3 ms | 0.961 ± 0.096 |
| stencil/dagger/N=1024 (block 512)/alloc (neighbors Wrap) | 7.17 ± 1.9 ms | 8 ± 1.2 ms | 0.895 ± 0.27 |
| stencil/dagger/N=1024 (block 512)/assign (const) | 1.1 ± 1.2 ms | 1.64 ± 0.95 ms | 0.67 ± 0.81 |
| stencil/dagger/N=1024 (block 512)/multi-expr | 3.99 ± 1.7 ms | 3.6 ± 1.9 ms | 1.11 ± 0.74 |
| stencil/dagger/N=1024 (block 512)/neighbors (Clamp) | 6.82 ± 2.1 ms | 7 ± 0.62 ms | 0.974 ± 0.31 |
| stencil/dagger/N=1024 (block 512)/neighbors (Pad) | 6.45 ± 0.24 ms | 6.19 ± 0.49 ms | 1.04 ± 0.092 |
| stencil/dagger/N=1024 (block 512)/neighbors (Reflect) | 6.24 ± 0.47 ms | 6.25 ± 0.38 ms | 0.999 ± 0.096 |
| stencil/dagger/N=1024 (block 512)/neighbors (Wrap) | 6.78 ± 0.2 ms | 6.85 ± 0.08 ms | 0.99 ± 0.031 |
| stencil/dagger/N=1024 (block 512)/update (+) | 2.11 ± 0.81 ms | 1.69 ± 0.63 ms | 1.25 ± 0.67 |
| stencil/dagger/N=256 (block 128)/alloc (neighbors Wrap) | 3.74 ± 1.1 ms | 3.11 ± 1.8 ms | 1.2 ± 0.77 |
| stencil/dagger/N=256 (block 128)/assign (const) | 1.54 ± 0.27 ms | 1.83 ± 3.1 ms | 0.843 ± 1.4 |
| stencil/dagger/N=256 (block 128)/multi-expr | 2.55 ± 0.69 ms | 3.26 ± 0.97 ms | 0.783 ± 0.32 |
| stencil/dagger/N=256 (block 128)/neighbors (Clamp) | 1.75 ± 0.5 ms | 1.76 ± 0.28 ms | 0.993 ± 0.33 |
| stencil/dagger/N=256 (block 128)/neighbors (Pad) | 1.97 ± 0.27 ms | 1.98 ± 0.22 ms | 0.998 ± 0.18 |
| stencil/dagger/N=256 (block 128)/neighbors (Reflect) | 2.08 ± 0.25 ms | 1.82 ± 0.0046 ms | 1.15 ± 0.14 |
| stencil/dagger/N=256 (block 128)/neighbors (Wrap) | 1.87 ± 2.2 ms | 2.07 ± 0.23 ms | 0.902 ± 1.1 |
| stencil/dagger/N=256 (block 128)/update (+) | 1.3 ± 0.85 ms | 1.52 ± 0.18 ms | 0.855 ± 0.57 |
| stencil/dagger/N=256 (block 256)/alloc (neighbors Wrap) | 1.63 ± 0.086 ms | 1.65 ± 0.0032 ms | 0.987 ± 0.052 |
| stencil/dagger/N=256 (block 256)/assign (const) | 0.53 ± 0.023 ms | 0.543 ± 0.026 ms | 0.976 ± 0.063 |
| stencil/dagger/N=256 (block 256)/multi-expr | 0.97 ± 0.022 ms | 0.97 ± 0.024 ms | 1 ± 0.033 |
| stencil/dagger/N=256 (block 256)/neighbors (Clamp) | 1.33 ± 1.5 ms | 1.33 ± 0.66 ms | 0.997 ± 1.2 |
| stencil/dagger/N=256 (block 256)/neighbors (Pad) | 1.76 ± 0.76 ms | 1.32 ± 0.033 ms | 1.33 ± 0.58 |
| stencil/dagger/N=256 (block 256)/neighbors (Reflect) | 1.48 ± 1.9 ms | 1.36 ± 0.86 ms | 1.09 ± 1.6 |
| stencil/dagger/N=256 (block 256)/neighbors (Wrap) | 1.45 ± 0.12 ms | 1.46 ± 0.7 ms | 0.989 ± 0.48 |
| stencil/dagger/N=256 (block 256)/update (+) | 0.599 ± 0.028 ms | 0.625 ± 0.61 ms | 0.958 ± 0.93 |
| time_to_load | 0.949 ± 0.013 s | 0.962 ± 0.0098 s | 0.987 ± 0.017 |
Allocations / memory
| master | dirty | master / dirty | |
|---|---|---|---|
| array/dagger/N=1024 (block 128)/add (X + X) | 0.0773 M allocs: 11.1 MB | 0.0772 M allocs: 11.1 MB | 1 |
| array/dagger/N=1024 (block 128)/alloc (rand) | 30.2 k allocs: 9.05 MB | 30.2 k allocs: 9.05 MB | 1 |
| array/dagger/N=1024 (block 128)/broadcast (X .+ 1) | 28.6 k allocs: 9.01 MB | 28.4 k allocs: 9 MB | 1 |
| array/dagger/N=1024 (block 128)/map (sin.(X)) | 26.1 k allocs: 8.9 MB | 26.1 k allocs: 8.9 MB | 1 |
| array/dagger/N=1024 (block 128)/norm | 29.5 k allocs: 1.02 MB | 29.7 k allocs: 1.03 MB | 0.993 |
| array/dagger/N=1024 (block 128)/reduce (sum) | 0.0616 M allocs: 2.19 MB | 0.0598 M allocs: 2.12 MB | 1.03 |
| array/dagger/N=1024 (block 128)/transpose (permutedims) | 0.0357 M allocs: 9.46 MB | 0.0356 M allocs: 9.46 MB | 1 |
| array/dagger/N=1024 (block 512)/add (X + X) | 5.46 k allocs: 8.22 MB | 5.43 k allocs: 8.22 MB | 1 |
| array/dagger/N=1024 (block 512)/alloc (rand) | 1.92 k allocs: 8.07 MB | 1.94 k allocs: 8.07 MB | 1 |
| array/dagger/N=1024 (block 512)/broadcast (X .+ 1) | 1.84 k allocs: 8.06 MB | 1.82 k allocs: 8.06 MB | 1 |
| array/dagger/N=1024 (block 512)/map (sin.(X)) | 1.68 k allocs: 8.06 MB | 1.68 k allocs: 8.06 MB | 1 |
| array/dagger/N=1024 (block 512)/norm | 1.87 k allocs: 0.0649 MB | 1.88 k allocs: 0.0654 MB | 0.993 |
| array/dagger/N=1024 (block 512)/reduce (sum) | 3.01 k allocs: 0.105 MB | 3.01 k allocs: 0.106 MB | 0.998 |
| array/dagger/N=1024 (block 512)/transpose (permutedims) | 2.77 k allocs: 8.12 MB | 2.78 k allocs: 8.12 MB | 1 |
| array/dagger/N=256 (block 128)/add (X + X) | 5.48 k allocs: 0.723 MB | 5.45 k allocs: 0.722 MB | 1 |
| array/dagger/N=256 (block 128)/alloc (rand) | 1.95 k allocs: 0.568 MB | 1.97 k allocs: 0.569 MB | 0.999 |
| array/dagger/N=256 (block 128)/broadcast (X .+ 1) | 1.85 k allocs: 0.565 MB | 1.86 k allocs: 0.566 MB | 0.999 |
| array/dagger/N=256 (block 128)/map (sin.(X)) | 1.7 k allocs: 0.559 MB | 1.71 k allocs: 0.559 MB | 1 |
| array/dagger/N=256 (block 128)/norm | 1.9 k allocs: 0.0659 MB | 1.9 k allocs: 0.0657 MB | 1 |
| array/dagger/N=256 (block 128)/reduce (sum) | 3.37 k allocs: 0.12 MB | 3.29 k allocs: 0.116 MB | 1.03 |
| array/dagger/N=256 (block 128)/transpose (permutedims) | 2.8 k allocs: 0.621 MB | 2.8 k allocs: 0.621 MB | 0.999 |
| array/dagger/N=256 (block 256)/add (X + X) | 1.7 k allocs: 0.576 MB | 1.69 k allocs: 0.576 MB | 1 |
| array/dagger/N=256 (block 256)/alloc (rand) | 0.56 k allocs: 0.52 MB | 0.56 k allocs: 0.52 MB | 1 |
| array/dagger/N=256 (block 256)/broadcast (X .+ 1) | 0.492 k allocs: 0.518 MB | 0.492 k allocs: 0.518 MB | 1 |
| array/dagger/N=256 (block 256)/map (sin.(X)) | 0.472 k allocs: 0.517 MB | 0.472 k allocs: 0.517 MB | 1 |
| array/dagger/N=256 (block 256)/norm | 0.508 k allocs: 18.2 kB | 0.508 k allocs: 18.2 kB | 1 |
| array/dagger/N=256 (block 256)/reduce (sum) | 0.677 k allocs: 26.2 kB | 0.679 k allocs: 26.4 kB | 0.995 |
| array/dagger/N=256 (block 256)/transpose (permutedims) | 0.976 k allocs: 0.548 MB | 0.976 k allocs: 0.548 MB | 1 |
| linalg/dagger/N=1024 (block 128)/cholesky | 0.104 M allocs: 15.4 MB | 0.105 M allocs: 15.4 MB | 0.996 |
| linalg/dagger/N=1024 (block 128)/lu | 0.29 M allocs: 23.1 MB | 0.292 M allocs: 23.1 MB | 0.997 |
| linalg/dagger/N=1024 (block 128)/matmul (A*A) | 0.234 M allocs: 16 MB | 0.225 M allocs: 15.6 MB | 1.02 |
| linalg/dagger/N=1024 (block 128)/matvec (A*x) | 0.0445 M allocs: 1.78 MB | 0.0434 M allocs: 1.74 MB | 1.03 |
| linalg/dagger/N=1024 (block 128)/qr | 0.228 M allocs: 25 MB | 0.225 M allocs: 24.9 MB | 1 |
| linalg/dagger/N=1024 (block 128)/solve (A\b via lu) | 0.355 M allocs: 25.7 MB | 0.367 M allocs: 26.3 MB | 0.979 |
| linalg/dagger/N=1024 (block 128)/svd | 2.4 M allocs: 2.27 GB | 2.37 M allocs: 2.27 GB | 1 |
| linalg/dagger/N=1024 (block 128)/syrk (A'*A) | 0.173 M allocs: 17.3 MB | 0.167 M allocs: 17 MB | 1.02 |
| linalg/dagger/N=1024 (block 512)/cholesky | 6.94 k allocs: 10.3 MB | 6.82 k allocs: 10.3 MB | 1 |
| linalg/dagger/N=1024 (block 512)/lu | 14.7 k allocs: 14.6 MB | 14.5 k allocs: 14.6 MB | 1 |
| linalg/dagger/N=1024 (block 512)/matmul (A*A) | 7.27 k allocs: 8.28 MB | 7.13 k allocs: 8.28 MB | 1 |
| linalg/dagger/N=1024 (block 512)/matvec (A*x) | 4.26 k allocs: 0.185 MB | 4.2 k allocs: 0.183 MB | 1.01 |
| linalg/dagger/N=1024 (block 512)/qr | 11.8 k allocs: 9.62 MB | 11.7 k allocs: 9.62 MB | 1 |
| linalg/dagger/N=1024 (block 512)/solve (A\b via lu) | 24.4 k allocs: 15.1 MB | 24.9 k allocs: 15.1 MB | 0.999 |
| linalg/dagger/N=1024 (block 512)/svd | 0.0469 M allocs: 0.197 GB | 0.047 M allocs: 0.197 GB | 1 |
| linalg/dagger/N=1024 (block 512)/syrk (A'*A) | 8.67 k allocs: 20.4 MB | 8.47 k allocs: 20.4 MB | 1 |
| linalg/dagger/N=256 (block 128)/cholesky | 6.93 k allocs: 0.912 MB | 7.02 k allocs: 0.916 MB | 0.996 |
| linalg/dagger/N=256 (block 128)/lu | 14.4 k allocs: 1.47 MB | 14.3 k allocs: 1.47 MB | 1 |
| linalg/dagger/N=256 (block 128)/matmul (A*A) | 7.28 k allocs: 0.782 MB | 7.14 k allocs: 0.777 MB | 1.01 |
| linalg/dagger/N=256 (block 128)/matvec (A*x) | 4.3 k allocs: 0.181 MB | 4.38 k allocs: 0.184 MB | 0.981 |
| linalg/dagger/N=256 (block 128)/qr | 11.7 k allocs: 1.26 MB | 11.6 k allocs: 1.25 MB | 1.01 |
| linalg/dagger/N=256 (block 128)/solve (A\b via lu) | 24.2 k allocs: 1.9 MB | 24.7 k allocs: 1.92 MB | 0.992 |
| linalg/dagger/N=256 (block 128)/svd | 0.0464 M allocs: 14.6 MB | 0.0459 M allocs: 14.6 MB | 1 |
| linalg/dagger/N=256 (block 128)/syrk (A'*A) | 8.49 k allocs: 1.6 MB | 8.45 k allocs: 1.6 MB | 1 |
| linalg/dagger/N=256 (block 256)/cholesky | 2.61 k allocs: 0.622 MB | 2.62 k allocs: 0.622 MB | 1 |
| linalg/dagger/N=256 (block 256)/lu | 4.89 k allocs: 1.23 MB | 4.89 k allocs: 1.23 MB | 1 |
| linalg/dagger/N=256 (block 256)/matmul (A*A) | 1.79 k allocs: 0.58 MB | 1.79 k allocs: 0.58 MB | 1 |
| linalg/dagger/N=256 (block 256)/matvec (A*x) | 1.65 k allocs: 0.0766 MB | 1.66 k allocs: 0.0769 MB | 0.995 |
| linalg/dagger/N=256 (block 256)/qr | 3.49 k allocs: 0.786 MB | 3.5 k allocs: 0.786 MB | 1 |
| linalg/dagger/N=256 (block 256)/solve (A\b via lu) | 10 k allocs: 1.47 MB | 10.1 k allocs: 1.48 MB | 0.998 |
| linalg/dagger/N=256 (block 256)/svd | 14.6 k allocs: 6.7 MB | 14.6 k allocs: 6.7 MB | 1 |
| linalg/dagger/N=256 (block 256)/syrk (A'*A) | 2.79 k allocs: 2.13 MB | 2.77 k allocs: 2.13 MB | 1 |
| sparse/dagger/N=1024 (block 64)/cg solve (laplacian) | 1.79 M allocs: 0.0707 GB | 1.89 M allocs: 0.0749 GB | 0.944 |
| sparse/dagger/N=1024 (block 64)/spgemm (S*S) | 2.41 M allocs: 0.129 GB | 2.42 M allocs: 0.129 GB | 0.999 |
| sparse/dagger/N=1024 (block 64)/spmv (S*x) | 0.125 M allocs: 5.02 MB | 0.128 M allocs: 5.13 MB | 0.978 |
| sparse/dagger/N=256 (block 16)/cg solve (laplacian) | 1.78 M allocs: 0.0703 GB | 1.87 M allocs: 0.0739 GB | 0.951 |
| sparse/dagger/N=256 (block 16)/spgemm (S*S) | 2.37 M allocs: 0.0904 GB | 2.42 M allocs: 0.0929 GB | 0.973 |
| sparse/dagger/N=256 (block 16)/spmv (S*x) | 0.122 M allocs: 4.91 MB | 0.131 M allocs: 5.24 MB | 0.937 |
| stencil/dagger/N=1024 (block 128)/alloc (neighbors Wrap) | 0.0987 M allocs: 12 MB | 0.0988 M allocs: 12 MB | 1 |
| stencil/dagger/N=1024 (block 128)/assign (const) | 0.0336 M allocs: 1.38 MB | 0.0337 M allocs: 1.39 MB | 0.996 |
| stencil/dagger/N=1024 (block 128)/multi-expr | 0.0758 M allocs: 3.37 MB | 0.0756 M allocs: 3.33 MB | 1.01 |
| stencil/dagger/N=1024 (block 128)/neighbors (Clamp) | 0.0692 M allocs: 3.45 MB | 0.0693 M allocs: 3.45 MB | 1 |
| stencil/dagger/N=1024 (block 128)/neighbors (Pad) | 0.0683 M allocs: 3.17 MB | 0.0683 M allocs: 3.28 MB | 0.964 |
| stencil/dagger/N=1024 (block 128)/neighbors (Reflect) | 0.0688 M allocs: 3.21 MB | 0.0683 M allocs: 3.22 MB | 0.998 |
| stencil/dagger/N=1024 (block 128)/neighbors (Wrap) | 0.0678 M allocs: 2.97 MB | 0.0679 M allocs: 3.09 MB | 0.96 |
| stencil/dagger/N=1024 (block 128)/update (+) | 0.0425 M allocs: 1.83 MB | 0.0421 M allocs: 1.94 MB | 0.943 |
| stencil/dagger/N=1024 (block 512)/alloc (neighbors Wrap) | 6.87 k allocs: 8.29 MB | 6.9 k allocs: 8.29 MB | 1 |
| stencil/dagger/N=1024 (block 512)/assign (const) | 2.69 k allocs: 0.117 MB | 2.67 k allocs: 0.116 MB | 1 |
| stencil/dagger/N=1024 (block 512)/multi-expr | 5.87 k allocs: 0.257 MB | 5.97 k allocs: 0.261 MB | 0.984 |
| stencil/dagger/N=1024 (block 512)/neighbors (Clamp) | 5.09 k allocs: 0.283 MB | 5.07 k allocs: 0.282 MB | 1 |
| stencil/dagger/N=1024 (block 512)/neighbors (Pad) | 4.94 k allocs: 0.278 MB | 4.91 k allocs: 0.277 MB | 1 |
| stencil/dagger/N=1024 (block 512)/neighbors (Reflect) | 5.03 k allocs: 0.311 MB | 5.05 k allocs: 0.313 MB | 0.996 |
| stencil/dagger/N=1024 (block 512)/neighbors (Wrap) | 4.91 k allocs: 0.219 MB | 4.91 k allocs: 0.218 MB | 1 |
| stencil/dagger/N=1024 (block 512)/update (+) | 3.21 k allocs: 0.141 MB | 3.2 k allocs: 0.141 MB | 1.01 |
| stencil/dagger/N=256 (block 128)/alloc (neighbors Wrap) | 6.89 k allocs: 0.788 MB | 6.94 k allocs: 0.789 MB | 0.999 |
| stencil/dagger/N=256 (block 128)/assign (const) | 2.68 k allocs: 0.117 MB | 2.63 k allocs: 0.115 MB | 1.02 |
| stencil/dagger/N=256 (block 128)/multi-expr | 5.89 k allocs: 0.258 MB | 5.92 k allocs: 0.259 MB | 0.995 |
| stencil/dagger/N=256 (block 128)/neighbors (Clamp) | 5.05 k allocs: 0.236 MB | 5.08 k allocs: 0.237 MB | 0.995 |
| stencil/dagger/N=256 (block 128)/neighbors (Pad) | 4.93 k allocs: 0.232 MB | 4.93 k allocs: 0.232 MB | 1 |
| stencil/dagger/N=256 (block 128)/neighbors (Reflect) | 5.05 k allocs: 0.244 MB | 5.06 k allocs: 0.244 MB | 1 |
| stencil/dagger/N=256 (block 128)/neighbors (Wrap) | 4.94 k allocs: 0.22 MB | 4.96 k allocs: 0.22 MB | 1 |
| stencil/dagger/N=256 (block 128)/update (+) | 3.21 k allocs: 0.142 MB | 3.2 k allocs: 0.141 MB | 1 |
| stencil/dagger/N=256 (block 256)/alloc (neighbors Wrap) | 2.1 k allocs: 0.597 MB | 2.08 k allocs: 0.596 MB | 1 |
| stencil/dagger/N=256 (block 256)/assign (const) | 0.941 k allocs: 0.0468 MB | 0.938 k allocs: 0.0468 MB | 1 |
| stencil/dagger/N=256 (block 256)/multi-expr | 2 k allocs: 0.0993 MB | 2.01 k allocs: 0.0999 MB | 0.994 |
| stencil/dagger/N=256 (block 256)/neighbors (Clamp) | 1.58 k allocs: 0.0849 MB | 1.59 k allocs: 0.0853 MB | 0.996 |
| stencil/dagger/N=256 (block 256)/neighbors (Pad) | 1.54 k allocs: 0.0841 MB | 1.54 k allocs: 0.0837 MB | 1.01 |
| stencil/dagger/N=256 (block 256)/neighbors (Reflect) | 1.57 k allocs: 0.0924 MB | 1.58 k allocs: 0.0926 MB | 0.998 |
| stencil/dagger/N=256 (block 256)/neighbors (Wrap) | 1.53 k allocs: 0.0766 MB | 1.53 k allocs: 0.0765 MB | 1 |
| stencil/dagger/N=256 (block 256)/update (+) | 1.09 k allocs: 0.0534 MB | 1.11 k allocs: 0.0542 MB | 0.985 |
| time_to_load | 0.199 k allocs: 11.5 kB | 0.199 k allocs: 11.5 kB | 1 |
Plots
No time regressions beyond 25.0% or allocation regressions beyond 25.0% (timing changes inside the reported ±spread don't count) 🎉
Improvements
linalg/dagger/N=256 (block 128)/svd(time): -33.3%
Within noise (12 metric(s) past threshold but inside the ±spread; not counted)
linalg/dagger/N=256 (block 128)/solve (A\b via lu)(time): 61.8%linalg/dagger/N=256 (block 128)/syrk (A'*A)(time): 50.9%stencil/dagger/N=1024 (block 512)/assign (const)(time): 49.2%linalg/dagger/N=256 (block 128)/matvec (A*x)(time): 34.6%stencil/dagger/N=256 (block 128)/multi-expr(time): 27.8%linalg/dagger/N=1024 (block 128)/matvec (A*x)(time): 26.6%array/dagger/N=256 (block 128)/add (X + X)(time): -28.6%array/dagger/N=1024 (block 512)/alloc (rand)(time): -30.9%linalg/dagger/N=256 (block 256)/qr(time): -36.1%array/dagger/N=256 (block 128)/norm(time): -36.7%array/dagger/N=1024 (block 512)/broadcast (X .+ 1)(time): -41.0%array/dagger/N=1024 (block 512)/norm(time): -56.9%
Distributed benchmarks (4 processes)
Dagger benchmarks: dirty vs master
Median time
| master | dirty | master / dirty | |
|---|---|---|---|
| array/dagger/N=1024 (block 128)/add (X + X) | 0.107 ± 0.025 s | 0.105 ± 0.024 s | 1.02 ± 0.33 |
| array/dagger/N=1024 (block 128)/alloc (rand) | 29.3 ± 0.93 ms | 29.6 ± 1.8 ms | 0.989 ± 0.068 |
| array/dagger/N=1024 (block 128)/broadcast (X .+ 1) | 0.0386 ± 0.0024 s | 0.0357 ± 0.0044 s | 1.08 ± 0.15 |
| array/dagger/N=1024 (block 128)/map (sin.(X)) | 0.0367 ± 0.0015 s | 0.0355 ± 0.0013 s | 1.03 ± 0.057 |
| array/dagger/N=1024 (block 128)/norm | 31 ± 4.7 ms | 0.0335 ± 0.0037 s | 0.925 ± 0.17 |
| array/dagger/N=1024 (block 128)/reduce (sum) | 0.0485 ± 0.0027 s | 0.047 ± 0.0016 s | 1.03 ± 0.067 |
| array/dagger/N=1024 (block 128)/transpose (permutedims) | 0.0318 ± 0.0034 s | 0.0373 ± 0.0041 s | 0.853 ± 0.13 |
| array/dagger/N=1024 (block 512)/add (X + X) | 18.6 ± 1.4 ms | 17 ± 2.6 ms | 1.1 ± 0.19 |
| array/dagger/N=1024 (block 512)/alloc (rand) | 2.3 ± 0.028 ms | 4.25 ± 1.7 ms | 0.542 ± 0.21 |
| array/dagger/N=1024 (block 512)/broadcast (X .+ 1) | 4.48 ± 24 ms | 0.0518 ± 0.1 s | 0.0864 ± 0.49 |
| array/dagger/N=1024 (block 512)/map (sin.(X)) | 8.17 ± 0.81 ms | 10.4 ± 23 ms | 0.789 ± 1.8 |
| array/dagger/N=1024 (block 512)/norm | 2.41 ± 0.71 ms | 2.3 ± 13 ms | 1.05 ± 5.9 |
| array/dagger/N=1024 (block 512)/reduce (sum) | 3.2 ± 18 ms | 3.05 ± 19 ms | 1.05 ± 8.7 |
| array/dagger/N=1024 (block 512)/transpose (permutedims) | 7.86 ± 0.89 ms | 7.13 ± 0.96 ms | 1.1 ± 0.19 |
| array/dagger/N=256 (block 128)/add (X + X) | 1.83 ± 0.025 ms | 1.83 ± 0.02 ms | 1 ± 0.018 |
| array/dagger/N=256 (block 128)/alloc (rand) | 1.36 ± 0.045 ms | 1.35 ± 0.061 ms | 1.01 ± 0.056 |
| array/dagger/N=256 (block 128)/broadcast (X .+ 1) | 0.761 ± 0.023 ms | 0.751 ± 0.049 ms | 1.01 ± 0.074 |
| array/dagger/N=256 (block 128)/map (sin.(X)) | 1.23 ± 0.019 ms | 1.22 ± 0.0099 ms | 1.01 ± 0.017 |
| array/dagger/N=256 (block 128)/norm | 0.769 ± 0.028 ms | 0.754 ± 0.02 ms | 1.02 ± 0.046 |
| array/dagger/N=256 (block 128)/reduce (sum) | 0.0332 ± 0.084 s | 3.07 ± 15 ms | 10.8 ± 59 |
| array/dagger/N=256 (block 128)/transpose (permutedims) | 1.03 ± 0.0043 ms | 1.04 ± 0.019 ms | 0.984 ± 0.019 |
| array/dagger/N=256 (block 256)/add (X + X) | 1.51 ± 0.11 ms | 1.59 ± 0.15 ms | 0.949 ± 0.11 |
| array/dagger/N=256 (block 256)/alloc (rand) | 0.838 ± 0.023 ms | 0.794 ± 0.021 ms | 1.06 ± 0.04 |
| array/dagger/N=256 (block 256)/broadcast (X .+ 1) | 0.327 ± 0.054 ms | 0.347 ± 0.025 ms | 0.942 ± 0.17 |
| array/dagger/N=256 (block 256)/map (sin.(X)) | 0.862 ± 0.058 ms | 0.937 ± 0.087 ms | 0.92 ± 0.11 |
| array/dagger/N=256 (block 256)/norm | 0.357 ± 0.0091 ms | 0.301 ± 0.036 ms | 1.19 ± 0.14 |
| array/dagger/N=256 (block 256)/reduce (sum) | 0.518 ± 0.0081 ms | 0.474 ± 0.0078 ms | 1.09 ± 0.025 |
| array/dagger/N=256 (block 256)/transpose (permutedims) | 0.741 ± 0.057 ms | 0.697 ± 0.037 ms | 1.06 ± 0.099 |
| linalg/dagger/N=1024 (block 128)/cholesky | 0.474 ± 0.022 s | 0.493 ± 0.027 s | 0.961 ± 0.069 |
| linalg/dagger/N=1024 (block 128)/lu | 0.259 ± 0.0033 s | 0.242 ± 0.0027 s | 1.07 ± 0.018 |
| linalg/dagger/N=1024 (block 128)/matmul (A*A) | 0.329 ± 0.018 s | 0.251 ± 0.013 s | 1.31 ± 0.1 |
| linalg/dagger/N=1024 (block 128)/matvec (A*x) | 0.0967 ± 0.01 s | 0.0958 ± 0.0096 s | 1.01 ± 0.15 |
| linalg/dagger/N=1024 (block 128)/qr | 0.309 ± 0.01 s | 0.28 ± 0.014 s | 1.1 ± 0.065 |
| linalg/dagger/N=1024 (block 128)/solve (A\b via lu) | 3.15 s | 0.29 ± 0.042 s | 10.9 |
| linalg/dagger/N=1024 (block 128)/svd | 52.4 s | 48.9 s | 1.07 |
| linalg/dagger/N=1024 (block 128)/syrk (A'*A) | 0.484 ± 0.14 s | 0.351 ± 0.095 s | 1.38 ± 0.54 |
| linalg/dagger/N=1024 (block 512)/cholesky | 0.296 ± 0.19 s | 0.261 ± 0.078 s | 1.14 ± 0.82 |
| linalg/dagger/N=1024 (block 512)/lu | 0.0426 ± 0.0025 s | 0.0432 ± 0.0082 s | 0.985 ± 0.19 |
| linalg/dagger/N=1024 (block 512)/matmul (A*A) | 0.0379 ± 0.0042 s | 0.0337 ± 0.0061 s | 1.12 ± 0.24 |
| linalg/dagger/N=1024 (block 512)/matvec (A*x) | 9.21 ± 3.9 ms | 7.74 ± 1.1 ms | 1.19 ± 0.53 |
| linalg/dagger/N=1024 (block 512)/qr | 0.111 ± 0.0042 s | 0.104 ± 0.00047 s | 1.07 ± 0.041 |
| linalg/dagger/N=1024 (block 512)/solve (A\b via lu) | 0.0574 ± 0.015 s | 0.0544 ± 0.0096 s | 1.05 ± 0.33 |
| linalg/dagger/N=1024 (block 512)/svd | 0.0341 h | 0.0347 h | 0.984 |
| linalg/dagger/N=1024 (block 512)/syrk (A'*A) | 0.0463 ± 0.0046 s | 0.0455 ± 0.0043 s | 1.02 ± 0.14 |
| linalg/dagger/N=256 (block 128)/cholesky | 4.7 ± 0.044 ms | 5.92 ± 0.32 ms | 0.794 ± 0.044 |
| linalg/dagger/N=256 (block 128)/lu | 7.06 ± 0.38 ms | 6.79 ± 0.79 ms | 1.04 ± 0.13 |
| linalg/dagger/N=256 (block 128)/matmul (A*A) | 4.96 ± 0.22 ms | 5.08 ± 0.22 ms | 0.976 ± 0.06 |
| linalg/dagger/N=256 (block 128)/matvec (A*x) | 1.87 ± 0.042 ms | 2.11 ± 0.021 ms | 0.887 ± 0.022 |
| linalg/dagger/N=256 (block 128)/qr | 7.49 ± 0.18 ms | 6.29 ± 0.079 ms | 1.19 ± 0.032 |
| linalg/dagger/N=256 (block 128)/solve (A\b via lu) | 14.7 ± 0.61 ms | 14.5 ± 0.58 ms | 1.01 ± 0.058 |
| linalg/dagger/N=256 (block 128)/svd | 0.554 ± 0.014 s | 0.541 ± 0.0076 s | 1.03 ± 0.029 |
| linalg/dagger/N=256 (block 128)/syrk (A'*A) | 5.28 ± 0.7 ms | 4.76 ± 0.41 ms | 1.11 ± 0.18 |
| linalg/dagger/N=256 (block 256)/cholesky | 2.82 ± 0.14 ms | 2.84 ± 0.17 ms | 0.994 ± 0.078 |
| linalg/dagger/N=256 (block 256)/lu | 4.47 ± 0.22 ms | 4.21 ± 0.091 ms | 1.06 ± 0.056 |
| linalg/dagger/N=256 (block 256)/matmul (A*A) | 2.31 ± 0.068 ms | 2.12 ± 0.046 ms | 1.09 ± 0.04 |
| linalg/dagger/N=256 (block 256)/matvec (A*x) | 1.41 ± 0.089 ms | 1.39 ± 0.052 ms | 1.02 ± 0.075 |
| linalg/dagger/N=256 (block 256)/qr | 4.89 ± 0.17 ms | 4.99 ± 0.095 ms | 0.981 ± 0.039 |
| linalg/dagger/N=256 (block 256)/solve (A\b via lu) | 0.288 ± 0.36 s | 0.496 ± 0.23 s | 0.581 ± 0.78 |
| linalg/dagger/N=256 (block 256)/svd | 0.498 ± 0.033 s | 0.44 ± 0.025 s | 1.13 ± 0.099 |
| linalg/dagger/N=256 (block 256)/syrk (A'*A) | 3.69 ± 0.066 ms | 3.42 ± 0.95 ms | 1.08 ± 0.3 |
| sparse/dagger/N=1024 (block 64)/cg solve (laplacian) | 11.1 s | 10 s | 1.1 |
| sparse/dagger/N=1024 (block 64)/spgemm (S*S) | 5.93 s | 5.61 s | 1.06 |
| sparse/dagger/N=1024 (block 64)/spmv (S*x) | 0.492 ± 0.0042 s | 0.469 ± 0.0076 s | 1.05 ± 0.019 |
| sparse/dagger/N=256 (block 16)/cg solve (laplacian) | 11 s | 9.52 s | 1.16 |
| sparse/dagger/N=256 (block 16)/spgemm (S*S) | 5.76 s | 5.98 s | 0.965 |
| sparse/dagger/N=256 (block 16)/spmv (S*x) | 0.473 ± 0.01 s | 0.484 ± 0.0039 s | 0.979 ± 0.022 |
| stencil/dagger/N=1024 (block 128)/assign (const) | 25.4 ± 6.9 ms | 0.0421 ± 0.0078 s | 0.603 ± 0.2 |
| stencil/dagger/N=1024 (block 128)/multi-expr | 0.234 ± 0.022 s | 0.198 ± 0.0052 s | 1.18 ± 0.12 |
| stencil/dagger/N=1024 (block 128)/update (+) | 0.179 ± 0.022 s | 0.164 ± 0.012 s | 1.09 ± 0.16 |
| stencil/dagger/N=1024 (block 512)/assign (const) | 4.6 ± 0.45 ms | 2.01 ± 2.2 ms | 2.29 ± 2.5 |
| stencil/dagger/N=1024 (block 512)/multi-expr | 0.0515 ± 0.04 s | 0.0528 ± 0.02 s | 0.974 ± 0.84 |
| stencil/dagger/N=1024 (block 512)/update (+) | 15.9 ± 0.5 ms | 14.7 ± 0.46 ms | 1.08 ± 0.048 |
| stencil/dagger/N=256 (block 128)/assign (const) | 1.15 ± 0.04 ms | 1.06 ± 0.01 ms | 1.08 ± 0.039 |
| stencil/dagger/N=256 (block 128)/multi-expr | 2.33 ± 0.049 ms | 2.12 ± 0.058 ms | 1.1 ± 0.038 |
| stencil/dagger/N=256 (block 128)/neighbors (Clamp) | 2.54 ± 0.46 ms | 2.39 ± 0.056 ms | 1.06 ± 0.19 |
| stencil/dagger/N=256 (block 128)/neighbors (Reflect) | 2.4 ± 0.089 ms | 2.34 ± 0.016 ms | 1.03 ± 0.039 |
| stencil/dagger/N=256 (block 128)/update (+) | 1.29 ± 0.0082 ms | 1.19 ± 0.0076 ms | 1.08 ± 0.0098 |
| stencil/dagger/N=256 (block 256)/assign (const) | 0.64 ± 0.023 ms | 0.578 ± 0.051 ms | 1.11 ± 0.11 |
| stencil/dagger/N=256 (block 256)/multi-expr | 1.61 ± 0.1 ms | 1.49 ± 0.21 ms | 1.08 ± 0.17 |
| stencil/dagger/N=256 (block 256)/neighbors (Clamp) | 1.7 ± 0.081 ms | 1.62 ± 0.0099 ms | 1.05 ± 0.05 |
| stencil/dagger/N=256 (block 256)/neighbors (Reflect) | 1.49 ± 0.083 ms | 1.65 ± 0.039 ms | 0.902 ± 0.054 |
| stencil/dagger/N=256 (block 256)/update (+) | 0.951 ± 0.059 ms | 0.842 ± 0.065 ms | 1.13 ± 0.11 |
| stencil/dagger/N=256 (block 128)/neighbors (Pad) | 2.55 ± 0.11 ms | ||
| stencil/dagger/N=256 (block 128)/neighbors (Wrap) | 2.44 ± 0.053 ms | ||
| stencil/dagger/N=256 (block 256)/neighbors (Pad) | 1.69 ± 0.16 ms | ||
| stencil/dagger/N=256 (block 256)/neighbors (Wrap) | 1.71 ± 0.047 ms | ||
| time_to_load | 0.996 ± 0.012 s | 0.984 ± 0.021 s | 1.01 ± 0.025 |
Allocations / memory
| master | dirty | master / dirty | |
|---|---|---|---|
| array/dagger/N=1024 (block 128)/add (X + X) | 0.168 M allocs: 18 MB | 0.163 M allocs: 14.4 MB | 1.25 |
| array/dagger/N=1024 (block 128)/alloc (rand) | 0.05 M allocs: 4.95 MB | 0.0504 M allocs: 4.91 MB | 1.01 |
| array/dagger/N=1024 (block 128)/broadcast (X .+ 1) | 0.0781 M allocs: 6.97 MB | 0.0804 M allocs: 6.99 MB | 0.996 |
| array/dagger/N=1024 (block 128)/map (sin.(X)) | 0.0747 M allocs: 6.93 MB | 0.0735 M allocs: 6.91 MB | 1 |
| array/dagger/N=1024 (block 128)/norm | 0.0535 M allocs: 2.23 MB | 0.0572 M allocs: 2.45 MB | 0.909 |
| array/dagger/N=1024 (block 128)/reduce (sum) | 0.0854 M allocs: 3.47 MB | 0.0858 M allocs: 3.59 MB | 0.965 |
| array/dagger/N=1024 (block 128)/transpose (permutedims) | 0.0627 M allocs: 7.74 MB | 0.0682 M allocs: 6.91 MB | 1.12 |
| array/dagger/N=1024 (block 512)/add (X + X) | 12.8 k allocs: 12.5 MB | 12.8 k allocs: 12.5 MB | 1 |
| array/dagger/N=1024 (block 512)/alloc (rand) | 2.06 k allocs: 8.07 MB | 2.06 k allocs: 2.15 MB | 3.75 |
| array/dagger/N=1024 (block 512)/broadcast (X .+ 1) | 1.96 k allocs: 2.29 MB | 3.17 k allocs: 4.16 MB | 0.55 |
| array/dagger/N=1024 (block 512)/map (sin.(X)) | 2.79 k allocs: 2.23 MB | 3.08 k allocs: 2.31 MB | 0.964 |
| array/dagger/N=1024 (block 512)/norm | 2.73 k allocs: 0.107 MB | 2.07 k allocs: 0.0723 MB | 1.48 |
| array/dagger/N=1024 (block 512)/reduce (sum) | 4.68 k allocs: 0.185 MB | 3.97 k allocs: 0.151 MB | 1.23 |
| array/dagger/N=1024 (block 512)/transpose (permutedims) | 4.59 k allocs: 2.33 MB | 7.1 k allocs: 2.33 MB | 0.998 |
| array/dagger/N=256 (block 128)/add (X + X) | 6.03 k allocs: 0.745 MB | 6.03 k allocs: 0.745 MB | 1 |
| array/dagger/N=256 (block 128)/alloc (rand) | 2 k allocs: 0.569 MB | 2 k allocs: 0.569 MB | 1 |
| array/dagger/N=256 (block 128)/broadcast (X .+ 1) | 1.84 k allocs: 0.564 MB | 1.84 k allocs: 0.564 MB | 1 |
| array/dagger/N=256 (block 128)/map (sin.(X)) | 1.73 k allocs: 0.558 MB | 1.73 k allocs: 0.558 MB | 1 |
| array/dagger/N=256 (block 128)/norm | 1.92 k allocs: 0.065 MB | 1.92 k allocs: 0.065 MB | 1 |
| array/dagger/N=256 (block 128)/reduce (sum) | 4.3 k allocs: 0.168 MB | 4.28 k allocs: 0.168 MB | 1 |
| array/dagger/N=256 (block 128)/transpose (permutedims) | 2.97 k allocs: 0.63 MB | 2.97 k allocs: 0.63 MB | 1 |
| array/dagger/N=256 (block 256)/add (X + X) | 2.27 k allocs: 0.604 MB | 2.5 k allocs: 0.616 MB | 0.982 |
| array/dagger/N=256 (block 256)/alloc (rand) | 0.591 k allocs: 0.521 MB | 0.591 k allocs: 0.521 MB | 1 |
| array/dagger/N=256 (block 256)/broadcast (X .+ 1) | 0.5 k allocs: 0.518 MB | 0.5 k allocs: 0.518 MB | 1 |
| array/dagger/N=256 (block 256)/map (sin.(X)) | 0.469 k allocs: 0.516 MB | 0.469 k allocs: 0.516 MB | 1 |
| array/dagger/N=256 (block 256)/norm | 0.516 k allocs: 18.1 kB | 0.516 k allocs: 18.1 kB | 1 |
| array/dagger/N=256 (block 256)/reduce (sum) | 0.675 k allocs: 26 kB | 0.675 k allocs: 26 kB | 1 |
| array/dagger/N=256 (block 256)/transpose (permutedims) | 1.24 k allocs: 0.563 MB | 1.24 k allocs: 0.563 MB | 1 |
| linalg/dagger/N=1024 (block 128)/cholesky | 0.66 M allocs: 0.0408 GB | 0.658 M allocs: 0.0417 GB | 0.978 |
| linalg/dagger/N=1024 (block 128)/lu | 0.556 M allocs: 0.0364 GB | 0.563 M allocs: 0.0369 GB | 0.986 |
| linalg/dagger/N=1024 (block 128)/matmul (A*A) | 0.52 M allocs: 31.3 MB | 0.49 M allocs: 28.9 MB | 1.08 |
| linalg/dagger/N=1024 (block 128)/matvec (A*x) | 0.159 M allocs: 9.25 MB | 0.159 M allocs: 9.28 MB | 0.997 |
| linalg/dagger/N=1024 (block 128)/qr | 0.401 M allocs: 0.0354 GB | 0.364 M allocs: 0.0328 GB | 1.08 |
| linalg/dagger/N=1024 (block 128)/solve (A\b via lu) | 2.58 M allocs: 0.158 GB | 0.673 M allocs: 0.0419 GB | 3.76 |
| linalg/dagger/N=1024 (block 128)/svd | 16.2 M allocs: 2.54 GB | 17.1 M allocs: 2.58 GB | 0.984 |
| linalg/dagger/N=1024 (block 128)/syrk (A'*A) | 0.65 M allocs: 0.0455 GB | 0.361 M allocs: 27.9 MB | 1.67 |
| linalg/dagger/N=1024 (block 512)/cholesky | 0.0346 M allocs: 9.55 MB | 26.5 k allocs: 9.18 MB | 1.04 |
| linalg/dagger/N=1024 (block 512)/lu | 21 k allocs: 16.9 MB | 17.5 k allocs: 14.7 MB | 1.15 |
| linalg/dagger/N=1024 (block 512)/matmul (A*A) | 12.5 k allocs: 10.5 MB | 9.02 k allocs: 8.35 MB | 1.26 |
| linalg/dagger/N=1024 (block 512)/matvec (A*x) | 11.6 k allocs: 0.503 MB | 11.4 k allocs: 0.497 MB | 1.01 |
| linalg/dagger/N=1024 (block 512)/qr | 12.8 k allocs: 9.67 MB | 12.8 k allocs: 9.67 MB | 1 |
| linalg/dagger/N=1024 (block 512)/solve (A\b via lu) | 0.0364 M allocs: 15.6 MB | 0.0366 M allocs: 15.6 MB | 1 |
| linalg/dagger/N=1024 (block 512)/svd | 0.174 M allocs: 0.31 GB | 0.167 M allocs: 0.312 GB | 0.995 |
| linalg/dagger/N=1024 (block 512)/syrk (A'*A) | 13.7 k allocs: 22.6 MB | 10.2 k allocs: 20.4 MB | 1.11 |
| linalg/dagger/N=256 (block 128)/cholesky | 8.92 k allocs: 1 MB | 9.59 k allocs: 1.03 MB | 0.97 |
| linalg/dagger/N=256 (block 128)/lu | 17.4 k allocs: 1.59 MB | 17.4 k allocs: 1.59 MB | 1 |
| linalg/dagger/N=256 (block 128)/matmul (A*A) | 9.03 k allocs: 0.85 MB | 9.02 k allocs: 0.85 MB | 1 |
| linalg/dagger/N=256 (block 128)/matvec (A*x) | 5.21 k allocs: 0.218 MB | 5.52 k allocs: 0.232 MB | 0.939 |
| linalg/dagger/N=256 (block 128)/qr | 12.8 k allocs: 1.3 MB | 12.7 k allocs: 1.3 MB | 1 |
| linalg/dagger/N=256 (block 128)/solve (A\b via lu) | 0.0329 M allocs: 2.28 MB | 0.0346 M allocs: 2.36 MB | 0.966 |
| linalg/dagger/N=256 (block 128)/svd | 0.165 M allocs: 26.9 MB | 0.176 M allocs: 27.4 MB | 0.981 |
| linalg/dagger/N=256 (block 128)/syrk (A'*A) | 10.2 k allocs: 1.67 MB | 10.2 k allocs: 1.67 MB | 1 |
| linalg/dagger/N=256 (block 256)/cholesky | 3.93 k allocs: 0.688 MB | 3.96 k allocs: 0.689 MB | 0.998 |
| linalg/dagger/N=256 (block 256)/lu | 7.33 k allocs: 1.35 MB | 7.35 k allocs: 1.35 MB | 1 |
| linalg/dagger/N=256 (block 256)/matmul (A*A) | 2.28 k allocs: 0.604 MB | 2.39 k allocs: 0.609 MB | 0.992 |
| linalg/dagger/N=256 (block 256)/matvec (A*x) | 2.59 k allocs: 0.123 MB | 2.59 k allocs: 0.123 MB | 0.999 |
| linalg/dagger/N=256 (block 256)/qr | 4.83 k allocs: 0.852 MB | 5.17 k allocs: 0.868 MB | 0.982 |
| linalg/dagger/N=256 (block 256)/solve (A\b via lu) | 0.0567 M allocs: 7.12 MB | 0.056 M allocs: 5.57 MB | 1.28 |
| linalg/dagger/N=256 (block 256)/svd | 21.8 k allocs: 7.05 MB | 21.8 k allocs: 7.05 MB | 1 |
| linalg/dagger/N=256 (block 256)/syrk (A'*A) | 4.09 k allocs: 2.2 MB | 4.1 k allocs: 2.2 MB | 1 |
| sparse/dagger/N=1024 (block 64)/cg solve (laplacian) | 16.8 M allocs: 0.761 GB | 15.3 M allocs: 0.692 GB | 1.1 |
| sparse/dagger/N=1024 (block 64)/spgemm (S*S) | 9.81 M allocs: 0.462 GB | 9.49 M allocs: 0.445 GB | 1.04 |
| sparse/dagger/N=1024 (block 64)/spmv (S*x) | 0.834 M allocs: 0.0353 GB | 0.818 M allocs: 0.0349 GB | 1.01 |
| sparse/dagger/N=256 (block 16)/cg solve (laplacian) | 16.7 M allocs: 0.756 GB | 14.8 M allocs: 0.671 GB | 1.13 |
| sparse/dagger/N=256 (block 16)/spgemm (S*S) | 9.39 M allocs: 0.424 GB | 9.76 M allocs: 0.439 GB | 0.965 |
| sparse/dagger/N=256 (block 16)/spmv (S*x) | 0.818 M allocs: 0.0342 GB | 0.811 M allocs: 0.0343 GB | 0.996 |
| stencil/dagger/N=1024 (block 128)/assign (const) | 0.0477 M allocs: 2.15 MB | 0.0715 M allocs: 3.31 MB | 0.649 |
| stencil/dagger/N=1024 (block 128)/multi-expr | 0.318 M allocs: 14.7 MB | 0.324 M allocs: 15 MB | 0.983 |
| stencil/dagger/N=1024 (block 128)/update (+) | 0.251 M allocs: 11.5 MB | 0.22 M allocs: 10 MB | 1.15 |
| stencil/dagger/N=1024 (block 512)/assign (const) | 7.07 k allocs: 0.331 MB | 2.97 k allocs: 0.131 MB | 2.52 |
| stencil/dagger/N=1024 (block 512)/multi-expr | 12.8 k allocs: 0.579 MB | 12.7 k allocs: 0.577 MB | 1 |
| stencil/dagger/N=1024 (block 512)/update (+) | 18.1 k allocs: 0.837 MB | 17.9 k allocs: 0.83 MB | 1.01 |
| stencil/dagger/N=256 (block 128)/assign (const) | 2.91 k allocs: 0.129 MB | 2.96 k allocs: 0.131 MB | 0.983 |
| stencil/dagger/N=256 (block 128)/multi-expr | 6.83 k allocs: 0.302 MB | 6.74 k allocs: 0.299 MB | 1.01 |
| stencil/dagger/N=256 (block 128)/neighbors (Clamp) | 6.31 k allocs: 0.289 MB | 6.3 k allocs: 0.288 MB | 1 |
| stencil/dagger/N=256 (block 128)/neighbors (Reflect) | 6.3 k allocs: 0.297 MB | 6.3 k allocs: 0.297 MB | 1 |
| stencil/dagger/N=256 (block 128)/update (+) | 3.87 k allocs: 0.171 MB | 3.85 k allocs: 0.17 MB | 1 |
| stencil/dagger/N=256 (block 256)/assign (const) | 1.22 k allocs: 0.0626 MB | 1.2 k allocs: 0.0618 MB | 1.01 |
| stencil/dagger/N=256 (block 256)/multi-expr | 3.06 k allocs: 0.654 MB | 2.99 k allocs: 0.65 MB | 1.01 |
| stencil/dagger/N=256 (block 256)/neighbors (Clamp) | 2.14 k allocs: 0.611 MB | 2.13 k allocs: 0.611 MB | 1 |
| stencil/dagger/N=256 (block 256)/neighbors (Reflect) | 2.14 k allocs: 0.619 MB | 2.14 k allocs: 0.619 MB | 1 |
| stencil/dagger/N=256 (block 256)/update (+) | 1.61 k allocs: 0.579 MB | 1.53 k allocs: 0.576 MB | 1.01 |
| stencil/dagger/N=256 (block 128)/neighbors (Pad) | 6.18 k allocs: 0.284 MB | ||
| stencil/dagger/N=256 (block 128)/neighbors (Wrap) | 6.19 k allocs: 0.272 MB | ||
| stencil/dagger/N=256 (block 256)/neighbors (Pad) | 2.09 k allocs: 0.609 MB | ||
| stencil/dagger/N=256 (block 256)/neighbors (Wrap) | 2.18 k allocs: 0.607 MB | ||
| time_to_load | 0.203 k allocs: 11.6 kB | 0.199 k allocs: 11.5 kB | 1.02 |
Plots
⚠️ Regressions (time > 35.0% and outside the reported ±spread; allocs/memory > 25.0%)
array/dagger/N=1024 (block 512)/alloc (rand)(time): +84.5%array/dagger/N=1024 (block 512)/broadcast (X .+ 1)(memory): +81.7%stencil/dagger/N=1024 (block 128)/assign (const)(time): +66.0%array/dagger/N=1024 (block 512)/broadcast (X .+ 1)(allocs): +61.4%array/dagger/N=1024 (block 512)/transpose (permutedims)(allocs): +54.8%stencil/dagger/N=1024 (block 128)/assign (const)(memory): +54.1%stencil/dagger/N=1024 (block 128)/assign (const)(allocs): +50.0%
Improvements
linalg/dagger/N=1024 (block 128)/solve (A\b via lu)(time): -90.8%linalg/dagger/N=1024 (block 128)/solve (A\b via lu)(allocs): -73.9%linalg/dagger/N=1024 (block 128)/solve (A\b via lu)(memory): -73.4%array/dagger/N=1024 (block 512)/alloc (rand)(memory): -73.3%stencil/dagger/N=1024 (block 512)/assign (const)(memory): -60.3%stencil/dagger/N=1024 (block 512)/assign (const)(allocs): -57.9%linalg/dagger/N=1024 (block 128)/syrk (A'*A)(allocs): -44.5%linalg/dagger/N=1024 (block 128)/syrk (A'*A)(memory): -40.3%array/dagger/N=1024 (block 512)/norm(memory): -32.6%linalg/dagger/N=1024 (block 512)/matmul (A*A)(allocs): -28.0%linalg/dagger/N=1024 (block 512)/syrk (A'*A)(allocs): -25.6%
Within noise (4 metric(s) past threshold but inside the ±spread; not counted)
array/dagger/N=1024 (block 512)/broadcast (X .+ 1)(time): 1057.2%linalg/dagger/N=256 (block 256)/solve (A\b via lu)(time): 72.1%stencil/dagger/N=1024 (block 512)/assign (const)(time): -56.3%array/dagger/N=256 (block 128)/reduce (sum)(time): -90.7%
MPI benchmarks (4 ranks)
Dagger benchmarks: dirty vs master
Median time
| master | dirty | master / dirty | |
|---|---|---|---|
| array/dagger/N=1024 (block 128)/add (X + X) | 0.193 ± 0.0018 s | 0.187 ± 0.0008 s | 1.03 ± 0.01 |
| array/dagger/N=1024 (block 128)/alloc (rand) | 0.0576 ± 0.0032 s | 0.0552 ± 0.0072 s | 1.04 ± 0.15 |
| array/dagger/N=1024 (block 128)/broadcast (X .+ 1) | 22.3 ± 0.41 ms | 21.6 ± 0.28 ms | 1.03 ± 0.023 |
| array/dagger/N=1024 (block 128)/map (sin.(X)) | 24.4 ± 0.57 ms | 23.3 ± 0.1 ms | 1.05 ± 0.025 |
| array/dagger/N=1024 (block 128)/norm | 24.7 ± 0.19 ms | 24.5 ± 0.41 ms | 1.01 ± 0.018 |
| array/dagger/N=1024 (block 128)/reduce (sum) | 0.0453 ± 0.0067 s | 0.0502 ± 0.014 s | 0.903 ± 0.29 |
| array/dagger/N=1024 (block 128)/transpose (permutedims) | 0.0939 ± 0.00062 s | 0.0931 ± 0.0013 s | 1.01 ± 0.015 |
| array/dagger/N=1024 (block 512)/add (X + X) | 19 ± 0.13 ms | 17.6 ± 0.33 ms | 1.07 ± 0.021 |
| array/dagger/N=1024 (block 512)/alloc (rand) | 4.87 ± 2.3 ms | 4.98 ± 1.8 ms | 0.977 ± 0.59 |
| array/dagger/N=1024 (block 512)/broadcast (X .+ 1) | 2.95 ± 1.5 ms | 2.77 ± 0.48 ms | 1.07 ± 0.57 |
| array/dagger/N=1024 (block 512)/map (sin.(X)) | 5.99 ± 0.46 ms | 5.94 ± 0.46 ms | 1.01 ± 0.11 |
| array/dagger/N=1024 (block 512)/norm | 5.79 ± 0.093 ms | 5.49 ± 0.082 ms | 1.05 ± 0.023 |
| array/dagger/N=1024 (block 512)/reduce (sum) | 3.01 ± 0.027 ms | 2.98 ± 0.01 ms | 1.01 ± 0.0097 |
| array/dagger/N=1024 (block 512)/transpose (permutedims) | 16.7 ± 0.38 ms | 15.6 ± 1.1 ms | 1.07 ± 0.077 |
| array/dagger/N=256 (block 128)/add (X + X) | 13.1 ± 0.1 ms | 13.3 ± 0.24 ms | 0.986 ± 0.019 |
| array/dagger/N=256 (block 128)/alloc (rand) | 3.8 ± 6.5 ms | 3.67 ± 0.12 ms | 1.03 ± 1.8 |
| array/dagger/N=256 (block 128)/broadcast (X .+ 1) | 1.55 ± 0.024 ms | 1.56 ± 0.01 ms | 0.991 ± 0.017 |
| array/dagger/N=256 (block 128)/map (sin.(X)) | 1.66 ± 0.011 ms | 1.68 ± 0.037 ms | 0.989 ± 0.023 |
| array/dagger/N=256 (block 128)/norm | 1.91 ± 0.021 ms | 1.9 ± 0.031 ms | 1 ± 0.02 |
| array/dagger/N=256 (block 128)/reduce (sum) | 2.85 ± 0.0013 ms | 2.87 ± 0.04 ms | 0.994 ± 0.014 |
| array/dagger/N=256 (block 128)/transpose (permutedims) | 6.44 ± 0.049 ms | 6.45 ± 0.032 ms | 0.998 ± 0.0091 |
| array/dagger/N=256 (block 256)/add (X + X) | 4.17 ± 0.08 ms | 4.14 ± 0.017 ms | 1.01 ± 0.02 |
| array/dagger/N=256 (block 256)/alloc (rand) | 4.95 ± 7.3 ms | 1.65 ± 0.021 ms | 3 ± 4.4 |
| array/dagger/N=256 (block 256)/broadcast (X .+ 1) | 0.569 ± 0.045 ms | 0.581 ± 0.016 ms | 0.98 ± 0.081 |
| array/dagger/N=256 (block 256)/map (sin.(X)) | 1.31 ± 0.012 ms | 1.32 ± 0.02 ms | 0.993 ± 0.018 |
| array/dagger/N=256 (block 256)/norm | 1.15 ± 0.00089 ms | 1.11 ± 0.0039 ms | 1.04 ± 0.0037 |
| array/dagger/N=256 (block 256)/reduce (sum) | 0.84 ± 0.026 ms | 0.795 ± 0.019 ms | 1.06 ± 0.041 |
| array/dagger/N=256 (block 256)/transpose (permutedims) | 2.38 ± 0.066 ms | 2.24 ± 0.077 ms | 1.06 ± 0.047 |
| linalg/dagger/N=1024 (block 128)/cholesky | 4.17 s | 4.12 s | 1.01 |
| linalg/dagger/N=1024 (block 128)/lu | 29.3 s | 30.4 s | 0.965 |
| linalg/dagger/N=1024 (block 128)/matmul (A*A) | 5.78 s | 6.43 s | 0.898 |
| linalg/dagger/N=1024 (block 128)/matvec (A*x) | 0.193 ± 0.00062 s | 0.195 ± 0.00033 s | 0.988 ± 0.0036 |
| linalg/dagger/N=1024 (block 128)/qr | 2.54 s | 3.28 s | 0.772 |
| linalg/dagger/N=1024 (block 128)/solve (A\b via lu) | 30.3 s | 30.9 s | 0.978 |
| linalg/dagger/N=1024 (block 128)/syrk (A'*A) | 3.83 s | 4 s | 0.958 |
| linalg/dagger/N=1024 (block 512)/cholesky | 0.296 ± 0.043 s | 0.21 ± 0.023 s | 1.41 ± 0.26 |
| linalg/dagger/N=1024 (block 512)/lu | 10.3 s | 9.95 s | 1.03 |
| linalg/dagger/N=1024 (block 512)/matmul (A*A) | 0.283 ± 0.043 s | 0.3 ± 0.021 s | 0.943 ± 0.16 |
| linalg/dagger/N=1024 (block 512)/matvec (A*x) | 22.3 ± 2.3 ms | 21.3 ± 0.35 ms | 1.05 ± 0.11 |
| linalg/dagger/N=1024 (block 512)/qr | 0.628 ± 0.16 s | 0.572 ± 0.17 s | 1.1 ± 0.43 |
| linalg/dagger/N=1024 (block 512)/solve (A\b via lu) | 10.6 s | 10.1 s | 1.05 |
| linalg/dagger/N=1024 (block 512)/syrk (A'*A) | 0.292 ± 0.048 s | 0.242 ± 0.03 s | 1.21 ± 0.25 |
| linalg/dagger/N=256 (block 128)/cholesky | 0.209 ± 0.11 s | 0.198 ± 0.0047 s | 1.05 ± 0.57 |
| linalg/dagger/N=256 (block 128)/lu | 1.85 ± 0.0018 s | 1.85 ± 0.011 s | 1 ± 0.0059 |
| linalg/dagger/N=256 (block 128)/matmul (A*A) | 0.161 ± 0.047 s | 0.174 ± 0.014 s | 0.926 ± 0.28 |
| linalg/dagger/N=256 (block 128)/matvec (A*x) | 20.3 ± 1.2 ms | 20 ± 1.2 ms | 1.02 ± 0.086 |
| linalg/dagger/N=256 (block 128)/qr | 0.2 ± 0.0081 s | 0.248 ± 0.0012 s | 0.808 ± 0.033 |
| linalg/dagger/N=256 (block 128)/solve (A\b via lu) | 1.89 ± 0.00098 s | 1.89 ± 0.0088 s | 1 ± 0.0047 |
| linalg/dagger/N=256 (block 128)/syrk (A'*A) | 0.141 ± 0.0093 s | 0.175 ± 0.0046 s | 0.804 ± 0.057 |
| linalg/dagger/N=256 (block 256)/cholesky | 0.0838 ± 0.052 s | ||
| linalg/dagger/N=256 (block 256)/lu | 0.708 ± 0.003 s | ||
| linalg/dagger/N=256 (block 256)/matmul (A*A) | 5.31 ± 0.15 ms | ||
| linalg/dagger/N=256 (block 256)/matvec (A*x) | 5.1 ± 0.061 ms | ||
| linalg/dagger/N=256 (block 256)/qr | 15.3 ± 1.4 ms | ||
| linalg/dagger/N=256 (block 256)/solve (A\b via lu) | 0.722 ± 0.0047 s | ||
| linalg/dagger/N=256 (block 256)/syrk (A'*A) | 12.6 ± 29 ms | ||
| sparse/dagger/N=1024 (block 64)/cg solve (laplacian) | 14.1 s | ||
| sparse/dagger/N=1024 (block 64)/spgemm (S*S) | 6.99 s | ||
| sparse/dagger/N=1024 (block 64)/spmv (S*x) | 0.671 ± 0.00092 s | ||
| sparse/dagger/N=256 (block 16)/cg solve (laplacian) | 13 s | ||
| sparse/dagger/N=256 (block 16)/spgemm (S*S) | 6.99 s | ||
| sparse/dagger/N=256 (block 16)/spmv (S*x) | 0.667 ± 0.0032 s | ||
| stencil/dagger/N=1024 (block 128)/alloc (neighbors Wrap) | 1.46 ± 0.002 s | ||
| stencil/dagger/N=1024 (block 128)/assign (const) | 0.0906 ± 0.0014 s | ||
| stencil/dagger/N=1024 (block 128)/multi-expr | 0.242 ± 0.00088 s | ||
| stencil/dagger/N=1024 (block 128)/neighbors (Clamp) | 1.31 ± 0.013 s | ||
| stencil/dagger/N=1024 (block 128)/neighbors (Pad) | 1.22 ± 0.0013 s | ||
| stencil/dagger/N=1024 (block 128)/neighbors (Reflect) | 1.32 ± 0.0019 s | ||
| stencil/dagger/N=1024 (block 128)/neighbors (Wrap) | 1.49 ± 0.012 s | ||
| stencil/dagger/N=1024 (block 128)/update (+) | 0.15 ± 0.00027 s | ||
| stencil/dagger/N=1024 (block 512)/alloc (neighbors Wrap) | 0.132 ± 0.00016 s | ||
| stencil/dagger/N=1024 (block 512)/assign (const) | 6.93 ± 0.074 ms | ||
| stencil/dagger/N=1024 (block 512)/multi-expr | 17.5 ± 0.037 ms | ||
| stencil/dagger/N=1024 (block 512)/neighbors (Clamp) | 0.0963 ± 0.0021 s | ||
| stencil/dagger/N=1024 (block 512)/neighbors (Pad) | 0.0701 ± 0.00025 s | ||
| stencil/dagger/N=1024 (block 512)/neighbors (Reflect) | 0.0958 ± 0.0023 s | ||
| stencil/dagger/N=1024 (block 512)/neighbors (Wrap) | 0.13 ± 0.0012 s | ||
| stencil/dagger/N=1024 (block 512)/update (+) | 10.7 ± 0.031 ms | ||
| stencil/dagger/N=256 (block 128)/alloc (neighbors Wrap) | 0.114 ± 0.0016 s | ||
| stencil/dagger/N=256 (block 128)/assign (const) | 6.44 ± 0.067 ms | ||
| stencil/dagger/N=256 (block 128)/multi-expr | 16.4 ± 0.11 ms | ||
| stencil/dagger/N=256 (block 128)/neighbors (Clamp) | 0.0741 ± 0.00058 s | ||
| stencil/dagger/N=256 (block 128)/neighbors (Pad) | 0.0501 ± 0.00026 s | ||
| stencil/dagger/N=256 (block 128)/neighbors (Reflect) | 0.0754 ± 0.00014 s | ||
| stencil/dagger/N=256 (block 128)/neighbors (Wrap) | 0.112 ± 0.0011 s | ||
| stencil/dagger/N=256 (block 128)/update (+) | 10.1 ± 0.039 ms | ||
| stencil/dagger/N=256 (block 256)/alloc (neighbors Wrap) | 6.52 ± 0.092 ms | ||
| stencil/dagger/N=256 (block 256)/assign (const) | 2.14 ± 0.016 ms | ||
| stencil/dagger/N=256 (block 256)/multi-expr | 5.02 ± 0.17 ms | ||
| stencil/dagger/N=256 (block 256)/neighbors (Clamp) | 5.55 ± 0.29 ms | ||
| stencil/dagger/N=256 (block 256)/neighbors (Pad) | 5.23 ± 0.065 ms | ||
| stencil/dagger/N=256 (block 256)/neighbors (Reflect) | 5.2 ± 0.027 ms | ||
| stencil/dagger/N=256 (block 256)/neighbors (Wrap) | 5.14 ± 0.013 ms | ||
| stencil/dagger/N=256 (block 256)/update (+) | 3.01 ± 0.03 ms | ||
| time_to_load | 0.978 ± 0.0039 s | 0.96 ± 0.0095 s | 1.02 ± 0.011 |
Allocations / memory
| master | dirty | master / dirty | |
|---|---|---|---|
| array/dagger/N=1024 (block 128)/add (X + X) | 0.655 M allocs: 0.035 GB | 0.655 M allocs: 0.035 GB | 1 |
| array/dagger/N=1024 (block 128)/alloc (rand) | 0.101 M allocs: 6.88 MB | 0.101 M allocs: 6.88 MB | 1 |
| array/dagger/N=1024 (block 128)/broadcast (X .+ 1) | 0.0413 M allocs: 3.55 MB | 0.0411 M allocs: 3.54 MB | 1 |
| array/dagger/N=1024 (block 128)/map (sin.(X)) | 0.0386 M allocs: 3.43 MB | 0.0387 M allocs: 3.44 MB | 1 |
| array/dagger/N=1024 (block 128)/norm | 0.0513 M allocs: 2.01 MB | 0.0514 M allocs: 2.02 MB | 0.997 |
| array/dagger/N=1024 (block 128)/reduce (sum) | 0.0821 M allocs: 3.08 MB | 0.0813 M allocs: 3.04 MB | 1.02 |
| array/dagger/N=1024 (block 128)/transpose (permutedims) | 0.303 M allocs: 17.7 MB | 0.303 M allocs: 17.7 MB | 0.999 |
| array/dagger/N=1024 (block 512)/add (X + X) | 0.0449 M allocs: 4.32 MB | 0.0449 M allocs: 4.32 MB | 1 |
| array/dagger/N=1024 (block 512)/alloc (rand) | 8.23 k allocs: 2.4 MB | 8.23 k allocs: 2.4 MB | 1 |
| array/dagger/N=1024 (block 512)/broadcast (X .+ 1) | 2.55 k allocs: 2.09 MB | 2.58 k allocs: 2.09 MB | 1 |
| array/dagger/N=1024 (block 512)/map (sin.(X)) | 2.47 k allocs: 2.09 MB | 2.38 k allocs: 2.09 MB | 1 |
| array/dagger/N=1024 (block 512)/norm | 3.34 k allocs: 0.131 MB | 3.36 k allocs: 0.131 MB | 0.994 |
| array/dagger/N=1024 (block 512)/reduce (sum) | 4.81 k allocs: 0.177 MB | 4.79 k allocs: 0.176 MB | 1 |
| array/dagger/N=1024 (block 512)/transpose (permutedims) | 21 k allocs: 3.09 MB | 21.1 k allocs: 3.09 MB | 1 |
| array/dagger/N=256 (block 128)/add (X + X) | 0.0449 M allocs: 2.44 MB | 0.0449 M allocs: 2.44 MB | 1 |
| array/dagger/N=256 (block 128)/alloc (rand) | 8.23 k allocs: 0.527 MB | 8.23 k allocs: 0.527 MB | 1 |
| array/dagger/N=256 (block 128)/broadcast (X .+ 1) | 2.55 k allocs: 0.219 MB | 2.58 k allocs: 0.22 MB | 0.994 |
| array/dagger/N=256 (block 128)/map (sin.(X)) | 2.44 k allocs: 0.214 MB | 2.4 k allocs: 0.212 MB | 1.01 |
| array/dagger/N=256 (block 128)/norm | 3.26 k allocs: 0.128 MB | 3.34 k allocs: 0.131 MB | 0.978 |
| array/dagger/N=256 (block 128)/reduce (sum) | 4.78 k allocs: 0.176 MB | 4.74 k allocs: 0.174 MB | 1.01 |
| array/dagger/N=256 (block 128)/transpose (permutedims) | 21 k allocs: 1.22 MB | 21 k allocs: 1.22 MB | 0.999 |
| array/dagger/N=256 (block 256)/add (X + X) | 14.1 k allocs: 1.24 MB | 14.1 k allocs: 1.24 MB | 1 |
| array/dagger/N=256 (block 256)/alloc (rand) | 3.53 k allocs: 0.677 MB | 3.53 k allocs: 0.677 MB | 1 |
| array/dagger/N=256 (block 256)/broadcast (X .+ 1) | 0.679 k allocs: 0.525 MB | 0.677 k allocs: 0.525 MB | 1 |
| array/dagger/N=256 (block 256)/map (sin.(X)) | 0.659 k allocs: 0.524 MB | 0.659 k allocs: 0.524 MB | 1 |
| array/dagger/N=256 (block 256)/norm | 0.968 k allocs: 0.0392 MB | 0.967 k allocs: 0.0392 MB | 1 |
| array/dagger/N=256 (block 256)/reduce (sum) | 0.978 k allocs: 0.0387 MB | 1.03 k allocs: 0.0405 MB | 0.956 |
| array/dagger/N=256 (block 256)/transpose (permutedims) | 6.67 k allocs: 0.852 MB | 6.67 k allocs: 0.852 MB | 1 |
| linalg/dagger/N=1024 (block 128)/cholesky | 1.53 M allocs: 0.0793 GB | 1.53 M allocs: 0.0794 GB | 0.999 |
| linalg/dagger/N=1024 (block 128)/lu | 0.0492 G allocs: 2.35 GB | 0.0492 G allocs: 2.35 GB | 1 |
| linalg/dagger/N=1024 (block 128)/matmul (A*A) | 3.35 M allocs: 0.165 GB | 3.36 M allocs: 0.166 GB | 0.998 |
| linalg/dagger/N=1024 (block 128)/matvec (A*x) | 0.61 M allocs: 31.2 MB | 0.607 M allocs: 31.1 MB | 1 |
| linalg/dagger/N=1024 (block 128)/qr | 2.32 M allocs: 0.119 GB | 2.32 M allocs: 0.118 GB | 1 |
| linalg/dagger/N=1024 (block 128)/solve (A\b via lu) | 0.0502 G allocs: 2.4 GB | 0.0502 G allocs: 2.4 GB | 1 |
| linalg/dagger/N=1024 (block 128)/syrk (A'*A) | 2.53 M allocs: 0.127 GB | 2.53 M allocs: 0.127 GB | 1 |
| linalg/dagger/N=1024 (block 512)/cholesky | 0.0862 M allocs: 6.44 MB | 0.0863 M allocs: 6.44 MB | 1 |
| linalg/dagger/N=1024 (block 512)/lu | 18 M allocs: 0.858 GB | 18 M allocs: 0.858 GB | 1 |
| linalg/dagger/N=1024 (block 512)/matmul (A*A) | 0.1 M allocs: 7.07 MB | 0.0998 M allocs: 7.06 MB | 1 |
| linalg/dagger/N=1024 (block 512)/matvec (A*x) | 0.0611 M allocs: 3.14 MB | 0.0609 M allocs: 3.13 MB | 1 |
| linalg/dagger/N=1024 (block 512)/qr | 0.122 M allocs: 8.49 MB | 0.122 M allocs: 8.49 MB | 1 |
| linalg/dagger/N=1024 (block 512)/solve (A\b via lu) | 18.1 M allocs: 0.868 GB | 18.1 M allocs: 0.868 GB | 1 |
| linalg/dagger/N=1024 (block 512)/syrk (A'*A) | 0.0984 M allocs: 13 MB | 0.0983 M allocs: 13 MB | 1 |
| linalg/dagger/N=256 (block 128)/cholesky | 0.0862 M allocs: 4.56 MB | 0.0863 M allocs: 4.56 MB | 1 |
| linalg/dagger/N=256 (block 128)/lu | 4.59 M allocs: 0.218 GB | 4.59 M allocs: 0.218 GB | 1 |
| linalg/dagger/N=256 (block 128)/matmul (A*A) | 0.1 M allocs: 5.2 MB | 0.0999 M allocs: 5.19 MB | 1 |
| linalg/dagger/N=256 (block 128)/matvec (A*x) | 0.0611 M allocs: 3.14 MB | 0.0609 M allocs: 3.13 MB | 1 |
| linalg/dagger/N=256 (block 128)/qr | 0.122 M allocs: 6.42 MB | 0.122 M allocs: 6.42 MB | 1 |
| linalg/dagger/N=256 (block 128)/solve (A\b via lu) | 4.72 M allocs: 0.225 GB | 4.72 M allocs: 0.225 GB | 1 |
| linalg/dagger/N=256 (block 128)/syrk (A'*A) | 0.0983 M allocs: 5.52 MB | 0.0986 M allocs: 5.53 MB | 0.999 |
| linalg/dagger/N=256 (block 256)/cholesky | 23.6 k allocs: 1.75 MB | ||
| linalg/dagger/N=256 (block 256)/lu | 2.03 M allocs: 0.0985 GB | ||
| linalg/dagger/N=256 (block 256)/matmul (A*A) | 14.6 k allocs: 1.26 MB | ||
| linalg/dagger/N=256 (block 256)/matvec (A*x) | 17.3 k allocs: 0.911 MB | ||
| linalg/dagger/N=256 (block 256)/qr | 27.6 k allocs: 2.07 MB | ||
| linalg/dagger/N=256 (block 256)/solve (A\b via lu) | 2.08 M allocs: 0.101 GB | ||
| linalg/dagger/N=256 (block 256)/syrk (A'*A) | 21.3 k allocs: 3.11 MB | ||
| sparse/dagger/N=1024 (block 64)/cg solve (laplacian) | 28.3 M allocs: 1.42 GB | ||
| sparse/dagger/N=1024 (block 64)/spgemm (S*S) | 18.1 M allocs: 0.891 GB | ||
| sparse/dagger/N=1024 (block 64)/spmv (S*x) | 2.13 M allocs: 0.107 GB | ||
| sparse/dagger/N=256 (block 16)/cg solve (laplacian) | 28.3 M allocs: 1.42 GB | ||
| sparse/dagger/N=256 (block 16)/spgemm (S*S) | 18.1 M allocs: 0.869 GB | ||
| sparse/dagger/N=256 (block 16)/spmv (S*x) | 2.13 M allocs: 0.107 GB | ||
| stencil/dagger/N=1024 (block 128)/alloc (neighbors Wrap) | 3.97 M allocs: 0.198 GB | ||
| stencil/dagger/N=1024 (block 128)/assign (const) | 0.293 M allocs: 15.3 MB | ||
| stencil/dagger/N=1024 (block 128)/multi-expr | 0.812 M allocs: 0.0415 GB | ||
| stencil/dagger/N=1024 (block 128)/neighbors (Clamp) | 3.48 M allocs: 0.173 GB | ||
| stencil/dagger/N=1024 (block 128)/neighbors (Pad) | 3.25 M allocs: 0.162 GB | ||
| stencil/dagger/N=1024 (block 128)/neighbors (Reflect) | 3.48 M allocs: 0.173 GB | ||
| stencil/dagger/N=1024 (block 128)/neighbors (Wrap) | 3.87 M allocs: 0.192 GB | ||
| stencil/dagger/N=1024 (block 128)/update (+) | 0.518 M allocs: 27.2 MB | ||
| stencil/dagger/N=1024 (block 512)/alloc (neighbors Wrap) | 0.316 M allocs: 18 MB | ||
| stencil/dagger/N=1024 (block 512)/assign (const) | 20.4 k allocs: 1.06 MB | ||
| stencil/dagger/N=1024 (block 512)/multi-expr | 0.0549 M allocs: 2.87 MB | ||
| stencil/dagger/N=1024 (block 512)/neighbors (Clamp) | 0.21 M allocs: 10.7 MB | ||
| stencil/dagger/N=1024 (block 512)/neighbors (Pad) | 0.145 M allocs: 7.42 MB | ||
| stencil/dagger/N=1024 (block 512)/neighbors (Reflect) | 0.211 M allocs: 10.7 MB | ||
| stencil/dagger/N=1024 (block 512)/neighbors (Wrap) | 0.308 M allocs: 15.6 MB | ||
| stencil/dagger/N=1024 (block 512)/update (+) | 0.0344 M allocs: 1.8 MB | ||
| stencil/dagger/N=256 (block 128)/alloc (neighbors Wrap) | 0.316 M allocs: 16.1 MB | ||
| stencil/dagger/N=256 (block 128)/assign (const) | 20.4 k allocs: 1.06 MB | ||
| stencil/dagger/N=256 (block 128)/multi-expr | 0.0549 M allocs: 2.87 MB | ||
| stencil/dagger/N=256 (block 128)/neighbors (Clamp) | 0.21 M allocs: 10.7 MB | ||
| stencil/dagger/N=256 (block 128)/neighbors (Pad) | 0.145 M allocs: 7.41 MB | ||
| stencil/dagger/N=256 (block 128)/neighbors (Reflect) | 0.211 M allocs: 10.7 MB | ||
| stencil/dagger/N=256 (block 128)/neighbors (Wrap) | 0.308 M allocs: 15.5 MB | ||
| stencil/dagger/N=256 (block 128)/update (+) | 0.0344 M allocs: 1.8 MB | ||
| stencil/dagger/N=256 (block 256)/alloc (neighbors Wrap) | 17.2 k allocs: 1.4 MB | ||
| stencil/dagger/N=256 (block 256)/assign (const) | 6.51 k allocs: 0.345 MB | ||
| stencil/dagger/N=256 (block 256)/multi-expr | 16.6 k allocs: 0.878 MB | ||
| stencil/dagger/N=256 (block 256)/neighbors (Clamp) | 13.8 k allocs: 0.733 MB | ||
| stencil/dagger/N=256 (block 256)/neighbors (Pad) | 13.7 k allocs: 0.732 MB | ||
| stencil/dagger/N=256 (block 256)/neighbors (Reflect) | 13.8 k allocs: 0.741 MB | ||
| stencil/dagger/N=256 (block 256)/neighbors (Wrap) | 13.7 k allocs: 0.726 MB | ||
| stencil/dagger/N=256 (block 256)/update (+) | 10.1 k allocs: 0.533 MB | ||
| time_to_load | 0.199 k allocs: 11.5 kB | 0.199 k allocs: 11.5 kB | 1 |
No time regressions beyond 35.0% or allocation regressions beyond 25.0% (timing changes inside the reported ±spread don't count) 🎉
Within noise (1 metric(s) past threshold but inside the ±spread; not counted)
array/dagger/N=256 (block 256)/alloc (rand)(time): -66.7%
Full results and plots (download the benchmark-results-* artifacts).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps actions/download-artifact from 7 to 8.
Release notes
Sourced from actions/download-artifact's releases.
Commits
3e5f45bAdd regression tests for CJK characters (#471)e6d03f6Add a regression test for artifact name + content-type mismatches (#472)70fc10cMerge pull request #461 from actions/danwkennedy/digest-mismatch-behaviorf258da9Add change docsccc058eFix linting issuesbd7976bAdd a setting to specify what to do on hash mismatch and default it toerrorac21fcfMerge pull request #460 from actions/danwkennedy/download-no-unzip15999bfAdd note about package bumps974686eBump the version tov8and add release notesfbe48b1Update test names to make it clearer what they doDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)