Takuto Ikuta
3775c0d16e
checkout.c: enable fscache for checkout again
...
This is retry of #1419 .
I added flush_fscache macro to flush cached stats after disk writing
with tests for regression reported in #1438 and #1442 .
git checkout checks each file path in sorted order, so cache flushing does not
make performance worse unless we have large number of modified files in
a directory containing many files.
Using chromium repository, I tested `git checkout .` performance when I
delete 10 files in different directories.
With this patch:
TotalSeconds: 4.307272
TotalSeconds: 4.4863595
TotalSeconds: 4.2975562
Avg: 4.36372923333333
Without this patch:
TotalSeconds: 20.9705431
TotalSeconds: 22.4867685
TotalSeconds: 18.8968292
Avg: 20.7847136
I confirmed this patch passed all tests in t/ with core_fscache=1.
Signed-off-by: Takuto Ikuta <tikuta@chromium.org >
2021-05-17 11:27:22 +02:00
..
2021-05-17 11:27:21 +02:00
2021-05-10 15:06:22 +09:00
2020-07-30 19:18:06 -07:00
2021-04-30 09:56:42 +09:00
2021-02-25 16:43:29 -08:00
2021-04-20 11:09:50 -07:00
2021-04-28 09:25:45 +09:00
2020-08-11 18:04:11 -07:00
2020-07-09 14:00:41 -07:00
2021-05-07 12:47:41 +09:00
2021-01-12 14:04:42 -08:00
2021-05-05 12:25:25 +09:00
2021-05-16 21:05:23 +09:00
2021-05-17 11:27:22 +02:00
2021-05-17 11:08:35 +02:00
2021-04-27 16:31:39 +09:00
2021-03-29 14:06:08 -07:00
2021-01-06 15:10:49 -08:00
2020-04-28 10:47:10 -07:00
2021-05-17 11:27:21 +02:00
2021-04-19 14:16:59 -07:00
2021-03-15 14:32:51 -07:00
2021-03-15 14:32:51 -07:00
2020-11-25 12:30:18 -08:00
2020-10-16 12:30:45 -07:00
2021-04-27 16:31:39 +09:00
2021-02-25 16:43:30 -08:00
2021-02-25 16:43:30 -08:00
2021-02-25 16:43:30 -08:00
2021-04-27 16:31:39 +09:00
2021-05-16 21:05:23 +09:00
2020-09-30 12:53:47 -07:00
2021-04-27 16:31:39 +09:00
2021-04-27 16:31:38 +09:00
2021-02-05 13:49:54 -08:00
2021-05-16 21:05:22 +09:00
2020-03-24 15:04:43 -07:00
2021-05-07 12:47:41 +09:00
2021-01-07 19:12:02 -08:00
2021-04-30 13:50:26 +09:00
2021-05-17 11:11:45 +02:00
2021-05-17 11:08:40 +02:00
2021-05-10 16:59:46 +09:00
2020-08-04 18:34:01 -07:00
2021-04-27 16:31:38 +09:00
2021-04-07 16:54:08 -07:00
2020-04-28 10:47:10 -07:00
2021-04-30 13:50:26 +09:00
2021-05-10 16:59:46 +09:00
2021-04-07 16:54:08 -07:00
2021-03-20 16:09:26 -07:00
2021-05-10 15:06:22 +09:00
2020-02-11 09:59:39 -08:00
2021-04-14 13:47:21 -07:00
2020-10-20 12:53:26 -07:00
2021-05-03 14:14:58 +09:00
2021-03-28 19:03:10 -07:00
2021-04-01 13:07:37 -07:00
2021-03-03 17:07:12 -08:00
2021-01-28 12:03:26 -08:00
2021-03-13 16:00:09 -08:00
2021-05-11 15:27:23 +09:00
2021-04-27 16:31:38 +09:00
2019-12-09 12:26:40 -08:00
2020-03-24 15:04:44 -07:00
2020-05-13 12:19:18 -07:00
2020-12-15 17:39:42 -08:00
2021-02-25 16:43:33 -08:00
2021-03-29 14:06:08 -07:00
2020-04-28 10:47:10 -07:00
2021-05-10 16:59:46 +09:00
2021-04-27 16:31:39 +09:00
2021-02-11 09:21:52 -08:00
2020-07-28 15:02:18 -07:00
2021-04-07 16:54:08 -07:00
2021-04-28 13:36:13 +09:00
2020-07-30 19:18:06 -07:00
2021-03-14 15:57:59 -07:00
2021-04-19 14:09:11 -07:00
2020-12-12 23:35:51 -08:00
2021-03-31 14:10:50 -07:00
2021-05-07 12:47:41 +09:00
2020-10-03 09:59:19 -07:00
2021-01-25 14:19:19 -08:00
2020-09-09 13:53:09 -07:00
2021-04-27 16:31:39 +09:00
2021-01-21 15:51:31 -08:00
2021-04-30 13:50:26 +09:00
2021-05-16 21:05:24 +09:00
2021-04-27 16:31:39 +09:00
2021-03-14 15:57:59 -07:00
2021-04-20 11:09:50 -07:00
2021-04-27 16:31:39 +09:00
2021-05-17 11:11:44 +02:00
2020-11-16 13:44:01 -08:00
2020-07-30 19:18:06 -07:00
2020-08-11 18:04:11 -07:00
2021-04-27 16:31:39 +09:00