# Performance Report - Commit: `82697d75` - Date: 2026-05-10T19:45:51.887645 - Profile: cortex-m3 ![Performance Chart](images/perf_report.png) ## Scene Contact Sheet Timing data comes from QEMU. The contact sheet below is rendered with the PC simulator for scene reference. ![Scene Contact Sheet](images/perf_scenes.png) ## Basic Shapes | Test Case | Time (ms) | |-----------|-----------| | LINE | 0.545 | | LINE_HQ | 1.359 | | RECTANGLE | 0.193 | | RECTANGLE_FILL | 0.165 | | CIRCLE | 0.823 | | CIRCLE_FILL | 0.582 | | CIRCLE_HQ | 1.162 | | CIRCLE_FILL_HQ | 0.490 | | ARC | 1.006 | | ARC_FILL | 0.837 | | ARC_HQ | 1.108 | | ARC_FILL_HQ | 1.733 | | ROUND_RECTANGLE | 0.826 | | ROUND_RECTANGLE_CORNERS | 0.831 | | ROUND_RECTANGLE_FILL | 0.587 | | ROUND_RECTANGLE_CORNERS_FILL | 0.701 | | TRIANGLE | 0.676 | | TRIANGLE_FILL | 0.860 | | ELLIPSE | 0.889 | | ELLIPSE_FILL | 0.584 | | POLYGON | 0.518 | | POLYGON_FILL | 1.071 | | BEZIER_QUAD | 1.255 | | BEZIER_CUBIC | 1.162 | | CIRCLE_FILL_QUARTER | 0.268 | | CIRCLE_FILL_DOUBLE | 0.688 | | ROUND_RECTANGLE_FILL_QUARTER | 0.272 | | ROUND_RECTANGLE_FILL_DOUBLE | 0.692 | | TRIANGLE_FILL_QUARTER | 0.298 | | TRIANGLE_FILL_DOUBLE | 0.666 | ## Text | Test Case | Time (ms) | |-----------|-----------| | TEXT | 1.028 | | TEXT_RECT | 0.488 | | INTERNAL_TEXT | 1.029 | | INTERNAL_TEXT_RECT | 0.488 | | INTERNAL_TEXT_RLE4 | 1.167 | | INTERNAL_TEXT_RECT_RLE4 | 1.152 | | INTERNAL_TEXT_RLE4_XOR | 1.203 | | INTERNAL_TEXT_RECT_RLE4_XOR | 1.340 | | EXTERN_TEXT | 1.059 | | EXTERN_TEXT_RECT | 0.654 | | EXTERN_TEXT_RLE4 | 1.196 | | EXTERN_TEXT_RECT_RLE4 | 1.312 | | EXTERN_TEXT_RLE4_XOR | 1.232 | | EXTERN_TEXT_RECT_RLE4_XOR | 1.500 | | TEXT_ROTATE_NONE | 0.490 | | TEXT_ROTATE | 2.504 | | TEXT_ROTATE_RESIZE | 2.505 | | TEXT_ROTATE_QUARTER | 1.689 | | TEXT_ROTATE_DOUBLE | 2.960 | | EXTERN_TEXT_ROTATE | 2.733 | ## Image Direct Draw | Test Case | Time (ms) | |-----------|-----------| | IMAGE_565 | 0.250 | | IMAGE_565_1 | 0.422 | | IMAGE_565_2 | 0.539 | | IMAGE_565_4 | 0.732 | | IMAGE_565_8 | 0.516 | | IMAGE_565_QUARTER | 0.142 | | IMAGE_565_DOUBLE | 0.250 | | IMAGE_565_8_QUARTER | 0.207 | | IMAGE_565_8_DOUBLE | 0.096 | | EXTERN_IMAGE_565 | 0.478 | | EXTERN_IMAGE_565_1 | 0.633 | | EXTERN_IMAGE_565_2 | 0.750 | | EXTERN_IMAGE_565_4 | 0.942 | | EXTERN_IMAGE_565_8 | 0.726 | | IMAGE_TILED_565_0 | 0.522 | | IMAGE_TILED_565_1 | 0.869 | | IMAGE_TILED_565_2 | 1.098 | | IMAGE_TILED_565_4 | 1.325 | | IMAGE_TILED_565_8 | 1.299 | | IMAGE_TILED_STAR_565_0 | 0.522 | | IMAGE_TILED_STAR_565_1 | 0.869 | | IMAGE_TILED_STAR_565_2 | 1.098 | | IMAGE_TILED_STAR_565_4 | 1.325 | | IMAGE_TILED_STAR_565_8 | 1.298 | | EXTERN_IMAGE_TILED_565_0 | 1.005 | | EXTERN_IMAGE_TILED_565_1 | 1.062 | | EXTERN_IMAGE_TILED_565_2 | 1.289 | | EXTERN_IMAGE_TILED_565_4 | 1.516 | | EXTERN_IMAGE_TILED_565_8 | 1.489 | ## Image Resize | Test Case | Time (ms) | |-----------|-----------| | IMAGE_RESIZE_565 | 0.474 | | IMAGE_RESIZE_565_1 | 0.622 | | IMAGE_RESIZE_565_2 | 0.786 | | IMAGE_RESIZE_565_4 | 0.799 | | IMAGE_RESIZE_565_8 | 0.666 | | EXTERN_IMAGE_RESIZE_565 | 0.528 | | EXTERN_IMAGE_RESIZE_565_1 | 0.703 | | EXTERN_IMAGE_RESIZE_565_2 | 0.864 | | EXTERN_IMAGE_RESIZE_565_4 | 0.878 | | EXTERN_IMAGE_RESIZE_565_8 | 0.737 | | IMAGE_RESIZE_STAR_565_1 | 0.622 | | IMAGE_RESIZE_STAR_565_2 | 0.785 | | IMAGE_RESIZE_STAR_565_4 | 0.799 | | IMAGE_RESIZE_STAR_565_8 | 0.666 | | IMAGE_RESIZE_TILED_565_0 | 0.517 | | IMAGE_RESIZE_TILED_565_1 | 0.444 | | IMAGE_RESIZE_TILED_565_2 | 0.552 | | IMAGE_RESIZE_TILED_565_4 | 0.584 | | IMAGE_RESIZE_TILED_565_8 | 1.130 | | IMAGE_RESIZE_TILED_STAR_565_0 | 0.517 | | IMAGE_RESIZE_TILED_STAR_565_1 | 0.444 | | IMAGE_RESIZE_TILED_STAR_565_2 | 0.552 | | IMAGE_RESIZE_TILED_STAR_565_4 | 0.583 | | IMAGE_RESIZE_TILED_STAR_565_8 | 1.130 | | EXTERN_IMAGE_RESIZE_TILED_565_0 | 0.547 | | EXTERN_IMAGE_RESIZE_TILED_565_1 | 1.093 | | EXTERN_IMAGE_RESIZE_TILED_565_2 | 1.410 | | EXTERN_IMAGE_RESIZE_TILED_565_4 | 1.543 | | EXTERN_IMAGE_RESIZE_TILED_565_8 | 1.156 | ## Image Rotate | Test Case | Time (ms) | |-----------|-----------| | IMAGE_ROTATE_565 | 1.211 | | IMAGE_ROTATE_565_1 | 1.535 | | IMAGE_ROTATE_565_2 | 1.531 | | IMAGE_ROTATE_565_4 | 1.512 | | IMAGE_ROTATE_565_8 | 1.492 | | IMAGE_ROTATE_565_RESIZE | 1.211 | | IMAGE_ROTATE_565_QUARTER | 0.396 | | IMAGE_ROTATE_565_DOUBLE | 3.145 | | EXTERN_IMAGE_ROTATE_565 | 5.223 | | EXTERN_IMAGE_ROTATE_565_1 | 6.376 | | EXTERN_IMAGE_ROTATE_565_2 | 6.627 | | EXTERN_IMAGE_ROTATE_565_4 | 7.059 | | EXTERN_IMAGE_ROTATE_565_8 | 7.838 | | IMAGE_ROTATE_STAR_565_1 | 1.535 | | IMAGE_ROTATE_STAR_565_2 | 1.532 | | IMAGE_ROTATE_STAR_565_4 | 1.512 | | IMAGE_ROTATE_STAR_565_8 | 1.493 | | IMAGE_ROTATE_TILED_565_0 | 1.492 | | IMAGE_ROTATE_TILED_565_1 | 1.950 | | IMAGE_ROTATE_TILED_565_2 | 1.988 | | IMAGE_ROTATE_TILED_565_4 | 2.001 | | IMAGE_ROTATE_TILED_565_8 | 1.970 | | IMAGE_ROTATE_TILED_STAR_565_0 | 1.492 | | IMAGE_ROTATE_TILED_STAR_565_1 | 1.951 | | IMAGE_ROTATE_TILED_STAR_565_2 | 1.987 | | IMAGE_ROTATE_TILED_STAR_565_4 | 2.002 | | IMAGE_ROTATE_TILED_STAR_565_8 | 1.970 | | EXTERN_IMAGE_ROTATE_TILED_565_0 | 4.595 | | EXTERN_IMAGE_ROTATE_TILED_565_1 | 6.277 | | EXTERN_IMAGE_ROTATE_TILED_565_2 | 6.389 | | EXTERN_IMAGE_ROTATE_TILED_565_4 | 6.741 | | EXTERN_IMAGE_ROTATE_TILED_565_8 | 7.188 | ## Image Color Tint | Test Case | Time (ms) | |-----------|-----------| | IMAGE_COLOR | 0.851 | | IMAGE_RESIZE_COLOR | 0.762 | ## Compress | Test Case | Time (ms) | |-----------|-----------| | EXTERN_IMAGE_QOI_565 | 17.189 | | EXTERN_IMAGE_QOI_565_8 | 2.803 | | EXTERN_MASK_IMAGE_QOI_NO_MASK | 17.189 | | EXTERN_MASK_IMAGE_QOI_ROUND_RECT | 17.417 | | EXTERN_MASK_IMAGE_QOI_CIRCLE | 17.565 | | EXTERN_MASK_IMAGE_QOI_IMAGE | 3.523 | | EXTERN_MASK_IMAGE_QOI_8_NO_MASK | 2.803 | | EXTERN_MASK_IMAGE_QOI_8_ROUND_RECT | 3.014 | | EXTERN_MASK_IMAGE_QOI_8_CIRCLE | 3.113 | | EXTERN_MASK_IMAGE_QOI_8_IMAGE | 0.883 | | EXTERN_IMAGE_RLE_565 | 5.180 | | EXTERN_IMAGE_RLE_565_8 | 2.264 | | EXTERN_MASK_IMAGE_RLE_NO_MASK | 5.180 | | EXTERN_MASK_IMAGE_RLE_ROUND_RECT | 5.407 | | EXTERN_MASK_IMAGE_RLE_CIRCLE | 5.554 | | EXTERN_MASK_IMAGE_RLE_IMAGE | 0.965 | | EXTERN_MASK_IMAGE_RLE_8_NO_MASK | 2.264 | | EXTERN_MASK_IMAGE_RLE_8_ROUND_RECT | 2.478 | | EXTERN_MASK_IMAGE_RLE_8_CIRCLE | 2.577 | | EXTERN_MASK_IMAGE_RLE_8_IMAGE | 0.808 | | IMAGE_QOI_565 | 6.687 | | IMAGE_QOI_565_8 | 2.146 | | IMAGE_RLE_565 | 2.495 | | IMAGE_RLE_565_8 | 1.413 | | IMAGE_TILED_QOI_565_0 | 0.603 | | IMAGE_TILED_QOI_565_8 | 1.284 | | IMAGE_TILED_RLE_565_0 | 0.514 | | IMAGE_TILED_RLE_565_8 | 1.287 | | MASK_IMAGE_QOI_8_CIRCLE | 2.455 | | MASK_IMAGE_QOI_8_IMAGE | 0.701 | | MASK_IMAGE_QOI_8_NO_MASK | 2.146 | | MASK_IMAGE_QOI_8_ROUND_RECT | 2.358 | | MASK_IMAGE_QOI_CIRCLE | 7.064 | | MASK_IMAGE_QOI_IMAGE | 1.485 | | MASK_IMAGE_QOI_NO_MASK | 6.687 | | MASK_IMAGE_QOI_ROUND_RECT | 6.914 | | MASK_IMAGE_RLE_8_CIRCLE | 1.724 | | MASK_IMAGE_RLE_8_IMAGE | 0.546 | | MASK_IMAGE_RLE_8_NO_MASK | 1.413 | | MASK_IMAGE_RLE_8_ROUND_RECT | 1.627 | | MASK_IMAGE_RLE_CIRCLE | 2.870 | | MASK_IMAGE_RLE_IMAGE | 0.608 | | MASK_IMAGE_RLE_NO_MASK | 2.495 | | MASK_IMAGE_RLE_ROUND_RECT | 2.721 | ## Gradient | Test Case | Time (ms) | |-----------|-----------| | GRADIENT_RECT | 0.401 | | GRADIENT_ROUND_RECT | 1.093 | | GRADIENT_CIRCLE | 3.162 | | GRADIENT_TRIANGLE | 0.964 | | GRADIENT_ARC_RING | 1.285 | | GRADIENT_ARC_RING_ROUND_CAP | 1.342 | | GRADIENT_RADIAL | 2.809 | | GRADIENT_ANGULAR | 2.668 | | GRADIENT_ROUND_RECT_RING | 0.779 | | GRADIENT_LINE_CAPSULE | 1.172 | | GRADIENT_MULTI_STOP | 0.406 | | GRADIENT_ROUND_RECT_CORNERS | 0.641 | | IMAGE_GRADIENT_OVERLAY | 0.936 | | MASK_GRADIENT_RECT_FILL | 0.374 | | MASK_GRADIENT_IMAGE | 1.512 | | MASK_GRADIENT_IMAGE_ROTATE | 1.701 | | TEXT_GRADIENT | 0.223 | | TEXT_RECT_GRADIENT | 0.734 | | TEXT_ROTATE_GRADIENT | 2.648 | ## Shadow | Test Case | Time (ms) | |-----------|-----------| | SHADOW | 1.281 | | SHADOW_ROUND | 1.835 | ## Mask | Test Case | Time (ms) | |-----------|-----------| | MASK_RECT_FILL_NO_MASK | 0.165 | | MASK_RECT_FILL_ROUND_RECT | 0.328 | | MASK_RECT_FILL_CIRCLE | 0.725 | | MASK_RECT_FILL_IMAGE | 0.295 | | MASK_RECT_FILL_NO_MASK_QUARTER | 0.123 | | MASK_RECT_FILL_NO_MASK_DOUBLE | 0.164 | | MASK_RECT_FILL_ROUND_RECT_QUARTER | 0.170 | | MASK_RECT_FILL_ROUND_RECT_DOUBLE | 0.326 | | MASK_RECT_FILL_CIRCLE_QUARTER | 0.286 | | MASK_RECT_FILL_CIRCLE_DOUBLE | 0.679 | | MASK_RECT_FILL_IMAGE_QUARTER | 0.132 | | MASK_RECT_FILL_IMAGE_DOUBLE | 0.187 | | MASK_IMAGE_NO_MASK | 0.664 | | MASK_IMAGE_ROUND_RECT | 0.965 | | MASK_IMAGE_CIRCLE | 1.426 | | MASK_IMAGE_IMAGE | 0.307 | | EXTERN_MASK_IMAGE_NO_MASK | 0.737 | | EXTERN_MASK_IMAGE_ROUND_RECT | 1.038 | | EXTERN_MASK_IMAGE_CIRCLE | 1.498 | | EXTERN_MASK_IMAGE_IMAGE | 0.349 | | MASK_IMAGE_NO_MASK_QUARTER | 0.249 | | MASK_IMAGE_NO_MASK_DOUBLE | 0.900 | | MASK_IMAGE_ROUND_RECT_QUARTER | 0.336 | | MASK_IMAGE_ROUND_RECT_DOUBLE | 0.938 | | MASK_IMAGE_CIRCLE_QUARTER | 0.457 | | MASK_IMAGE_CIRCLE_DOUBLE | 1.311 | | MASK_IMAGE_IMAGE_QUARTER | 0.165 | | MASK_IMAGE_IMAGE_DOUBLE | 0.308 | | MASK_ROUND_RECT_FILL_NO_MASK | 0.259 | | MASK_ROUND_RECT_FILL_WITH_MASK | 0.328 | | MASK_IMAGE_TEST_PERF_NO_MASK | 0.474 | | MASK_IMAGE_TEST_PERF_ROUND_RECT | 0.605 | | MASK_IMAGE_TEST_PERF_CIRCLE | 0.922 | | MASK_IMAGE_TEST_PERF_IMAGE | 1.866 | | EXTERN_MASK_IMAGE_TEST_PERF_NO_MASK | 0.528 | | EXTERN_MASK_IMAGE_TEST_PERF_ROUND_RECT | 0.693 | | EXTERN_MASK_IMAGE_TEST_PERF_CIRCLE | 1.310 | | EXTERN_MASK_IMAGE_TEST_PERF_IMAGE | 1.109 | ## Widgets | Test Case | Time (ms) | |-----------|-----------| | FILE_IMAGE_BMP_NORMAL | 0.346 | | FILE_IMAGE_JPG_RESIZE | 0.232 | | FILE_IMAGE_PNG_RESIZE | 0.232 | | FILE_IMAGE_BMP_RESIZE | 0.232 | | FILE_IMAGE_BMP_PFB_TILED | 0.211 | | FILE_IMAGE_BMP_PFB_TILED_RESIZE | 0.181 | | IMAGE_SVG_PFB_TILED | 1.278 | | IMAGE_SVG_PFB_TILED_RESIZE | 1.278 | | EXTERN_IMAGE_SVG_PFB_TILED | 1.561 | | EXTERN_IMAGE_SVG_PFB_TILED_RESIZE | 1.560 | | CHART_LINE_DENSE | 1.786 | | CHART_BAR_DENSE | 1.196 | | CHART_SCATTER_DENSE | 1.495 | | CHART_PIE_DENSE | 2.327 | ## Animation | Test Case | Time (ms) | |-----------|-----------| | ANIMATION_TRANSLATE | 0.138 | | ANIMATION_ALPHA | 0.137 | | ANIMATION_SCALE | 0.149 | | ANIMATION_SET | 0.156 |