BlogDocs

GitHub Actions
run

Base runon
main
at
f52253e
compared to head run on
main
at
3d615a6
from
7 months ago
+77%
IMPROVEMENTS
17
REGRESSIONS
0
UNTOUCHED
132
NEW
0
DROPPED
0
IGNORED
0

Benchmarks

Improved

test_nms_many_boxes[1000]
bindings/tests/test_speed.py::test_nms_many_boxes[1000]
+77%
1,762.4 µs
995.9 µs
test_nms_many_boxes[5000]
bindings/tests/test_speed.py::test_nms_many_boxes[5000]
+60%
48.7 ms
30.5 ms
test_nms_many_boxes[20000]
bindings/tests/test_speed.py::test_nms_many_boxes[20000]
+56%
751.9 ms
482.3 ms
test_nms_many_boxes[10000]
bindings/tests/test_speed.py::test_nms_many_boxes[10000]
+52%
185.7 ms
122.5 ms
test_nms[float32]
bindings/tests/test_speed.py::test_nms[float32]
+44%
71 µs
49.3 µs
test_nms[int64]
bindings/tests/test_speed.py::test_nms[int64]
+41%
79.5 µs
56.5 µs
test_nms[float64]
bindings/tests/test_speed.py::test_nms[float64]
+40%
75.8 µs
54.1 µs
test_nms[uint64]
bindings/tests/test_speed.py::test_nms[uint64]
+37%
79 µs
57.7 µs
test_nms[int32]
bindings/tests/test_speed.py::test_nms[int32]
+36%
76.9 µs
56.5 µs
test_nms[uint8]
bindings/tests/test_speed.py::test_nms[uint8]
+36%
74 µs
54.6 µs
test_nms[uint32]
bindings/tests/test_speed.py::test_nms[uint32]
+36%
76.8 µs
56.7 µs
test_nms[int16]
bindings/tests/test_speed.py::test_nms[int16]
+36%
76.2 µs
56.2 µs
test_nms[uint16]
bindings/tests/test_speed.py::test_nms[uint16]
+35%
76.2 µs
56.3 µs
parallel giou distance benchmark
powerboxesrs/benches/bench_iou.rs::benches::parallel_giou_distance_benchmark::parallel giou distance benchmark
+32%
558.1 µs
422.9 µs
test_box_convert_xyxy_xywh[uint64]
bindings/tests/test_speed.py::test_box_convert_xyxy_xywh[uint64]
+21%
40.4 µs
33.4 µs
test_box_convert_xyxy_xywh[int64]
bindings/tests/test_speed.py::test_box_convert_xyxy_xywh[int64]
+21%
40.3 µs
33.4 µs
test_box_convert_xywh_cxcywh[float64]
bindings/tests/test_speed.py::test_box_convert_xywh_cxcywh[float64]
+20%
40.5 µs
33.8 µs

Passed

