Christian Hergert
d122b66abc
clutter/actor: avoid transform node for identity matrix
...
If the transform matrix is an identity, then positioning wont change and
we can avoid creating the transform node altogether. This is based on
a similar find in GTK today while reducing temporary allocations.
This cuts the number of transforms created in clutter_actor_paint() by
about half under light testing of GNOME Shell from 6.8% to 2.4% of
allocations.
Before:
ALLOCATED TOTAL FUNCTION
[ 20.4 MiB] [ 21.20%] clutter_actor_paint
[ 11.0 MiB] [ 11.45%] clutter_paint_node_paint
[ 6.6 MiB] [ 6.84%] clutter_transform_node_new
[ 2.5 MiB] [ 2.61%] clutter_actor_node_new
After:
ALLOCATED TOTAL FUNCTION
[ 33.4 MiB] [ 24.12%] clutter_actor_paint
[ 26.2 MiB] [ 18.91%] clutter_paint_node_paint
[ 3.4 MiB] [ 2.43%] clutter_actor_node_new
[ 3.3 MiB] [ 2.41%] clutter_transform_node_new
Allocation amounts will have differed due to different amounts of running
time, but the % of allocations has now dropped below
clutter_actor_node_new() which should be expected.
https://gitlab.gnome.org/GNOME/mutter/issues/1056
2020-02-20 06:41:34 +00:00
..
2019-11-22 01:27:40 +01:00
2020-01-16 20:57:20 +00:00
2019-12-03 19:02:14 +00:00
2020-01-30 18:11:23 +01:00
2019-06-18 09:54:00 +02:00
2020-01-30 18:11:23 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-01-24 17:00:25 +00:00
2019-10-16 11:38:13 +00:00
2019-11-21 15:02:27 +00:00
2018-11-06 17:17:36 +01:00
2019-12-03 19:02:14 +00:00
2020-02-20 06:41:34 +00:00
2019-12-03 19:02:14 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-11-19 21:50:26 +00:00
2019-02-27 16:44:24 +00:00
2019-12-03 19:02:14 +00:00
2020-01-30 18:11:23 +01:00
2020-01-30 18:11:23 +01:00
2020-01-30 17:59:47 +01:00
2019-10-16 11:38:14 +00:00
2018-03-21 13:22:35 +08:00
2019-01-22 18:31:52 +01:00
2019-11-19 21:50:26 +00:00
2018-11-06 17:17:36 +01:00
2020-02-19 08:26:28 -03:00
2018-11-06 17:17:36 +01:00
2019-05-15 14:49:56 -05:00
2018-11-06 17:17:36 +01:00
2019-12-03 19:02:14 +00:00
2018-11-06 17:17:36 +01:00
2019-01-28 18:36:05 +01:00
2018-11-06 17:17:36 +01:00
2020-01-07 14:20:21 -03:00
2018-11-06 17:17:36 +01:00
2018-11-06 18:51:44 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-12-03 19:02:14 +00:00
2019-03-01 17:46:49 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-11-22 01:27:40 +01:00
2018-11-06 17:17:36 +01:00
2019-12-03 19:02:14 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-12-03 19:02:14 +00:00
2018-11-06 17:17:36 +01:00
2020-02-19 11:57:05 +00:00
2020-02-19 11:57:05 +00:00
2020-02-19 11:57:05 +00:00
2019-11-19 21:50:26 +00:00
2019-10-15 08:51:45 +00:00
2019-12-03 19:02:14 +00:00
2019-12-03 19:02:14 +00:00
2019-12-03 19:02:14 +00:00
2019-10-25 19:12:34 +00:00
2019-12-03 19:02:14 +00:00
2018-11-06 17:17:36 +01:00
2019-11-19 21:50:27 +00:00
2019-12-03 19:02:14 +00:00
2018-11-06 17:17:36 +01:00
2019-11-21 15:02:27 +00:00
2019-10-16 11:38:14 +00:00
2019-11-21 15:02:27 +00:00
2018-11-06 17:17:36 +01:00
2016-07-20 14:23:48 +08:00
2019-12-03 19:02:14 +00:00
2019-12-03 19:02:14 +00:00
2019-12-03 19:02:14 +00:00
2016-07-20 14:23:48 +08:00
2019-06-12 18:01:36 +02:00
2020-02-19 17:36:29 +00:00
2019-08-24 08:59:08 +00:00
2019-11-12 17:09:09 +01:00
2019-10-16 11:38:14 +00:00
2019-10-21 21:43:08 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-11-21 15:02:27 +00:00
2018-11-06 17:17:36 +01:00
2019-10-16 11:38:14 +00:00
2019-10-16 11:38:13 +00:00
2019-11-19 21:50:27 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-12-03 19:02:14 +00:00
2019-02-28 09:31:01 +01:00
2020-01-30 18:11:23 +01:00
2019-02-28 09:31:01 +01:00
2018-11-06 17:17:36 +01:00
2020-01-30 22:28:56 +01:00
2020-01-30 18:11:23 +01:00
2018-01-18 15:35:29 +01:00
2019-10-16 11:38:14 +00:00
2019-10-16 11:38:14 +00:00
2019-10-16 11:38:14 +00:00
2020-01-30 18:11:23 +01:00
2019-10-16 11:38:14 +00:00
2019-08-24 08:59:08 +00:00
2020-01-30 18:11:23 +01:00
2016-07-20 14:23:48 +08:00
2018-11-06 17:17:36 +01:00
2018-11-12 15:36:29 +01:00
2018-11-06 17:17:36 +01:00
2020-01-30 17:59:46 +01:00
2020-01-30 17:59:46 +01:00
2016-07-20 14:23:48 +08:00
2019-11-19 21:50:26 +00:00
2019-11-19 21:50:27 +00:00
2019-10-22 11:57:55 -04:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2020-01-30 18:11:23 +01:00
2019-10-25 19:12:34 +00:00
2019-08-27 07:36:57 +00:00
2019-06-07 12:08:49 -03:00
2019-02-27 16:44:24 +00:00
2019-02-27 16:44:24 +00:00
2020-01-30 18:11:23 +01:00
2020-01-07 14:20:21 -03:00
2019-12-03 19:02:14 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-12-03 16:41:34 -03:00
2019-12-03 19:02:14 +00:00
2019-12-03 16:41:34 -03:00
2019-12-03 19:02:14 +00:00
2019-12-03 19:02:14 +00:00
2019-12-03 19:02:14 +00:00
2019-12-03 19:02:14 +00:00
2019-10-22 14:47:37 -03:00
2019-10-16 11:38:13 +00:00
2019-10-16 11:38:13 +00:00
2019-08-19 13:09:56 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-10-22 19:01:17 +00:00
2018-11-06 17:17:36 +01:00
2019-12-03 19:02:14 +00:00
2019-12-03 19:02:14 +00:00
2019-12-03 19:02:14 +00:00
2019-10-21 13:49:26 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-10-16 11:38:14 +00:00
2019-10-16 11:38:14 +00:00
2019-11-13 13:56:08 +00:00
2019-02-28 09:31:01 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-10-16 11:38:14 +00:00
2019-10-16 11:38:14 +00:00
2020-02-10 22:04:53 +00:00
2020-02-10 22:04:53 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2020-02-12 21:55:44 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-11-19 21:50:26 +00:00
2018-11-06 17:17:36 +01:00
2020-01-30 18:31:24 +00:00
2019-12-03 19:02:14 +00:00
2019-11-04 10:44:42 +01:00
2019-06-19 12:35:29 -03:00
2019-11-22 21:07:05 +00:00
2019-11-22 21:07:05 +00:00
2020-01-30 18:31:24 +00:00
2019-11-22 21:07:05 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-08-19 13:09:56 +00:00
2018-11-06 17:17:36 +01:00
2019-07-30 13:50:17 +02:00
2018-11-06 17:17:36 +01:00
2020-01-30 17:59:47 +01:00
2019-10-16 11:38:14 +00:00
2019-12-09 17:53:51 +01:00
2019-10-16 11:38:14 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-10-07 18:33:28 +00:00
2018-11-06 17:17:36 +01:00
2019-10-22 19:01:17 +00:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2019-10-16 11:38:14 +00:00
2020-01-30 18:02:14 +01:00
2020-01-30 18:02:14 +01:00
2019-10-16 11:38:14 +00:00
2019-10-16 11:38:14 +00:00
2020-01-30 18:11:23 +01:00
2020-01-30 18:11:23 +01:00
2018-11-07 14:29:30 +01:00