我需要生成将服务于大量线程/任务(数十万个)的LLVM代码。这些线程应该像Intel TBB的任务,golang gorutines或其他任务一样轻量级。当然,它们可以使用外部C++库(如提到的Intel TBB)(如果它与LLVM兼容)来实现。
我一直在寻找有关LLVM中线程的任何信息,但是我发现的不多。在the documentation of LLVM中描述了一些API调用,但我认为这不是我想要的。
因此,有几个问题:
最佳答案
实际上,似乎有一些项目使用了英特尔TBB和LLVM,例如,英特尔自己的opencl SDK将TBB和LLVM用于其编译器http://software.intel.com/en-us/articles/vcsource-tools-opencl-sdk/。
关于LLVM中的多线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11830302/