diff options
author | Noel Grandin <noel@peralex.com> | 2021-09-06 12:46:51 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2021-09-09 09:06:45 +0200 |
commit | 3749d9af3745c0eaff7239e379578e4e2af89e9d (patch) | |
tree | b769195ba13d277ce1d9d6f2a97ecfe95a6f13b9 /RepositoryExternal.mk | |
parent | 4bf266233daa7d9ed030a20fa4f487f9f5a82379 (diff) |
tdf#130795 use concurrent hashmap in SharedStringPool
we are loading a spreadsheet in parallel here, but the parallel threads
achievei very little actual concurrency because of heavy contention
in the SharedStringPool mutex.
So switch to a concurrent hash map. I looked at a couple of different
ones (including the Folly one), and this was the one with the simplest
resulting code.
This takes my load time from 12.5s to 8s
Change-Id: I04d6d8e11d613b510eb3bc981f3338819b7ac813
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121717
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'RepositoryExternal.mk')
-rw-r--r-- | RepositoryExternal.mk | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk index 15cfbfde3d4a..3f645e08ec2a 100644 --- a/RepositoryExternal.mk +++ b/RepositoryExternal.mk @@ -4249,4 +4249,37 @@ endif # ENABLE_ZXING endif # SYSTEM_ZXING -# vim: set noet sw=4 ts=4: + + +ifneq ($(SYSTEM_CUCKOO),) + +gb_ExternalProject__use_cuckoo_headers := + +define gb_LinkTarget__use_cuckoo_headers +$(call gb_LinkTarget_set_include,$(1),\ + -I$(call gb_UnpackedTarball_get_dir,cuckoo) \ + $$(INCLUDE) \ +) + +endef + +else # !SYSTEM_CUCKOO + +define gb_ExternalProject__use_cuckoo_headers +$(call gb_ExternalProject_use_unpacked,$(1),cuckoo) + +endef + +define gb_LinkTarget__use_cuckoo_headers +$(call gb_LinkTarget_use_unpacked,$(1),cuckoo) +$(call gb_LinkTarget_set_include,$(1),\ + -I$(call gb_UnpackedTarball_get_dir,cuckoo) \ + $$(INCLUDE) \ +) + +endef + +endif # SYSTEM_CUCKOO + + +# vim: set noet sw=4 ts=4:
\ No newline at end of file |