A scalability fix for Helgrind for running large workloads.  When
creating new vector timestamps (VTSs) via tick and join operations,
preallocate the underlying XArray of ScalarTSs (scalar timestamps) at
the likely final size, using new function VG_(newSizedXA) introduced
in r11558.  This reduces overall heap turnover (in VG_AR_TOOL) by a
factor of several.  Together with revs 11567 and 11568, it mitigates
the worst-case performance falloff in long runs that involve lots of
threads and lots of synchronisation events (a.k.a Vector timestamps).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11569 a5019735-40e9-0310-863c-91ae7b9d1cf9
1 file changed