On Mon, May 09, 2022 at 06:28:17PM -0400, Theodore Ts'o wrote: > Oh, one other problem with DEPT --- it's SLOW --- the overhead is > enormous. Using kvm-xfstests[1] running "kvm-xfstests smoke", here > are some sample times: Yes, right. DEPT has never been optimized. It rather turns on CONFIG_LOCKDEP and even CONFIG_PROVE_LOCKING when CONFIG_DEPT gets on because of porting issue. I have no choice but to rely on those to develop DEPT out of tree. Of course, that's what I don't like. Plus, for now, I'm focusing on removing false positives. Once it's considered settled down, I will work on performance optimizaition. But it should still keep relying on Lockdep CONFIGs and adding additional overhead on it until DEPT can be developed in the tree. > LOCKDEP DEPT > Time to first test 49 seconds 602 seconds > ext4/001 2 s 22 s > ext4/003 2 s 8 s > ext4/005 0 s 7 s > ext4/020 1 s 8 s > ext4/021 11 s 17 s > ext4/023 0 s 83 s > generic/001 4 s 76 s > generic/002 0 s 11 s > generic/003 10 s 19 s > > There are some large variations; in some cases, some xfstests take 10x > as much time or more to run. In fact, when I first started the > kvm-xfstests run with DEPT, I thought something had hung and that > tests would never start. (In fact, with gce-xfstests the default > watchdog "something has gone terribly wrong with the kexec" had fired, > and I didn't get any test results using gce-xfstests at all. If DEPT > goes in without any optimizations, I'm going to have to adjust the > watchdogs timers for gce-xfstests.) Thank you for informing it. I will go for the optimization as well. > The bottom line is that at the moment, between the false positives, > and the significant overhead imposed by DEPT, I would suggest that if > DEPT ever does go in, that it should be possible to disable DEPT and > only use the existing CONFIG_PROVE_LOCKING version of LOCKDEP, just > because DEPT is S - L - O - W. > > [1] https://github.com/tytso/xfstests-bld/blob/master/Documentation/kvm-quickstart.md > > - Ted > > P.S. Darrick and I both have disabled using LOCKDEP by default > because it slows down ext4 -g auto testing by a factor 2, and xfs -g > auto testing by a factor of 3. So the fact that DEPT is a factor of > 2x to 10x or more slower than LOCKDEP when running various xfstests > tests should be a real concern. DEPT is tracking way more objects than Lockdep so it's inevitable to be slower, but let me try to make it have the similar performance to Lockdep. Byungchul