similar to: [LLVMdev] Using CostModel to estimate machine cycles of each instruction

Displaying 20 results from an estimated 600 matches similar to: "[LLVMdev] Using CostModel to estimate machine cycles of each instruction"

2015 Jan 14
6
[LLVMdev] Instruction Cost
Hi, I'm looking for APIs that compute instruction costs, and noticed several of them. 1. A series of APIs of TargetTransformInfo that compute the cost of instructions of a particular type (e.g. getArithmeticInstrCost and getShuffleCost) 2. TargetTransformInfo::getOperationCost 3. CostModel::getInstructionCost::getInstructionCost in lib/Analysis/CostModel.cpp Only the first one is used
2015 Jan 15
2
[LLVMdev] Instruction Cost
CostModule::getInstructionCost also consults TTI ( http://llvm.org/docs/doxygen/html/CostModel_8cpp_source.html#l00380). No? Jingyue On Wed, Jan 14, 2015 at 4:05 PM, Chandler Carruth <chandlerc at google.com> wrote: > > On Wed, Jan 14, 2015 at 3:54 PM, Jingyue Wu <jingyue at google.com> wrote: > >> I'm looking for APIs that compute instruction costs, and noticed
2013 Feb 06
2
[LLVMdev] CostModelAnalysis for 3.0 release
Hi All, I wanted to do some basic cost estimation of Instruction/BB. There're CostModelAnalysis and CodeMetrics available in 3.1 and 3.2 releases. I've been using 3.0 for a while. I'm wondering whether similar analysis can be done in the old 3.0 release, e.g. back porting the implementation. Thank you! Best, Ryan -------------- next part -------------- An HTML attachment was
2013 Feb 07
0
[LLVMdev] CostModelAnalysis for 3.0 release
Hi Ryan, I think that it would be difficult to back port the CostModel back to LLVM3.0 because it uses the new TargetTransformInfo analysis. I also wanted to mention that only _lowering_ passes (target-specific optimization passes) may use TTI and the cost model. Higher-level canonicalization passes should not use it. Thanks, Nadav On Feb 6, 2013, at 1:26 AM, ryan <stdstack at
2015 Aug 05
2
Fwd: How to use CostModel?
Sorry if double posted... might have sent this to old mailing list address... ---------- Forwarded message ---------- From: Stephen Thomas <stephen.warner.thomas at gmail.com> Date: Wed, Aug 5, 2015 at 10:39 AM Subject: How to use CostModel? To: LLVM Dev <llvmdev at cs.uiuc.edu> Hi, I'm trying to use the built-in CostModel class to estimate the number of machine instructions
2018 Jan 05
2
RFC: [LV] any objections in moving isLegalMasked* check from Legal to CostModel? (Cleaning up LoopVectorizationLegality)
All, I'm trying to refactor LoopVectorize such that it has better conformance to VPlan vision going forward (http://www.llvm.org/docs/Proposals/VectorizationPlan.html). All VP*Recipe class definitions are now moved to VPlan.h, and I have a patch under review to move LoopVectorizationPlanner class out of LoopVectorize.cpp (https://reviews.llvm.org/D41420). Next thing I'm working on is
2018 Jan 05
0
RFC: [LV] any objections in moving isLegalMasked* check from Legal to CostModel? (Cleaning up LoopVectorizationLegality)
> On 5 Jan 2018, at 21:01, Saito, Hideki via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > > All, > > I'm trying to refactor LoopVectorize such that it has better conformance to VPlan vision going forward > (http://www.llvm.org/docs/Proposals/VectorizationPlan.html). All VP*Recipe class definitions are now > moved to VPlan.h, and I have a patch under review
2018 Jan 06
2
RFC: [LV] any objections in moving isLegalMasked* check from Legal to CostModel? (Cleaning up LoopVectorizationLegality)
Amara, >I support this direction Thanks for the support. >but are there actually any real world workloads where gather/scatter scalarisation would be worth it, on any micro-architecture? If we don’t have examples and the compile time cost is non-negligible then I think we’d still like to keep the early >bailouts in some form.’ It's not like I have specific application code in
2018 Jan 07
0
RFC: [LV] any objections in moving isLegalMasked* check from Legal to CostModel? (Cleaning up LoopVectorizationLegality)
On 01/05/2018 06:28 PM, Saito, Hideki wrote: > Amara, > >> I support this direction > Thanks for the support. > >> but are there actually any real world workloads where gather/scatter scalarisation would be worth it, on any micro-architecture? If we don’t have examples and the compile time cost is non-negligible then I think we’d still like to keep the early >bailouts in
2018 Jan 09
1
RFC: [LV] any objections in moving isLegalMasked* check from Legal to CostModel? (Cleaning up LoopVectorizationLegality)
Thanks, Hal. I plan to post a patch w/o HW Legality early bailout first. That should enable further discussion on where the initial very high cost for "illegal masked load/store/gather/scatter" should be coming from --- like should LoopVectorize provide it? Or should it be provided by TTI? I prefer the latter (TTI) but the first revision of the patch will intentionally do the former
2006 Dec 22
5
[LLVMdev] in Cygwin problems
How to solve this problem? $ make make[1]: Entering directory `/tmp/llvm3/llvm/build/libiberty' make[2]: Entering directory `/tmp/llvm3/llvm/build/libiberty/testsuite' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/tmp/llvm3/llvm/build/libiberty/testsuite' make[1]: Leaving directory `/tmp/llvm3/llvm/build/libiberty' make[1]: Entering directory
2006 Dec 23
1
[LLVMdev] in Cygwin problems
Problem 2: Configure: ../src/configure --prefix=/tmp/llvm/install --disable-threads --disable-nls --disable-shared --enable-languages=c,c++ --disable-c-mbchar --program-prefix=llvm- $ make make[1]: Entering directory `/tmp/llvm3/llvm/build/libiberty' make[2]: Entering directory `/tmp/llvm3/llvm/build/libiberty/testsuite' make[2]: Nothing to be done for `all'. make[2]: Leaving
2006 Dec 22
0
[LLVMdev] in Cygwin problems
On Sat, 23 Dec 2006, Roman wrote: > How to solve this problem? Java isn't supported. Use --enable-languages=c,c++ -Chris > $ make > make[1]: Entering directory `/tmp/llvm3/llvm/build/libiberty' > make[2]: Entering directory `/tmp/llvm3/llvm/build/libiberty/testsuite' > make[2]: Nothing to be done for `all'. > make[2]: Leaving directory
2005 Mar 21
1
[LLVMdev] LLVM CVS Build Broken + one line fix
The current LLVM CVS HEAD does not build for me (RedHat 9). The issue is a one line fix. The file "include/llvm/ADT/EquivalenceClasses.h" needs to include <stdint.h> in order to get the typedef for "intptr_t." If anyone wants me to make a patch for this, let me know. The build error that this solves is: llvm[3]: Compiling DataStructure.cpp for Debug build In file
2012 Jul 18
2
[LLVMdev] Is IR VM does make sense since llvm3 ?
Hi llvm list ! Everything is in the question. I've read this discussion on the mailinglist * [LLVMdev] LLVM IR is a compiler IR<https://groups.google.com/d/topic/llvm-dev/N3r_a1Vbrog/discussion> . * But since llvm3 and type system rewrite, is it a good idea to rethink about a VM wich could run the IR bytecode directly? llvm has differents bytecode from low level, to more hight level...
2016 Jun 02
4
[GSoC 2016] Parameters of a target architecture
Dear LLVM contributors, I work on the "Improvement of vectorization process in Polly". At the moment I'm trying to implement tiling, interchanging and unrolling of specific loops based on the following algorithm for the analytical modeling [1]. It requires information about the following parameters of a target architecture: 1. Size of double-precision floating-point number. 2.
2015 Jan 20
2
[LLVMdev] Instruction Cost
Thanks all for replying! I'll try the CostModel class first. Jingyue On Thu, Jan 15, 2015 at 3:47 AM, Jonas Wagner <jonas.wagner at epfl.ch> wrote: > Hi, > > 3. CostModel::getInstructionCost::getInstructionCost in >> lib/Analysis/CostModel.cpp >> > > I've been using the CostModel class in a project, and it has worked quite > well. I don't have
2014 Aug 19
2
[LLVMdev] Does LLVM have Instruction Performance Model?
Hi, Does LLVM define some performance model for each type of instructions? I mean the cost or latency for executing each type of instruction. Thanks a lot! Best, Linhai
2020 Nov 05
4
[Proposal] Introducing the concept of invalid costs to the IR cost model
Hi, I'd like to propose a change to our cost interfaces so that instead of returning an unsigned value from functions like getInstructionCost, getUserCost, etc., we instead return a wrapper class that encodes an integer cost along with extra state. The extra state can be used to express: 1. A cost as infinitely expensive in order to prevent certain optimisations taking place. For example,
2014 Feb 15
3
[LLVMdev] cmake and make check?
On 02/13/2014 11:35 AM, Tim Northover wrote: > Hi Reed, > >> but then many tests fail when i do a "make check" > > That's not normal (all tests pass for me on Linux and OS X). Is this > on your build machine, or a MIPS board with some odd > cross-compilation? The latter is more likely to have weird CMake > issues (I know AArch64 does if you're not