Pekka Jääskeläinen
2009-Nov-21 21:15 UTC
[LLVMdev] [PATCH] increase the max number of physical registers
Hello, Attached is a trivial patch to increase the max number of physical registers in LLVM from 1024 to 16384. In our TCE toolset we allow the designer to choose the number of registers in the designed TTA processors freely, and recently while experimenting with using TTA for a GPU design we have bumped into this limit several times. What has made matters a bit worse for us is that we need to reserve two reg indices for each register so they can be used both for integer and floating point computation, thus the current limit is 512 registers and the patch lifts it to 8K which should be enough for a while. The patch applies cleanly to LLVM 2.5, 2.6 and trunk. 'make check' passes in trunk with this patch. Best regards, -- Pekka Jääskeläinen http://tce.cs.tut.fi -------------- next part -------------- A non-text attachment was scrubbed... Name: llvm-more-phys-regs.patch Type: text/x-patch Size: 749 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20091121/1973bce6/attachment.bin>
Anton Korobeynikov
2009-Nov-21 21:49 UTC
[LLVMdev] [PATCH] increase the max number of physical registers
Hello, Pekka>Attached is a trivial patch to increase the max number of physical >registers in LLVM from 1024 to 16384.Just random thought - could this be a configure-time option? -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University
Pekka Jääskeläinen
2009-Nov-21 21:54 UTC
[LLVMdev] [PATCH] increase the max number of physical registers
Anton Korobeynikov wrote:>> Attached is a trivial patch to increase the max number of physical >> registers in LLVM from 1024 to 16384. > Just random thought - could this be a configure-time option?I'd say that if there is no strong reason (I have no clue if there is) to keep the number lower, I think the configure option just adds clutter to the configure script. -- Pekka Jääskeläinen Department of Computer Systems Tampere University of Technology, Finland http://tce.cs.tut.fi
Chris Lattner
2009-Nov-22 13:35 UTC
[LLVMdev] [PATCH] increase the max number of physical registers
On Nov 21, 2009, at 1:15 PM, Pekka Jääskeläinen wrote:> Hello, > > Attached is a trivial patch to increase the max number of physical > registers in LLVM from 1024 to 16384. > > In our TCE toolset we allow the designer to choose the number of registers in the designed TTA processors freely, and recently > while experimenting with using TTA for a GPU design we have > bumped into this limit several times. > > What has made matters a bit worse for us is that we need to > reserve two reg indices for each register so they can be used > both for integer and floating point computation, thus the > current limit is 512 registers and the patch lifts it to 8K > which should be enough for a while. > > The patch applies cleanly to LLVM 2.5, 2.6 and trunk. > 'make check' passes in trunk with this patch.This is fine to me in principle, but please make sure this doesn't impact compile time or memory usage of llc somehow. -Chris
Pekka Jääskeläinen
2009-Nov-22 22:08 UTC
[LLVMdev] [PATCH] increase the max number of physical registers
Hi, Chris Lattner wrote:> This is fine to me in principle, but please make sure this doesn't > impact compile time or memory usage of llc somehow.OK. Any recommended way to do this? Is there some nice way to benchmark speed + memory consumption of llc in LLVM testing infra at the moment or should I just use 'top' to the inspect memory consumption and 'time' for speed measurements with a code generation from a big bitcode? -- Pekka Jääskeläinen Department of Computer Systems Tampere University of Technology, Finland http://tce.cs.tut.fi
Pekka Jääskeläinen
2009-Dec-07 19:02 UTC
[LLVMdev] [PATCH] increase the max number of physical registers
Hello, Can someone please commit this patch? Thanks. On 11/21/2009 11:15 PM, Pekka Jääskeläinen wrote:> Hello, > > Attached is a trivial patch to increase the max number of physical > registers in LLVM from 1024 to 16384. > > In our TCE toolset we allow the designer to choose the number of > registers in the designed TTA processors freely, and recently > while experimenting with using TTA for a GPU design we have > bumped into this limit several times. > > What has made matters a bit worse for us is that we need to > reserve two reg indices for each register so they can be used > both for integer and floating point computation, thus the > current limit is 512 registers and the patch lifts it to 8K > which should be enough for a while. > > The patch applies cleanly to LLVM 2.5, 2.6 and trunk. > 'make check' passes in trunk with this patch. > > Best regards, >-- Pekka
Pekka Jääskeläinen
2009-Dec-07 19:15 UTC
[LLVMdev] [PATCH] increase the max number of physical registers
Here's the actual patch, sorry ;) On 12/07/2009 09:02 PM, Pekka Jääskeläinen wrote:> Hello, > > Can someone please commit this patch? > > Thanks. > > On 11/21/2009 11:15 PM, Pekka Jääskeläinen wrote: >> Hello, >> >> Attached is a trivial patch to increase the max number of physical >> registers in LLVM from 1024 to 16384. >> >> In our TCE toolset we allow the designer to choose the number of >> registers in the designed TTA processors freely, and recently >> while experimenting with using TTA for a GPU design we have >> bumped into this limit several times. >> >> What has made matters a bit worse for us is that we need to >> reserve two reg indices for each register so they can be used >> both for integer and floating point computation, thus the >> current limit is 512 registers and the patch lifts it to 8K >> which should be enough for a while. >> >> The patch applies cleanly to LLVM 2.5, 2.6 and trunk. >> 'make check' passes in trunk with this patch. >> >> Best regards, >> > >-- Pekka -------------- next part -------------- A non-text attachment was scrubbed... Name: llvm-more-phys-regs.patch Type: text/x-patch Size: 749 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20091207/d2a16b00/attachment.bin>
Maybe Matching Threads
- [LLVMdev] [PATCH] increase the max number of physical registers
- [LLVMdev] [PATCH] increase the max number of physical registers
- [LLVMdev] [PATCH] increase the max number of physical registers
- [LLVMdev] allocating registers less "sparingly"
- [LLVMdev] Custom Static Scheduling