Avi Kivity
020ccbd76a
Merge 'utils: cached_file: Mark permit as awaiting on page miss' from Tomasz Grabiec
...
Otherwise, the read will be considered as on-cpu during promoted index
search, which will severely underutlize the disk because by default
on-cpu concurrency is 1.
I verified this patch on the worst case scenario, where the workload
reads missing rows from a large partition. So partition index is
cached (no IO) and there is no data file IO (relies on https://github.com/scylladb/scylladb/pull/20522 ).
But there is IO during promoted index search (via cached_file).
Before the patch this workload was doing 4k req/s, after the patch it does 30k req/s.
The problem is much less pronounced if there is data file or partition index IO involved
because that IO will signal read concurrency semaphore to invite more concurrency.
Fixes #21325
Closes scylladb/scylladb#21323
* github.com:scylladb/scylladb:
utils: cached_file: Mark permit as awaiting on page miss
utils: cached_file: Push resource_unit management down to cached_file
2024-10-29 16:15:21 +02:00
..
2023-09-11 14:38:46 +03:00
2024-10-08 12:03:30 +03:00
2024-10-23 10:12:29 +03:00
2024-07-08 16:08:27 +02:00
2024-01-18 12:50:06 +02:00
2024-10-01 14:02:50 +03:00
2023-12-02 22:37:22 +02:00
2024-08-05 08:23:35 +03:00
2023-09-04 16:14:38 +03:00
2024-09-11 23:21:40 +03:00
2024-10-01 14:02:50 +03:00
2024-01-18 12:50:06 +02:00
2024-09-11 23:21:40 +03:00
2024-04-19 07:44:07 +03:00
2023-12-12 21:09:51 +08:00
2024-08-05 08:23:35 +03:00
2024-06-24 12:06:01 +05:30
2024-06-24 12:06:01 +05:30
2024-08-05 08:23:35 +03:00
2024-08-05 08:23:35 +03:00
2023-09-01 22:34:41 +02:00
2024-10-28 19:54:58 +01:00
2024-10-07 21:11:23 +03:00
2024-10-07 21:16:03 +03:00
2024-10-18 08:36:52 +08:00
2024-08-05 08:23:35 +03:00
2024-08-05 08:23:35 +03:00
2024-07-18 18:38:22 +03:00
2024-10-08 12:03:15 +03:00
2024-09-25 15:45:42 +03:00
2024-09-27 01:24:54 +02:00
2024-01-18 12:50:06 +02:00
2024-10-07 21:19:14 +03:00
2024-08-05 08:23:35 +03:00
2024-10-21 11:21:52 +03:00
2024-05-18 00:24:00 +03:00
2024-05-18 00:24:00 +03:00
2024-09-30 12:07:15 +08:00
2024-02-01 12:20:23 +05:30
2024-08-11 13:52:35 +03:00
2024-05-26 16:45:42 +03:00
2024-08-04 15:32:01 +03:00
2024-08-05 08:23:35 +03:00
2024-08-05 08:23:35 +03:00
2024-07-10 20:39:01 +03:00
2024-10-28 21:37:20 +02:00
2024-08-05 08:23:35 +03:00
2024-04-19 07:44:07 +03:00
2024-01-18 12:50:06 +02:00
2024-02-01 14:50:17 +02:00
2024-05-26 16:45:42 +03:00
2024-08-05 08:23:35 +03:00
2024-02-02 15:20:40 +01:00
2024-08-05 08:23:35 +03:00
2024-10-07 21:32:16 +03:00
2024-09-27 01:24:54 +02:00
2024-10-07 10:55:48 +03:00
2024-05-27 17:34:38 +03:00
2024-01-23 13:12:34 +02:00
2024-08-22 23:34:24 +03:00
2024-10-22 06:54:46 +03:00
2024-03-12 14:53:55 +08:00
2024-04-19 07:44:07 +03:00
2024-10-22 06:54:46 +03:00
2024-10-07 10:55:48 +03:00
2024-08-05 08:23:35 +03:00
2024-10-07 17:26:01 +03:00
2024-08-05 08:23:35 +03:00
2024-08-05 08:23:35 +03:00
2024-09-11 23:21:40 +03:00
2024-10-01 14:02:50 +03:00
2024-10-22 06:54:46 +03:00
2024-08-05 08:23:35 +03:00
2024-10-22 06:54:46 +03:00
2024-10-22 06:54:46 +03:00
2024-08-05 08:23:35 +03:00
2024-08-05 08:23:35 +03:00
2024-02-23 11:32:41 +08:00
2024-04-19 22:56:13 +08:00
2023-11-20 23:02:41 +02:00
2024-07-04 10:07:48 +03:00
2023-12-02 22:37:22 +02:00
2024-06-24 08:24:43 +03:00
2024-10-01 14:02:50 +03:00
2024-02-09 17:00:33 +01:00
2024-10-07 21:11:07 +03:00
2024-01-31 16:45:09 +02:00
2024-08-05 08:23:35 +03:00
2024-02-07 18:31:28 +01:00
2024-08-05 08:23:35 +03:00
2024-01-31 09:16:10 +02:00
2023-12-02 22:37:22 +02:00
2024-02-02 22:12:57 +08:00
2024-08-05 08:23:35 +03:00
2024-08-05 08:23:35 +03:00
2024-09-12 15:22:49 +03:00
2024-10-06 12:47:51 +03:00
2023-06-26 11:10:38 +03:00
2024-10-01 14:02:50 +03:00
2024-10-22 17:12:11 +03:00
2024-08-08 10:42:09 +02:00
2024-06-18 23:36:30 +05:30
2024-08-15 02:12:58 +02:00
2024-08-05 08:23:35 +03:00
2024-08-19 17:20:12 +03:00
2024-04-23 12:09:05 +03:00
2024-08-05 08:23:35 +03:00
2023-06-15 15:52:50 +04:00
2024-10-07 17:30:12 +03:00
2023-12-02 22:37:22 +02:00
2024-08-19 17:20:12 +03:00
2023-12-02 22:37:22 +02:00
2024-04-30 09:07:22 +03:00
2024-08-05 08:23:35 +03:00
2024-09-11 23:21:40 +03:00
2024-08-05 08:23:35 +03:00
2024-08-13 10:02:43 +02:00
2024-10-01 14:02:50 +03:00
2024-05-18 00:24:00 +03:00