summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/tools/clang/lib/Driver/Multilib.cpp
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2015-01-20 13:09:12 +0000
committermav <mav@FreeBSD.org>2015-01-20 13:09:12 +0000
commit24b6750419f6979b7cbb18a485d70d553fcb9fcd (patch)
tree6491607306ac49700695cd0acadea9ffd96859d4 /contrib/llvm/tools/clang/lib/Driver/Multilib.cpp
parent313e96ad334aae0ab1c78f7cdd21462fd5e91e22 (diff)
downloadFreeBSD-src-24b6750419f6979b7cbb18a485d70d553fcb9fcd.zip
FreeBSD-src-24b6750419f6979b7cbb18a485d70d553fcb9fcd.tar.gz
Allow skipping dmu_buf_will_dirty() call in dsl_dir_transfer_space().
dsl_dir_transfer_space() is mostly called after dsl_dir_diduse_space(), which already calls dmu_buf_will_dirty() for the same dbuf and tx, so its duplicate call in those cases will change nothing, only spend time. Skipping this call by four times reduces time spent in dbuf_write_done() and descendants, updating dataset statistics with several congested lock acquisitions. When rewriting 8K zvol blocks at 1GB/s rate, this reduces CPU time spent inside dbuf_write_done(), according to profiling, from 45% of 683K samples to 18% of 422K. MFC after: 2 weeks
Diffstat (limited to 'contrib/llvm/tools/clang/lib/Driver/Multilib.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud