Displaying 20 results from an estimated 2000 matches similar to: "[LLVMdev] "Anti" scheduling with OoO cores?"
2017 Apr 03
2
Scheduler: modelling long register reservations?
Hello,
My out-of-tree target features some high latency instructions (let's call them FXLV). When an FXLV issues, it reserves its destination register and execution continues; if a subsequent instruction attempts to read or write that register, the pipline will stall until the FXLV completes. I have attempted to encode this constraint in the machine scheduler (excerpt at bottom of email).
2013 Dec 23
2
[LLVMdev] [RFC] Iterrative compilation framework for Clang/LLVM
On Dec 16, 2013, at 4:26 PM, Hal Finkel <hfinkel at anl.gov> wrote:
>> At the end of each iteration, quality of generated code is estimated
>> by
>> executing newly introduced target dependent pass. Based on results
>> path for
>> the following iteration is calculated. At the moment, this has been
>> proved
>> for MIPS only and it is based on code
2009 Dec 18
2
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Friday 18 December 2009 13:56, David Greene wrote:
> On Friday 18 December 2009 13:53, David Greene wrote:
> > > > + void releaseStream() {
> > > > + // Delete the stream if needed. Otherwise, transfer the buffer
> > > > + // settings from this raw_ostream back to the underlying
> > > > stream. + if (!TheStream)
> > >
2009 Dec 17
2
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Wednesday 16 December 2009 13:35, David Greene wrote:
> > Please make BufferSize an 'unsigned' and default it to 8192. Please use
> > PRESERVE_STREAM instead of 'false'.
Here's an updated version of the circular buffer. Ok to check in?
-Dave
Index: include/llvm/Support/circular_raw_ostream.h
2009 Dec 18
2
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Friday 18 December 2009 17:27, David Greene wrote:
> > Here's the updated patch.
>
> Well, that didn't go through right. Here it is again.
Argh! Stupid bug fixed. :)
Index: include/llvm/Support/circular_raw_ostream.h
===================================================================
--- include/llvm/Support/circular_raw_ostream.h (revision 0)
+++
2009 Dec 18
4
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Friday 18 December 2009 12:28, Chris Lattner wrote:
> This is looking a lot better, here are some more comments:
> > + /// current_pos - Return the current position within the stream,
> > + /// not counting the bytes currently in the buffer.
> > + virtual uint64_t current_pos() {
>
> I didn't notice this earlier, but is there any reason for current_pos
2009 Dec 19
2
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Friday 18 December 2009 19:47, Chris Lattner wrote:
> On Dec 18, 2009, at 3:46 PM, David Greene wrote:
> > + /// circular_raw_ostream - A raw_ostream that saves its output in a
> > + /// circular buffer.
>
> A better description would be "which *can* save its data to a circular
> buffer, or can pass it through directly to an underlying stream if
> specified
2009 Dec 18
0
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Friday 18 December 2009 13:53, David Greene wrote:
> > > + void releaseStream() {
> > > + // Delete the stream if needed. Otherwise, transfer the buffer
> > > + // settings from this raw_ostream back to the underlying stream.
> > > + if (!TheStream)
> > > + return;
> > > + if (DeleteStream)
> > > +
2009 Dec 16
2
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Dec 16, 2009, at 8:12 AM, David Greene wrote:
>>>
>>> What, specifically, do you want reviewed before I start checking in?
>>> I'll be happy to prepare a patch that shows just that.
>>
>> I want a patch that does one thing (e.g. implements dbgs(),
>
> Ok, let's start with that. Here's the patch to add the circular raw_ostream.
This
2009 Dec 16
0
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Wednesday 16 December 2009 13:19, Chris Lattner wrote:
> + int BufferSize;
> + std::vector<char> BufferArray;
> + bool DelayOutput;
> + std::vector<char>::iterator Cur;
>
> Please doxygenify these.
Ok.
> Instead of using a std::vector for BufferArray, please just new[] an array
> since it is fixed size.
Ok.
> Why is BufferSize needed with
2009 Dec 18
0
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Friday 18 December 2009 17:22, David Greene wrote:
> On Friday 18 December 2009 13:56, David Greene wrote:
> > On Friday 18 December 2009 13:53, David Greene wrote:
> > > > > + void releaseStream() {
> > > > > + // Delete the stream if needed. Otherwise, transfer the
> > > > > buffer + // settings from this raw_ostream back to
2009 Dec 18
0
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Dec 17, 2009, at 3:41 PM, David Greene wrote:
> On Wednesday 16 December 2009 13:35, David Greene wrote:
>
>>> Please make BufferSize an 'unsigned' and default it to 8192. Please use
>>> PRESERVE_STREAM instead of 'false'.
>
> Here's an updated version of the circular buffer. Ok to check in?
This is looking a lot better, here are some more
2009 Dec 19
0
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Dec 18, 2009, at 3:46 PM, David Greene wrote:
>
> + /// circular_raw_ostream - A raw_ostream that saves its output in a
> + /// circular buffer.
A better description would be "which *can* save its data to a circular
buffer, or can pass it through directly to an underlying stream if
specified with a buffer of zero."
When it is buffering, what causes it to flush? Your
2018 May 09
2
[MachineScheduler] Question about IssueWidth / NumMicroOps
Hi,
I would like to ask what IssueWidth and NumMicroOps refer to in
MachineScheduler, just to be 100% sure what the intent is.
Are we modeling the decoder phase or the execution stage?
Background:
First of all, there seems to be different meanings of "issue" depending
on which platform you're on:
2013 Jul 22
2
[LLVMdev] Questions about MachineScheduler
Hi,
I'm working on defining a SchedMachineModel for the Southern Islands
family of GPUs, and I have two questions related to the
MachineScheduler.
1. I have a resource that can process 15 instructions at the same time.
In the TableGen definitions, should I do:
def HWVMEM : ProcResource<15>;
or
let BufferSize = 15 in {
def HWVMEM : ProcResource<1>;
}
2. Southern Islands has
2009 Dec 21
3
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Dec 21, 2009, at 8:05 AM, David Greene wrote:
> On Friday 18 December 2009 20:20, David Greene wrote:
>
>> I wanted something to signify in the output where the debug dump starts.
>> That's for that case where some stuff might still get output through
>> errs(). I anticipate that while I'll change most uses of errs() to dbgs(),
>> we probably don't
2009 Dec 21
0
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Friday 18 December 2009 20:20, David Greene wrote:
> I wanted something to signify in the output where the debug dump starts.
> That's for that case where some stuff might still get output through
> errs(). I anticipate that while I'll change most uses of errs() to dbgs(),
> we probably don't want to change all of them.
>
> I agree the naming here is poor.
2014 Jan 28
3
[LLVMdev] New machine model questions
From: Andrew Trick [mailto:atrick at apple.com]
Sent: 24 January 2014 21:52
To: Daniel Sanders
Cc: LLVM Developers Mailing List (llvmdev at cs.uiuc.edu)
Subject: Re: New machine model questions
On Jan 24, 2014, at 2:21 AM, Daniel Sanders <Daniel.Sanders at imgtec.com<mailto:Daniel.Sanders at imgtec.com>> wrote:
Hi Andrew,
I seem to be making good progress on the P5600 scheduler
2009 Dec 16
0
[LLVMdev] [PATCH] Circular Buffered Debug Stream
On Tuesday 15 December 2009 23:02, Chris Lattner wrote:
> On Dec 15, 2009, at 6:33 PM, David Greene wrote:
> > On Tuesday 15 December 2009 20:11, Chris Lattner wrote:
> >> Please send complete and minimal patches to avoid wasting reviewer's
> >> time,
> >
> > What do you want, complete or minimal? I don't want to pre-send 50
> > or so patches
2013 Jul 23
0
[LLVMdev] Questions about MachineScheduler
On Jul 22, 2013, at 11:50 AM, Tom Stellard <tom at stellard.net> wrote:
> Hi,
>
> I'm working on defining a SchedMachineModel for the Southern Islands
> family of GPUs, and I have two questions related to the
> MachineScheduler.
>
> 1. I have a resource that can process 15 instructions at the same time.
> In the TableGen definitions, should I do:
>
> def