What about benchmarks on other Arm devices? On 02/26/2013 02:52 PM, Jim Grosbach wrote:> Cortex-M0 is a Thumb1 only device. There hasn't been any concerted > effort to tune LLVM's Thumb1 output in quite a long time. Even back then > (2008 or so), the effort was mainly to get it to work acceptably, with > the real performance tuning work being done for Thumb2. I'm not > surprised that an embedded market focussed compiler like IAR is better > tuned for a chip like that. > > -Jim > > On Feb 26, 2013, at 2:11 PM, matic at nimp.co.uk <mailto:matic at nimp.co.uk> > wrote: > >> Hi, >> >> >> I didn't do any serious benchmarking but so far I never found a case >> where LLVM does better than IAR on CortexM0, but I saw a lot of cases >> where IAR output is better than LLVM... >> >> That said I did not use -Os or -Oz, I just used -O3. >> >> A recurrent situation is that LLVM push/pop one or two extra registers >> compared to IAR, I guess it does so in order to comply with a standard >> ABI or something but in the world of deeply embedded system, we don't >> care of such things 99.99% of the time... >> >> If you want to see some good code output, take a look at IAR, there is >> a free version limited in code size online. >> >> Cheers, >> >> Sebastien >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu >> <mailto:LLVMdev at cs.uiuc.edu>http://llvm.cs.uiuc.edu >> <http://llvm.cs.uiuc.edu/> >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >
I've not run any on non-iOS devices, and haven't looked at GCC since v4.2.1 due to licensing issues, so I don't have a good feel for comparative benchmarking. -Jim On Feb 26, 2013, at 4:20 PM, Reed Kotler <rkotler at mips.com> wrote:> What about benchmarks on other Arm devices? > > On 02/26/2013 02:52 PM, Jim Grosbach wrote: >> Cortex-M0 is a Thumb1 only device. There hasn't been any concerted >> effort to tune LLVM's Thumb1 output in quite a long time. Even back then >> (2008 or so), the effort was mainly to get it to work acceptably, with >> the real performance tuning work being done for Thumb2. I'm not >> surprised that an embedded market focussed compiler like IAR is better >> tuned for a chip like that. >> >> -Jim >> >> On Feb 26, 2013, at 2:11 PM, matic at nimp.co.uk <mailto:matic at nimp.co.uk> >> wrote: >> >>> Hi, >>> >>> >>> I didn't do any serious benchmarking but so far I never found a case >>> where LLVM does better than IAR on CortexM0, but I saw a lot of cases >>> where IAR output is better than LLVM... >>> >>> That said I did not use -Os or -Oz, I just used -O3. >>> >>> A recurrent situation is that LLVM push/pop one or two extra registers >>> compared to IAR, I guess it does so in order to comply with a standard >>> ABI or something but in the world of deeply embedded system, we don't >>> care of such things 99.99% of the time... >>> >>> If you want to see some good code output, take a look at IAR, there is >>> a free version limited in code size online. >>> >>> Cheers, >>> >>> Sebastien >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> LLVMdev at cs.uiuc.edu >>> <mailto:LLVMdev at cs.uiuc.edu>http://llvm.cs.uiuc.edu >>> <http://llvm.cs.uiuc.edu/> >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> >> >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130226/0d9be088/attachment.html>
I haven't tried using -Os/z on any ARM device for the last 3 years, and back then, -Os would break many things. People normally care about code size on Cortex-R/M and ARM9 or older, and in there, not many LLVM users. --renato On 27 February 2013 00:38, Jim Grosbach <grosbach at apple.com> wrote:> I've not run any on non-iOS devices, and haven't looked at GCC since > v4.2.1 due to licensing issues, so I don't have a good feel for comparative > benchmarking. > > -Jim > > > On Feb 26, 2013, at 4:20 PM, Reed Kotler <rkotler at mips.com> wrote: > > What about benchmarks on other Arm devices? > > On 02/26/2013 02:52 PM, Jim Grosbach wrote: > > Cortex-M0 is a Thumb1 only device. There hasn't been any concerted > effort to tune LLVM's Thumb1 output in quite a long time. Even back then > (2008 or so), the effort was mainly to get it to work acceptably, with > the real performance tuning work being done for Thumb2. I'm not > surprised that an embedded market focussed compiler like IAR is better > tuned for a chip like that. > > -Jim > > On Feb 26, 2013, at 2:11 PM, matic at nimp.co.uk <mailto:matic at nimp.co.uk<matic at nimp.co.uk> > > > wrote: > > Hi, > > > I didn't do any serious benchmarking but so far I never found a case > where LLVM does better than IAR on CortexM0, but I saw a lot of cases > where IAR output is better than LLVM... > > That said I did not use -Os or -Oz, I just used -O3. > > A recurrent situation is that LLVM push/pop one or two extra registers > compared to IAR, I guess it does so in order to comply with a standard > ABI or something but in the world of deeply embedded system, we don't > care of such things 99.99% of the time... > > If you want to see some good code output, take a look at IAR, there is > a free version limited in code size online. > > Cheers, > > Sebastien > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu > <mailto:LLVMdev at cs.uiuc.edu <LLVMdev at cs.uiuc.edu>>http://llvm.cs.uiuc.edu > <http://llvm.cs.uiuc.edu/> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > > > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130227/833eab3d/attachment.html>