Takuto Ikuta
775ba8698f
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 >
2020-01-03 20:54:35 +01:00
..
2020-01-03 20:54:34 +01:00
2019-10-15 13:47:59 +09:00
2019-12-25 11:22:01 -08:00
2019-12-01 09:04:30 -08:00
2019-12-09 12:30:55 -08:00
2019-11-11 11:46:29 +09:00
2019-09-18 11:50:09 -07:00
2019-01-24 11:55:06 -08:00
2019-09-05 14:05:12 -07:00
2019-02-06 22:05:23 -08:00
2020-01-03 20:54:35 +01:00
2020-01-03 20:54:21 +01:00
2020-01-03 20:45:23 +01:00
2019-05-13 14:22:53 +09:00
2019-11-13 11:14:16 +09:00
2019-03-08 10:31:24 +09:00
2020-01-03 20:54:33 +01:00
2019-01-29 12:47:54 -08:00
2019-10-15 13:48:02 +09:00
2019-01-24 11:55:06 -08:00
2019-01-24 11:55:06 -08:00
2019-03-07 09:59:54 +09:00
2019-04-25 16:41:12 +09:00
2019-10-07 10:20:12 +09:00
2019-07-11 14:31:04 -07:00
2019-10-15 13:48:02 +09:00
2019-03-20 18:34:09 +09:00
2019-12-06 15:09:22 -08:00
2019-12-10 13:11:45 -08:00
2019-03-21 12:03:35 +09:00
2019-10-28 14:05:18 +09:00
2019-11-10 16:00:54 +09:00
2019-04-01 11:57:39 +09:00
2019-10-23 14:43:11 +09:00
2019-05-13 14:22:53 +09:00
2019-02-20 12:31:56 -08:00
2019-10-11 14:24:46 +09:00
2019-07-25 14:27:06 -07:00
2019-06-19 07:12:49 -07:00
2019-12-25 11:21:58 -08:00
2019-09-30 13:19:32 +09:00
2019-03-21 12:03:35 +09:00
2019-01-24 11:55:06 -08:00
2019-01-24 11:55:06 -08:00
2019-08-19 10:08:03 -07:00
2019-08-22 12:34:10 -07:00
2019-10-07 11:32:53 +09:00
2019-05-13 14:22:54 +09:00
2019-10-23 12:05:06 +09:00
2019-01-24 11:55:06 -08:00
2019-12-25 11:21:58 -08:00
2019-10-18 09:43:10 +09:00
2019-11-10 16:00:54 +09:00
2019-04-01 11:57:38 +09:00
2019-04-26 10:54:03 +09:00
2019-12-09 12:26:40 -08:00
2019-03-07 09:59:55 +09:00
2019-06-20 10:18:09 -07:00
2019-08-19 13:05:58 -07:00
2019-11-27 11:18:39 +09:00
2019-12-06 12:36:53 -08:00
2019-11-22 16:11:44 +09:00
2020-01-02 12:38:30 -08:00
2019-08-19 15:04:59 -07:00
2019-02-06 22:05:27 -08:00
2019-12-11 13:48:46 -08:00
2019-11-10 18:02:14 +09:00
2019-10-11 14:24:46 +09:00
2020-01-03 20:45:22 +01:00
2019-10-11 14:24:48 +09:00
2019-11-20 10:19:58 +09:00
2019-07-19 11:30:21 -07:00
2019-07-29 12:38:17 -07:00
2019-05-13 14:22:54 +09:00
2019-08-19 15:04:59 -07:00
2019-05-19 16:45:30 +09:00
2019-12-13 12:01:02 -08:00
2020-01-03 20:45:26 +01:00
2019-12-10 13:11:43 -08:00
2019-06-05 14:39:28 -07:00
2019-11-20 10:30:18 +09:00
2019-11-10 18:02:16 +09:00
2019-05-13 14:22:53 +09:00
2019-07-31 14:38:56 -07:00
2019-06-19 08:19:21 -07:00
2019-12-01 09:04:31 -08:00
2019-05-13 14:22:53 +09:00