Created attachment 14548 [details] screen shot from gnuplot I was curious about the scalability of the parallel reader, so I built on gcc112, which reports 160 processors. I made a file like: maint time 1 file /tmp/gdb Then I ran: for j in $(seq 0 180); do echo ======= $j ; ./gdb/gdb -nh -quiet -iex "maint set worker-threads $j" < S; done I had it go over 160 just to see if that was interesting or not. To my surprise, the results don't seem to improve past N=8 or so. There are multiple possible explanations for this, but it would be worthwhile to find out exactly why.
Created attachment 14549 [details] timing data
One recent idea here is that the DWARF reader could just limit itself to 8 jobs; then with the background reader enabled, this would allow more parallel work on large machines. That is, try to take advantage of the lack of scalability.