Madhur Amilkanthwar
5d281a480e
[LoopInterchange] Constrain number of load/stores in a loop ( #118973 )
...
In the current state of the code, the transform computes entries for the
dependency matrix until `MaxMemInstrCount` which is 100. After 99th
entry, it terminates and thus overall wastes compile-time.
It would be nice if we can compute total number of entries upfront and
early exit if the number of entries > 100. However, computing the number
of entries is not always possible as it depends on two factors:
1. Number of load-store pairs in a loop.
2. Number of common loop levels for each of the pair.
This patch constrains the whole computation on the number of loads and
stores instructions in the loop.
In another approach, I experimented with computing 1 and constraining
the number of pairs, but that did not lead to any additional benefit in
terms of compile time. However, when other issues are fixed, I can
revisit this approach.
2025-01-21 10:49:19 +05:30
..
2024-11-12 08:41:27 +00:00
2024-12-04 10:20:14 +01:00
2024-11-12 08:41:27 +00:00
2024-11-05 13:44:34 +00:00
2024-12-09 18:02:24 -05:00
2024-11-21 11:21:12 +00:00
2024-11-12 08:41:27 +00:00
2024-11-12 08:41:27 +00:00
2024-11-12 08:41:27 +00:00
2025-01-06 13:17:14 +00:00
2024-11-21 11:21:12 +00:00
2024-12-16 16:41:04 +08:00
2024-12-05 14:36:40 +01:00
2025-01-15 09:53:31 +01:00
2024-08-15 13:34:49 -07:00
2024-09-19 03:54:13 -07:00
2025-01-15 13:50:23 +00:00
2024-12-25 01:29:01 -08:00
2024-11-06 11:53:33 +00:00
2025-01-14 11:59:41 +00:00
2025-01-10 18:04:25 -08:00
2025-01-03 09:25:08 -08:00
2025-01-03 09:19:32 -08:00
2024-08-09 13:25:04 +01:00
2024-11-11 12:56:31 +00:00
2025-01-18 20:01:07 +00:00
2024-11-21 10:07:39 -08:00
2024-12-09 16:44:05 +01:00
2025-01-04 10:56:45 -08:00
2024-09-27 12:19:11 -04:00
2025-01-17 20:33:11 +00:00
2024-11-12 09:11:47 +00:00
2024-12-09 16:44:05 +01:00
2024-11-12 09:11:47 +00:00
2024-11-12 09:11:47 +00:00
2024-12-19 09:19:11 -07:00
2025-01-15 14:19:23 +00:00
2025-01-10 09:05:06 +01:00
2024-11-13 20:57:29 +00:00
2025-01-06 12:02:28 +00:00
2025-01-20 16:32:35 +01:00
2025-01-20 12:19:07 -05:00
2025-01-14 09:34:27 +00:00
2024-12-12 17:11:07 +01:00
2024-11-14 09:56:22 -08:00
2024-11-04 15:33:19 +00:00
2024-11-26 20:39:53 +00:00
2024-11-19 08:12:25 +00:00
2025-01-16 14:07:03 +00:00
2025-01-07 17:17:26 -08:00
2025-01-20 16:20:15 +08:00
2024-11-19 08:12:25 +00:00
2024-11-05 22:45:56 +01:00
2024-11-21 11:21:12 +00:00
2025-01-21 10:49:19 +05:30
2024-11-21 08:06:56 +00:00
2024-11-21 08:06:56 +00:00
2024-12-10 15:06:48 +00:00
2024-11-21 08:06:56 +00:00
2024-11-21 08:06:56 +00:00
2025-01-07 18:24:50 -08:00
2024-12-22 13:10:54 +00:00
2025-01-20 15:05:15 +00:00
2025-01-14 12:06:22 +00:00
2024-12-05 14:36:40 +01:00
2024-12-20 12:16:49 +00:00
2024-12-05 15:20:56 +01:00
2024-11-21 08:06:56 +00:00
2024-10-31 13:29:07 -07:00
2024-11-07 14:09:45 +01:00
2025-01-16 10:05:30 +01:00
2025-01-09 12:01:43 -08:00
2024-11-26 20:50:54 +00:00
2024-12-06 12:21:45 +01:00
2024-12-12 15:45:44 +13:00
2024-12-15 13:08:02 -08:00
2024-12-09 16:44:05 +01:00
2024-12-03 20:54:36 +00:00
2024-11-27 15:56:23 -06:00
2024-12-20 15:40:08 -08:00
2025-01-17 14:05:54 +00:00
2024-11-21 11:21:12 +00:00
2024-12-03 20:54:36 +00:00
2024-12-05 14:36:40 +01:00
2024-11-04 17:51:30 -08:00
2024-12-13 17:05:03 +08:00
2025-01-17 15:48:24 -08:00
2024-11-06 11:53:33 +00:00
2024-12-03 20:54:36 +00:00
2024-12-31 18:40:17 -08:00
2024-12-05 14:36:40 +01:00
2025-01-02 12:11:59 -08:00
2024-12-03 20:54:36 +00:00
2025-01-20 14:22:20 -08:00
2024-12-03 20:54:36 +00:00
2025-01-15 10:25:55 -08:00
2025-01-07 18:24:50 -08:00
2024-12-03 20:54:36 +00:00
2024-08-22 12:18:01 +05:30
2024-11-26 12:25:54 +03:00
2025-01-14 18:17:07 +00:00
2024-11-13 11:28:36 -08:00