test_box_convert_xywh_xyxy[uint64]
bindings/tests/test_speed.py::test_box_convert_xywh_xyxy[uint64]
+20%
40 µs
33.4 µs
test_box_convert_cxcywh_xyxy[float64]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xyxy[float64]
+20%
40.4 µs
33.8 µs
test_box_convert_xywh_cxcywh[uint64]
bindings/tests/test_speed.py::test_box_convert_xywh_cxcywh[uint64]
+19%
40.5 µs
33.9 µs
test_box_convert_cxcywh_xyxy[uint64]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xyxy[uint64]
+19%
40.5 µs
34.1 µs
test_box_convert_xywh_cxcywh[int64]
bindings/tests/test_speed.py::test_box_convert_xywh_cxcywh[int64]
+19%
40.4 µs
34.1 µs
test_box_convert_xyxy_cxcywh[uint64]
bindings/tests/test_speed.py::test_box_convert_xyxy_cxcywh[uint64]
+18%
40.5 µs
34.3 µs
test_box_convert_xywh_cxcywh[int16]
bindings/tests/test_speed.py::test_box_convert_xywh_cxcywh[int16]
+18%
35.5 µs
30.2 µs
test_box_convert_xyxy_xywh[float64]
bindings/tests/test_speed.py::test_box_convert_xyxy_xywh[float64]
+18%
43.4 µs
36.9 µs
test_box_convert_xyxy_xywh[int16]
bindings/tests/test_speed.py::test_box_convert_xyxy_xywh[int16]
+17%
35 µs
29.9 µs
test_box_convert_xywh_cxcywh[uint16]
bindings/tests/test_speed.py::test_box_convert_xywh_cxcywh[uint16]
+17%
35.2 µs
30.2 µs
test_box_convert_cxcywh_xywh[int16]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xywh[int16]
+17%
35.3 µs
30.3 µs
test_box_convert_cxcywh_xyxy[uint16]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xyxy[uint16]
+16%
35.2 µs
30.3 µs
test_box_convert_xyxy_xywh[uint16]
bindings/tests/test_speed.py::test_box_convert_xyxy_xywh[uint16]
+16%
34.9 µs
30 µs
test_box_convert_xywh_xyxy[uint8]
bindings/tests/test_speed.py::test_box_convert_xywh_xyxy[uint8]
+16%
34.4 µs
29.6 µs
test_box_convert_xyxy_cxcywh[uint16]
bindings/tests/test_speed.py::test_box_convert_xyxy_cxcywh[uint16]
+16%
35.1 µs
30.3 µs
test_box_convert_xyxy_cxcywh[int16]
bindings/tests/test_speed.py::test_box_convert_xyxy_cxcywh[int16]
+16%
35.3 µs
30.5 µs
test_box_convert_cxcywh_xyxy[uint8]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xyxy[uint8]
+15%
34.5 µs
30 µs
test_box_convert_xywh_xyxy[int16]
bindings/tests/test_speed.py::test_box_convert_xywh_xyxy[int16]
+15%
34.2 µs
29.8 µs
test_box_convert_xyxy_xywh[uint8]
bindings/tests/test_speed.py::test_box_convert_xyxy_xywh[uint8]
+15%
35.7 µs
31.1 µs
test_box_convert_cxcywh_xywh[uint16]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xywh[uint16]
+15%
34.5 µs
30.2 µs
test_box_convert_xywh_xyxy[uint16]
bindings/tests/test_speed.py::test_box_convert_xywh_xyxy[uint16]
+15%
34.3 µs
30 µs
test_box_convert_xywh_cxcywh[uint8]
bindings/tests/test_speed.py::test_box_convert_xywh_cxcywh[uint8]
+15%
34.2 µs
29.9 µs
test_box_convert_cxcywh_xyxy[int16]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xyxy[int16]
+14%
34.6 µs
30.3 µs
test_box_convert_xyxy_cxcywh[uint8]
bindings/tests/test_speed.py::test_box_convert_xyxy_cxcywh[uint8]
+14%
34.3 µs
30 µs
test_box_convert_cxcywh_xywh[uint8]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xywh[uint8]
+14%
34.1 µs
29.9 µs
test_box_convert_xyxy_xywh[uint32]
bindings/tests/test_speed.py::test_box_convert_xyxy_xywh[uint32]
+13%
36.3 µs
32.1 µs
test_box_convert_xyxy_xywh[float32]
bindings/tests/test_speed.py::test_box_convert_xyxy_xywh[float32]
+13%
36.6 µs
32.3 µs
test_box_convert_cxcywh_xywh[uint32]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xywh[uint32]
+12%
36.4 µs
32.6 µs
test_box_convert_xywh_xyxy[float32]
bindings/tests/test_speed.py::test_box_convert_xywh_xyxy[float32]
+12%
36.2 µs
32.4 µs
test_box_convert_xywh_xyxy[int32]
bindings/tests/test_speed.py::test_box_convert_xywh_xyxy[int32]
+12%
35.9 µs
32.1 µs
test_box_convert_xywh_cxcywh[float32]
bindings/tests/test_speed.py::test_box_convert_xywh_cxcywh[float32]
+12%
36.3 µs
32.5 µs
test_box_convert_cxcywh_xyxy[int32]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xyxy[int32]
+12%
36.2 µs
32.4 µs
test_box_convert_xyxy_xywh[int32]
bindings/tests/test_speed.py::test_box_convert_xyxy_xywh[int32]
+12%
35.9 µs
32.1 µs
test_box_convert_cxcywh_xywh[int32]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xywh[int32]
+12%
36.5 µs
32.6 µs
test_box_convert_cxcywh_xyxy[float32]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xyxy[float32]
+12%
37.9 µs
34 µs
test_box_convert_cxcywh_xyxy[uint32]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xyxy[uint32]
+12%
36.5 µs
32.7 µs
test_box_convert_xywh_xyxy[uint32]
bindings/tests/test_speed.py::test_box_convert_xywh_xyxy[uint32]
+11%
36.9 µs
33.1 µs
test_box_convert_cxcywh_xywh[float32]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xywh[float32]
+11%
36.4 µs
32.7 µs
test_box_convert_xywh_cxcywh[uint32]
bindings/tests/test_speed.py::test_box_convert_xywh_cxcywh[uint32]
+11%
36.5 µs
32.7 µs
test_box_convert_xyxy_cxcywh[float32]
bindings/tests/test_speed.py::test_box_convert_xyxy_cxcywh[float32]
+11%
36.4 µs
32.7 µs
test_box_convert_xyxy_cxcywh[uint32]
bindings/tests/test_speed.py::test_box_convert_xyxy_cxcywh[uint32]
+11%
36.2 µs
32.7 µs
test_box_convert_xywh_cxcywh[int32]
bindings/tests/test_speed.py::test_box_convert_xywh_cxcywh[int32]
+11%
36.3 µs
32.7 µs
test_boxes_areas[float64]
bindings/tests/test_speed.py::test_boxes_areas[float64]
+11%
38.8 µs
35 µs
test_box_convert_xyxy_cxcywh[int32]
bindings/tests/test_speed.py::test_box_convert_xyxy_cxcywh[int32]
+10%
36.1 µs
32.8 µs
test_boxes_areas[int64]
bindings/tests/test_speed.py::test_boxes_areas[int64]
+10%
35.2 µs
32.1 µs
test_box_convert_cxcywh_xywh[int64]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xywh[int64]
+10%
40.8 µs
37.2 µs
test_boxes_areas[uint64]
bindings/tests/test_speed.py::test_boxes_areas[uint64]
+10%
35.3 µs
32.2 µs
test_boxes_areas[int32]
bindings/tests/test_speed.py::test_boxes_areas[int32]
+10%
33.9 µs
30.9 µs
test_box_convert_xywh_xyxy[int64]
bindings/tests/test_speed.py::test_box_convert_xywh_xyxy[int64]
+9%
40.2 µs
36.8 µs
test_remove_small_boxes[float64]
bindings/tests/test_speed.py::test_remove_small_boxes[float64]
+9%
39.2 µs
35.9 µs
test_box_convert_xywh_xyxy[float64]
bindings/tests/test_speed.py::test_box_convert_xywh_xyxy[float64]
+9%
40.4 µs
37 µs
test_box_convert_cxcywh_xywh[uint64]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xywh[uint64]
+9%
40.3 µs
37 µs
test_box_convert_cxcywh_xyxy[int64]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xyxy[int64]
+9%
40.4 µs
37.2 µs
test_remove_small_boxes[int64]
bindings/tests/test_speed.py::test_remove_small_boxes[int64]
+8%
35.7 µs
33 µs
test_box_convert_xyxy_cxcywh[int64]
bindings/tests/test_speed.py::test_box_convert_xyxy_cxcywh[int64]
+8%
40.8 µs
37.6 µs
test_remove_small_boxes[uint64]
bindings/tests/test_speed.py::test_remove_small_boxes[uint64]
+8%
35.8 µs
33.1 µs
test_boxes_areas[float32]
bindings/tests/test_speed.py::test_boxes_areas[float32]
+8%
33.9 µs
31.4 µs
test_remove_small_boxes[float32]
bindings/tests/test_speed.py::test_remove_small_boxes[float32]
+8%
34.6 µs
32.1 µs
test_box_convert_xyxy_cxcywh[float64]
bindings/tests/test_speed.py::test_box_convert_xyxy_cxcywh[float64]
+7%
40.4 µs
37.6 µs
test_boxes_areas[uint32]
bindings/tests/test_speed.py::test_boxes_areas[uint32]
+7%
33.9 µs
31.6 µs
test_box_convert_cxcywh_xywh[float64]
bindings/tests/test_speed.py::test_box_convert_cxcywh_xywh[float64]
+7%
40.4 µs
37.7 µs
parallel iou distance benchmark
powerboxesrs/benches/bench_iou.rs::benches::parallel_iou_distance_benchmark::parallel iou distance benchmark
+7%
294.6 µs
274.9 µs
test_remove_small_boxes[int32]
bindings/tests/test_speed.py::test_remove_small_boxes[int32]
+7%
34.4 µs
32.2 µs
test_remove_small_boxes[uint32]
bindings/tests/test_speed.py::test_remove_small_boxes[uint32]
+7%
35.3 µs
33.1 µs
test_parallel_iou_distance[uint32]
bindings/tests/test_speed.py::test_parallel_iou_distance[uint32]
+6%
372.5 µs
350.1 µs
test_rtree_nms_many_boxes[1000]
bindings/tests/test_speed.py::test_rtree_nms_many_boxes[1000]
+6%
1.3 ms
1.2 ms
test_masks_to_boxes
bindings/tests/test_speed.py::test_masks_to_boxes
+6%
9.4 ms
8.8 ms
test_rtree_nms[int64]
bindings/tests/test_speed.py::test_rtree_nms[int64]
+6%
128.9 µs
122 µs
test_boxes_areas[uint8]
bindings/tests/test_speed.py::test_boxes_areas[uint8]
+5%
34 µs
32.3 µs
test_rtree_nms_many_boxes[10000]
bindings/tests/test_speed.py::test_rtree_nms_many_boxes[10000]
+5%
16.7 ms
15.9 ms
test_parallel_iou_distance[int64]
bindings/tests/test_speed.py::test_parallel_iou_distance[int64]
+5%
373.1 µs
355.2 µs
test_rtree_nms[float64]
bindings/tests/test_speed.py::test_rtree_nms[float64]
+5%
132.6 µs
126.3 µs
test_boxes_areas[int16]
bindings/tests/test_speed.py::test_boxes_areas[int16]
+5%
32.7 µs
31.1 µs
test_boxes_areas[uint16]
bindings/tests/test_speed.py::test_boxes_areas[uint16]
+5%
32.6 µs
31.1 µs
test_remove_small_boxes[int16]
bindings/tests/test_speed.py::test_remove_small_boxes[int16]
+5%
33.3 µs
31.8 µs
test_rtree_nms_many_boxes[5000]
bindings/tests/test_speed.py::test_rtree_nms_many_boxes[5000]
+5%
7.9 ms
7.5 ms
test_rtree_nms_many_boxes[20000]
bindings/tests/test_speed.py::test_rtree_nms_many_boxes[20000]
+5%
37.4 ms
35.7 ms
test_iou_distance[int64]
bindings/tests/test_speed.py::test_iou_distance[int64]
+5%
288.7 µs
276.2 µs
test_rtree_nms[int32]
bindings/tests/test_speed.py::test_rtree_nms[int32]
+4%
125.3 µs
120.1 µs
test_rtree_nms[float32]
bindings/tests/test_speed.py::test_rtree_nms[float32]
+4%
128.7 µs
123.5 µs
test_remove_small_boxes[uint8]
bindings/tests/test_speed.py::test_remove_small_boxes[uint8]
+4%
34.7 µs
33.4 µs
test_parallel_iou_distance[uint8]
bindings/tests/test_speed.py::test_parallel_iou_distance[uint8]
+4%
395.3 µs
380.9 µs
test_rtree_nms[int16]
bindings/tests/test_speed.py::test_rtree_nms[int16]
+4%
122.7 µs
118.3 µs
test_remove_small_boxes[uint16]
bindings/tests/test_speed.py::test_remove_small_boxes[uint16]
+3%
33.2 µs
32.1 µs
test_tiou_distance[float64]
bindings/tests/test_speed.py::test_tiou_distance[float64]
+3%
197.2 µs
191.8 µs
giou distance benchmark
powerboxesrs/benches/bench_iou.rs::benches::giou_distance_benchmark::giou distance benchmark
+2%
275.6 µs
269.9 µs
test_tiou_distance[float32]
bindings/tests/test_speed.py::test_tiou_distance[float32]
+2%
196.4 µs
192.8 µs
test_tiou_distance[int32]
bindings/tests/test_speed.py::test_tiou_distance[int32]
+2%
223.5 µs
219.7 µs
test_tiou_distance[uint64]
bindings/tests/test_speed.py::test_tiou_distance[uint64]
+2%
320.7 µs
315.5 µs
test_iou_distance[uint64]
bindings/tests/test_speed.py::test_iou_distance[uint64]
+2%
291.8 µs
287.5 µs
test_tiou_distance[int16]
bindings/tests/test_speed.py::test_tiou_distance[int16]
+1%
188.8 µs
186.2 µs
test_tiou_distance[uint32]
bindings/tests/test_speed.py::test_tiou_distance[uint32]
+1%
243.2 µs
239.9 µs
test_tiou_distance[uint16]
bindings/tests/test_speed.py::test_tiou_distance[uint16]
+1%
195.9 µs
193.3 µs
test_iou_distance[uint8]
bindings/tests/test_speed.py::test_iou_distance[uint8]
+1%
290.1 µs
286.4 µs
test_tiou_distance[uint8]
bindings/tests/test_speed.py::test_tiou_distance[uint8]
+1%
205.7 µs
203.7 µs
test_diou_distance[float64]
bindings/tests/test_speed.py::test_diou_distance[float64]
+1%
200.3 µs
198.4 µs
test_iou_distance[float64]
bindings/tests/test_speed.py::test_iou_distance[float64]
+1%
194.6 µs
192.8 µs
test_parallel_iou_distance[uint16]
bindings/tests/test_speed.py::test_parallel_iou_distance[uint16]
+1%
425.1 µs
422.6 µs
test_giou_distance[int64]
bindings/tests/test_speed.py::test_giou_distance[int64]
+1%
381.3 µs
379.3 µs
test_parallel_giou_distance[int64]
bindings/tests/test_speed.py::test_parallel_giou_distance[int64]
+1%
381.2 µs
379.3 µs
test_iou_distance[float32]
bindings/tests/test_speed.py::test_iou_distance[float32]
0%
187.4 µs
186.8 µs
test_diou_distance[float32]
bindings/tests/test_speed.py::test_diou_distance[float32]
0%
200.7 µs
200.1 µs
test_giou_distance[uint32]
bindings/tests/test_speed.py::test_giou_distance[uint32]
0%
375.7 µs
374.9 µs
test_parallel_giou_distance[uint32]
bindings/tests/test_speed.py::test_parallel_giou_distance[uint32]
0%
375.4 µs
374.8 µs
test_giou_distance[int32]
bindings/tests/test_speed.py::test_giou_distance[int32]
0%
375.4 µs
374.9 µs
test_parallel_giou_distance[int32]
bindings/tests/test_speed.py::test_parallel_giou_distance[int32]
0%
375.5 µs
375.1 µs
test_iou_distance[uint32]
bindings/tests/test_speed.py::test_iou_distance[uint32]
0%
271.8 µs
271.7 µs
iou distance benchmark
powerboxesrs/benches/bench_iou.rs::benches::iou_distance_benchmark::iou distance benchmark
0%
213.3 µs
213.3 µs
test_iou_distance[int32]
bindings/tests/test_speed.py::test_iou_distance[int32]
0%
271.8 µs
271.9 µs
test_rotated_giou_distance[float64]
bindings/tests/test_speed.py::test_rotated_giou_distance[float64]
0%
12.4 ms
12.4 ms
test_giou_distance[float64]
bindings/tests/test_speed.py::test_giou_distance[float64]
0%
268.2 µs
268.8 µs
test_parallel_giou_distance[float64]
bindings/tests/test_speed.py::test_parallel_giou_distance[float64]
0%
269 µs
269.7 µs
test_rotated_iou_distance[float64]
bindings/tests/test_speed.py::test_rotated_iou_distance[float64]
0%
12.8 ms
12.9 ms
test_iou_distance[int16]
bindings/tests/test_speed.py::test_iou_distance[int16]
0%
295 µs
296.4 µs
test_iou_distance[uint16]
bindings/tests/test_speed.py::test_iou_distance[uint16]
-1%
294.7 µs
296.2 µs
test_parallel_giou_distance[float32]
bindings/tests/test_speed.py::test_parallel_giou_distance[float32]
-1%
267.6 µs
269.8 µs
test_giou_distance[uint64]
bindings/tests/test_speed.py::test_giou_distance[uint64]
-1%
401.2 µs
404.6 µs
test_parallel_giou_distance[uint64]
bindings/tests/test_speed.py::test_parallel_giou_distance[uint64]
-1%
401.1 µs
404.6 µs
test_giou_distance[float32]
bindings/tests/test_speed.py::test_giou_distance[float32]
-1%
268.4 µs
270.9 µs
test_giou_distance[uint16]
bindings/tests/test_speed.py::test_giou_distance[uint16]
-1%
368.2 µs
371.6 µs
test_parallel_giou_distance[int16]
bindings/tests/test_speed.py::test_parallel_giou_distance[int16]
-1%
367.9 µs
371.4 µs
test_parallel_giou_distance[uint16]
bindings/tests/test_speed.py::test_parallel_giou_distance[uint16]
-1%
367.9 µs
371.7 µs
test_giou_distance[int16]
bindings/tests/test_speed.py::test_giou_distance[int16]
-1%
367.7 µs
371.5 µs
test_parallel_iou_distance[float32]
bindings/tests/test_speed.py::test_parallel_iou_distance[float32]
-1%
248.1 µs
251.9 µs
test_giou_distance[uint8]
bindings/tests/test_speed.py::test_giou_distance[uint8]
-2%
402.5 µs
409.4 µs
test_parallel_giou_distance[uint8]
bindings/tests/test_speed.py::test_parallel_giou_distance[uint8]
-2%
403.1 µs
410 µs
test_parallel_iou_distance[int32]
bindings/tests/test_speed.py::test_parallel_iou_distance[int32]
-2%
354.5 µs
361.9 µs
test_parallel_iou_distance[int16]
bindings/tests/test_speed.py::test_parallel_iou_distance[int16]
-3%
400.5 µs
411.2 µs
test_parallel_iou_distance[uint64]
bindings/tests/test_speed.py::test_parallel_iou_distance[uint64]
-4%
373.8 µs
390.7 µs
test_tiou_distance[int64]
bindings/tests/test_speed.py::test_tiou_distance[int64]
-8%
277.6 µs
300.5 µs
test_parallel_iou_distance[float64]
bindings/tests/test_speed.py::test_parallel_iou_distance[float64]
-8%
236.6 µs
256.3 µs
test_rotated_tiou_distance[float64]
bindings/tests/test_speed.py::test_rotated_tiou_distance[float64]
-8%
190.2 µs
207 µs
ResourcesHomePricingDocsBlogGitHubChangelog
Copyright © 2024 CodSpeed Technology SAS. All rights reserved.