Avatar for the zarr-developers user
zarr-developers
zarr-python
BlogDocsChangelog

Optimize partial shard reads

#3004Merged
Comparing
aldenks:coalesce-shard-reads
(
f92e501
) with
main
(
ad90884
)
CodSpeed Performance Gauge
+9%
Improvement
3
Regression
2
Untouched
61
Skipped
6

Benchmarks

72 total
test_slice_indexing[(50, 50, 50)-(0, 0, 0)-memory]
tests/benchmarks/test_indexing.py
CodSpeed Performance Gauge
-11%
1.8 ms2 ms
test_slice_indexing[(50, 50, 50)-(slice(None, 10, None), slice(None, 10, None), slice(None, 10, None))-memory]
tests/benchmarks/test_indexing.py
CodSpeed Performance Gauge
-10%
1.8 ms2 ms
test_slice_indexing[(50, 50, 50)-(0, 0, 0)-memory_get_latency]
tests/benchmarks/test_indexing.py
CodSpeed Performance Gauge
+29%
4.1 ms3.2 ms
test_slice_indexing[(50, 50, 50)-(slice(None, 10, None), slice(None, 10, None), slice(None, 10, None))-memory_get_latency]
tests/benchmarks/test_indexing.py
CodSpeed Performance Gauge
+29%
4.1 ms3.2 ms
test_slice_indexing[(50, 50, 50)-(slice(10, -10, 4), slice(10, -10, 4), slice(10, -10, 4))-memory_get_latency]
tests/benchmarks/test_indexing.py
CodSpeed Performance Gauge
+15%
237.2 ms206.3 ms
test_slice_indexing[(50, 50, 50)-(slice(0, None, 4), slice(0, None, 4), slice(0, None, 4))-memory_get_latency]
tests/benchmarks/test_indexing.py
CodSpeed Performance Gauge
+4%
418.7 ms402.5 ms
test_slice_indexing[(50, 50, 50)-(slice(None, None, None), slice(None, None, None), slice(None, None, None))-memory_get_latency]
tests/benchmarks/test_indexing.py
CodSpeed Performance Gauge
+4%
422.2 ms406.9 ms
test_slice_indexing[(50, 50, 50)-(slice(None, None, None), slice(0, 3, 2), slice(0, 10, None))-memory_get_latency]
tests/benchmarks/test_indexing.py
CodSpeed Performance Gauge
+2%
7.1 ms7 ms
test_read_array[memory-Layout(shape=(1000000,), chunks=(100,), shards=(1000000,))-gzip]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
+2%
5.8 s5.7 s
test_slice_indexing[(50, 50, 50)-(slice(10, -10, 4), slice(10, -10, 4), slice(10, -10, 4))-memory]
tests/benchmarks/test_indexing.py
CodSpeed Performance Gauge
+1%
210.6 ms207.5 ms
test_read_array[local-Layout(shape=(1000000,), chunks=(1000,), shards=(1000,))-None]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
+1%
1.4 s1.4 s
test_write_array[memory-Layout(shape=(1000000,), chunks=(1000,), shards=(1000,))-gzip]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
+1%
1.8 s1.8 s
test_read_array[memory-Layout(shape=(1000000,), chunks=(100,), shards=(1000000,))-None]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
+1%
2.8 s2.8 s
test_read_array[local-Layout(shape=(1000000,), chunks=(100,), shards=(1000000,))-gzip]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
+1%
5.8 s5.7 s
test_write_array[memory-Layout(shape=(1000000,), chunks=(1000,), shards=None)-gzip]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
+1%
1.1 s1.1 s
test_read_array[memory-Layout(shape=(1000000,), chunks=(1000,), shards=None)-gzip]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
+1%
588 ms583.6 ms
test_write_array[memory-Layout(shape=(1000000,), chunks=(1000,), shards=(1000,))-None]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
+1%
1.2 s1.2 s
test_read_array[memory-Layout(shape=(1000000,), chunks=(1000,), shards=(1000,))-gzip]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
0%
1.3 s1.3 s
test_read_array[local-Layout(shape=(1000000,), chunks=(1000,), shards=None)-None]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
0%
628 ms626.8 ms
test_write_array[memory-Layout(shape=(1000000,), chunks=(100,), shards=(1000000,))-None]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
0%
5.1 s5.1 s
test_write_array[local-Layout(shape=(1000000,), chunks=(100,), shards=(1000000,))-gzip]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
0%
10 s10 s
test_write_array[local-Layout(shape=(1000000,), chunks=(1000,), shards=(1000,))-gzip]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
0%
2.4 s2.4 s
test_read_array[memory-Layout(shape=(1000000,), chunks=(1000,), shards=(1000,))-None]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
0%
984.2 ms984.5 ms
test_write_array[local-Layout(shape=(1000000,), chunks=(100,), shards=(1000000,))-None]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
0%
5.1 s5.1 s
test_write_array[local-Layout(shape=(1000000,), chunks=(1000,), shards=(1000,))-None]
tests/benchmarks/test_e2e.py
CodSpeed Performance Gauge
0%
1.9 s1.9 s

Commits

Click on a commit to change the comparison range
Base
main
ad90884
-0.41%
Merge branch 'main' into coalesce-shard-reads
ba77e87
4 months ago
by aldenks
+0.3%
Ensure no change in behavior when ByteGetter.get returns None + comment
b71302f
4 months ago
by aldenks
-0.68%
Add test_sharing_unit.py, focusing on coallesce behavior, but with basic tests for other components
24f6f1c
4 months ago
by aldenks
+0.21%
Fix typing errors in test_sharing_unit.py
6437fb6
4 months ago
by aldenks
-9.47%
Merge branch 'main' into coalesce-shard-reads
c393e41
4 months ago
by aldenks
+25.65%
Merge branch 'main' into coalesce-shard-reads
c9875d5
3 months ago
by d-v-b
-6.75%
Merge branch 'main' into coalesce-shard-reads
f92e501
5 days ago
by d-v-b
© 2026 CodSpeed Technology
Home Terms Privacy Docs