[Bug default/27557] Use threading at sub-file level

vries at gcc dot gnu.org sourceware-bugzilla@sourceware.org
Wed Mar 10 14:31:12 GMT 2021


https://sourceware.org/bugzilla/show_bug.cgi?id=27557

--- Comment #1 from Tom de Vries <vries at gcc dot gnu.org> ---
Created attachment 13300
  --> https://sourceware.org/bugzilla/attachment.cgi?id=13300&action=edit
Demonstrator patch

Uses 4 threads to do checksum_die in parallel. Runs into trouble with
loc_htab/loclists_htab, so uses mutexes to guard accesses to those.

Passes testsuite with -fsanitize=threads.

Results on cc1: same memory usage, 20% more usertime, 8.7% less realtime.
...
real:
series:  5590 5620 5670 5710 5680 5620 5660 5650 6040 5680
mean:  5692.00 (100%)
stddev:  127.26
series:  5130 5180 5160 5140 5230 5170 5140 5600 5110 5100
mean:  5196.00 (91.29%)
stddev:  146.76

user:
series:  5300 5320 5330 5420 5370 5320 5310 5330 5330 5370
mean:  5340.00 (100%)
stddev:  36.21
series:  6460 6420 6440 6450 6530 6430 6420 6460 6430 6360
mean:  6440.00 (120.60%)
stddev:  42.69

sys:
series:  280 290 330 280 300 290 340 310 350 300
mean:  307.00 (100%)
stddev:  24.97
series:  280 350 310 290 310 330 320 340 280 340
mean:  315.00 (102.61%)
stddev:  25.50

mem:
series:  1260412 1260472 1260468 1260352 1260532 1260528 1260592 1260416
1260416 1260352
mean:  1260454.00 (100%)
stddev:  79.29
series:  1260148 1260332 1260144 1260156 1260016 1260012 1260508 1260152
1260120 1260256
mean:  1260184.40 (99.98%)
stddev:  148.57
...

Known problem: When marking inter-CU refs in read_exprloc, we need to ensure
that there's no other thread accessing that DIE.  Should not be typical input
though.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Dwz mailing list