llvm_pipe 线程是什么?

What are llvm_pipe threads?

我正在编写一个使用大量线程的 Rust 应用程序。我注意到 CPU 使用率很高,所以我做了 top 然后点击 H 查看线程:

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                
         
 247759 root      20   0 3491496 104400  64676 R  32.2   1.0   0:02.98 my_app           
 247785 root      20   0 3491496 104400  64676 S  22.9   1.0   0:01.89 llvmpipe-0             
 247786 root      20   0 3491496 104400  64676 S  21.9   1.0   0:01.71 llvmpipe-1             
 247792 root      20   0 3491496 104400  64676 S  20.9   1.0   0:01.83 llvmpipe-7             
 247789 root      20   0 3491496 104400  64676 S  20.3   1.0   0:01.60 llvmpipe-4             
 247790 root      20   0 3491496 104400  64676 S  20.3   1.0   0:01.64 llvmpipe-5             
 247787 root      20   0 3491496 104400  64676 S  19.9   1.0   0:01.70 llvmpipe-2             
 247788 root      20   0 3491496 104400  64676 S  19.9   1.0   0:01.61 llvmpipe-3    

这些 llvmpipe-n 话题是什么?为什么 my_app 启动它们?他们肯定来自 my_app 吗?

作为 HHK 的链接,llvmpipe 线程来自您的 OpenGL 驱动程序,即 Mesa。

你说你是 运行 这个虚拟机。 VM 通常不会虚拟化 GPU 硬件,因此 Mesa OpenGL 驱动程序正在执行软件渲染。为了获得更好的性能,Mesa 生成线程以在 CPU.

上进行并行计算