bazel-compile-commands-extractor
                                
                                 bazel-compile-commands-extractor copied to clipboard
                                
                                    bazel-compile-commands-extractor copied to clipboard
                            
                            
                            
                        Use ProcessPoolExecutor instead of ThreadPoolExecutor.
With the ThreadPoolExecutor, it was observed that the compile commands extractor was effectively running single threaded for substantial periods of time, most likely due to the GIL. CPU utilization was only about one core. Using a ProcessPoolExecutor to work around the GIL seems to provide a substantial performance benefit - it was about 6x faster in a test run.