search for: optimisations

Displaying 20 results from an estimated 2776 matches for "optimisations".

2017 Sep 22
5
Effectiveness of llvm optimisation passes
Hi all, I am trying to understand the effectiveness of various llvm optimisations when a language targets llvm (or C) as its backend. The following is my approach (please correct me if I did anything wrong): I am trying to explicitly control the optimisations passes in llvm. I disable optimisation in clang, but instead emit unoptimized llvm IR, and use opt to optimise that....
2017 Sep 22
0
Effectiveness of llvm optimisation passes
...ble to optimize them later. You should also add "-Xclang -disable-O0-optnone" to your command line. ~Craig On Thu, Sep 21, 2017 at 10:04 PM, Yi Lin via llvm-dev < llvm-dev at lists.llvm.org> wrote: > Hi all, > > I am trying to understand the effectiveness of various llvm optimisations > when a language targets llvm (or C) as its backend. > > The following is my approach (please correct me if I did anything wrong): > > I am trying to explicitly control the optimisations passes in llvm. I > disable optimisation in clang, but instead emit unoptimized llvm IR, and...
2007 Jan 04
1
problem with function 'optimise' (PR#9438)
Full_Name: Karsten Krug Version: 2.4.0 OS: Open Suse 10.0, Windows XP Submission from: (NULL) (88.134.13.50) I found a problem in the 'optimise' function for one dimensional optimisation. Example 1: Try to find a maximum of the function below with the use of 'optimise' in the interval [0,0.5]. The function follows a parabola and has two local maxima located at the margins of
2017 Jun 24
3
Definitive list of optimisations at each optimisation level
I am often asked what optimisations "our" compiler performs at each level. But "our" compiler is actually CLang/LLVM which we have retargeted to our proprietary target. Most of the work we do is in maintaining our target specific backend. Certainly there are optimisations that we do to take best advantage of o...
2017 Sep 22
1
Effectiveness of llvm optimisation passes
I noticed that there is a '-run-pass' argument for llc. I am wondering if I can do a similar approach with machine level optimisations/passes for llc. Are those passes optional (so I can turn them off)? And how can I get MIR format as llc expects with '-run-pass'? Thanks a lot. Cheers, Yi On 22/9/17 15:10, Craig Topper wrote: > Have -O0 on your clang command line causes all functions to get marked > with an ...
2017 Jun 24
2
Definitive list of optimisations at each optimisation level
...u can probably hope to get will be obtained by > passing -mllvm -debug-pass=Structure to a clang invocation. > > -- Sean Silva > > On Jun 24, 2017 7:10 AM, "Martin J. O'Riordan via llvm-dev" < > llvm-dev at lists.llvm.org> wrote: > > I am often asked what optimisations “our” compiler performs at each > level. But “our” compiler is actually CLang/LLVM which we have retargeted > to our proprietary target. > > > > Most of the work we do is in maintaining our target specific backend. > Certainly there are optimisations that we do to take best ad...
2017 Jun 29
3
Definitive list of optimisations at each optimisation level
...to:ryta1203 at gmail.com] > *Sent:* Sunday, June 25, 2017 2:59 AM > *To:* Sean Silva <chisophugis at gmail.com> > *Cc:* Martin J. O'Riordan <martin.oriordan at movidius.com>; llvm-dev < > llvm-dev at lists.llvm.org> > *Subject:* Re: [llvm-dev] Definitive list of optimisations at each > optimisation level > > > > I agree, it's much clearer, it just takes runs at multiple opt levels and > therefore I don't find it to be a "one stop shop". > > > > On Jun 24, 2017 8:44 PM, "Sean Silva" <chisophugis at gmail.com&gt...
2009 Feb 05
2
Non-linear optimisation
Hi there, I have a piece of Matlab code I use to optimise a trding strategy. If there are any Matlab/R specialists out there, I would appreciate your help in doing the exact same optimisation in R. I suspect I would use nlm() in R but am not sure where to define my constraints. I have attached my Matlab code below for reference. Many thanks. Constraints function [c,ceq]=TriskellConstraints(X)
2017 Jun 25
2
Definitive list of optimisations at each optimisation level
...be obtained by >> passing -mllvm -debug-pass=Structure to a clang invocation. >> >> -- Sean Silva >> >> On Jun 24, 2017 7:10 AM, "Martin J. O'Riordan via llvm-dev" < >> llvm-dev at lists.llvm.org> wrote: >> >> I am often asked what optimisations “our” compiler performs at each >> level. But “our” compiler is actually CLang/LLVM which we have retargeted >> to our proprietary target. >> >> >> >> Most of the work we do is in maintaining our target specific backend. >> Certainly there are optimisation...
2017 Sep 29
2
Change in optimisation with UB in mind
With LLVM v5.0, I found failures in some of the 'gcc.c-torture/execute' tests due to a change in the optimisation where undefined behaviour is involved. The tests that fail are the '20040409-[123].c' tests. The underlying failure is due to the optimisation of the following: int test2(int x) { return x + INT_MIN; } from using an ADD instruction to using an OR instruction.
2017 Oct 03
2
Change in optimisation with UB in mind
Hi Sanjoy, Yes these are C tests (from 'gcc.c-torture/execute'), and as I indicated in my original message, the tests are not valid because the behaviour is undefined. However, it was while investigating these new failures in these tests that I realised that this optimisation existed. The optimisation itself is perfectly valid, but it does mean that integer underflow will no longer be
2016 May 10
2
How to extend alias analysis to enable further optimisations?
...nalysis checks that accesses performed before the function call, do not target the same location as accesses performed after the call (hence, the variables accessed before and after the call do not alias). We want to integrate this analysis within the existing analyses, such that standard compiler optimisations can use this info. Do you suggest that we change the getModRefInfo() or there is a better way to expose the no-aliasing information to the optimisations? If getModRefInfo() is the way to go, can you please indicate how to start? Where can I find documentation about the way getModRefInfo() works and...
2008 Aug 24
2
speex RAM optimising
Greetings to All! Now I am trying to run speex on TI DSP... I need only coder+decoder+AEC. Bitrate 8000bps. Building with floating point support. What can i do, to reduce RAM consumption? I mean very serious RAM optimisations. Deleting not used structure fields, etc... May be I can do something with alloc... Help me to determine that it is possible to throw out. What is best result(in RAM optimisation)? Also i am going to use TI optimised FFT.
2014 May 23
4
[LLVMdev] Selectively Jitting using MCJIT
> As far as I know, ObjectFile is either COFF, ELF or MachO format, > statically compiled. But the pass manager for applying optimisation > passes works only on llvm-ir. I would not need to apply optimisations on the parts of the program in the object file. These are meant to be optimised beforehand. The only parts I want to run passes on are specific function that I know beforehand. > What you can do is to isolate the function you want to jit by > extracting it to a new module. Load this...
2020 Mar 03
4
[RFC] Cheaper indirect calls via trampolines
Taking the address of a function inhibits optimisations for that function. Essentially any ABI changes are unavailable if we can't adjust the call site to match. The case of interest here is when a given function is called directly and indirectly, and we don't want the latter to impose a cost on the former. One approach to avoid the ABI constra...
2010 Jul 16
2
[LLVMdev] How to visualise Clang optimisation phases
When I'm trying to understand how or why the back end does something I've found the -view-* options to llc to be useful. It's not ideal, because "clang" doesn't take those options, so I have to invoke first "clang" and then "llc", and sometimes that combination gives different final code from invoking just "clang", but usually I can construct
2013 Jul 18
1
Building with debug symbols and different optimisation levels
Hello, I would like to build samba at different optimisation levels with debug symbols, in order to test a static analysis tool I have developed. I have found the configure option "--enable-developer", which I presume enables debug symbols and sets optimisation to O0, however I would also like to be able to enable debug symbols and set the optimisation level to O2. I cannot find a way
2010 Jun 04
0
[LLVMdev] Speculative phi elimination at the top of a loop?
...te: > I am working on heavily optimising unusually static C++ code, and have encountered a situation where I basically want an optimiser that would speculatively unroll a loop to see if the first round of the loop could be optimised further.  (I happen to know that it is possible.)  The previous optimisations that produce the loop in the first place already do a magical job (relying heavily on constant propagation), transforming cross-class tail recursion into the loop that I am now addressing. Hence, there is probably little than can be done in the previous optimisations. > > So, has anyone worke...
2008 Feb 27
2
[LLVMdev] Passing parameters to LLVM optimisation passes
I'm fairly new to LLVM, and am writing an optimisation pass to be run by 'opt'. However, i'd like this pass to be parameterisable; as such i'd like to be able to pass an option to it (preferably via the command line to 'opt'). e.g. so i can do something like this "opt -load mypass.so -MyPass=MyPassOption < inputfile.bc ..." (for example one thing I would
2012 Aug 10
3
CentOS 6 kvm disk write performance
...figures for the hosts show that the CentOS 6 server is faster: 54 CentOS 5 Host 50 CentOS 5 Host 69 CentOS 6 host 70 CentOS 6 host Figures for a CentOS 6 guest running on the CentOS 5 host show that the performance hit is less than 50%: 30 CentOS 6 guest on CentOS 5 host with no optimisations 27 CentOS 6 guest on CentOS 5 host with no optimisations 32 CentOS 6 guest on CentOS 5 host with no optimisations Here are the figures a CentOS 6 guest running on the CentOS 6 host with various optimisations. Even with these optimisations, performance doesn't come close to the un-opti...