[llvm-dev] Performace regression in llvm::ExecutionEngine::finalizeObject

Lang Hames via llvm-dev llvm-dev at lists.llvm.org
Tue Jul 14 17:09:45 PDT 2020


Hi Gaurav,

I don't think the default JIT optimization settings for ExecutionEngine
have changed, so if you didn't change your JIT config either then this
probably isn't a JIT bug.

Was the whole of the regression due to slowdowns in PerformDAGCombine? Was
there any substantial change to the IR coming in to CodeGen between LLVM 8
and LLVM 10 for your test case?

If you don't find answers in this thread I'd be inclined to ask again and
phrase it as a CodeGen regression question: That might catch more people's
attention.

Regards,
Lang.

On Thu, Jun 25, 2020 at 9:49 AM gaurav phatnani via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Hello,
>
> I am working on upgrading an app from using llvm 8.0.1 to llvm 10.0.
>
> I create a JIT llvm::ExecutionEngine(i386 CPU, NONE codegenopt) which
> contains a single module.
>
> Below are some numbers for call to llvm::ExecutionEngine::finalizeObject:
> llvm 8.0.1 - less than 0.5 seconds
> llvm 10.0 - greater than 170 seconds
>
> Using Vtune, was able to trace the regression to
> llvm::SDNode::hasNUsesOfValue(which is called by
> llvm::X86TargetLowering::PerformDAGCombine)
>
> I want to check if anyone has faced a similar problem or has any ideas
> what the root cause/fix might be?
>
> Thanks,
> Gaurav
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200714/bde4f841/attachment.html>


More information about the llvm-dev mailing list