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