LLVM Based MultiThread Program Optimization