search for: 0b10

Displaying 20 results from an estimated 21 matches for "0b10".

Did you mean: 0.10
2019 Jan 28
2
[RFC] Adding thread group semantics to LangRef (motivated by GPUs)
...is what currently happens with DOOM when we try to enable subgroup operations with it. Let's say there are two threads in a wavefront. Then the execution trace mandated by SPIR-V for the first looks like: thread 0 | thread 1 ballot 1 = 0b11 | ballot 1 = 0b11 skipped | ballot 2 = 0b10 ballot 1 = 0b11 | ballot 1 = 0b11 skipped | ballot 2 = 0b10 Now, contrast this with the execution trace that programmers would expect for the second example: thread 0 | thread 1 ballot 1 = 0b11 | ballot 1 = 0b11 ballot 1 = 0b01 | skipped skipped | ballot 2 = 0b10 skipped...
2017 Oct 10
1
[virtio-dev] packed ring layout proposal v3
...> > It has 4 possible values: > > > values 0x1, 0x11 are written by driver values 0x0, 0x10 are written > > > by device > > > > The 0x prefix might add to the confusion here. It is really just two > > bits, no? > > Ouch. Yes I meant 0b. Thanks! 0b00, 0b10 are written by device? I suppose device can only clear high bit, can keep low bit no change. Then the value written by device can be either 0b01 or 0b00, but 0b10 means to set high bit, no? > > > > each time driver writes out a descriptor, it must make sure that the > > > hig...
2017 Oct 10
1
[virtio-dev] packed ring layout proposal v3
...> > It has 4 possible values: > > > values 0x1, 0x11 are written by driver values 0x0, 0x10 are written > > > by device > > > > The 0x prefix might add to the confusion here. It is really just two > > bits, no? > > Ouch. Yes I meant 0b. Thanks! 0b00, 0b10 are written by device? I suppose device can only clear high bit, can keep low bit no change. Then the value written by device can be either 0b01 or 0b00, but 0b10 means to set high bit, no? > > > > each time driver writes out a descriptor, it must make sure that the > > > hig...
2019 Jan 30
3
[RFC] Adding thread group semantics to LangRef (motivated by GPUs)
...appens with DOOM when we try to enable subgroup operations with it. Let's say there are two threads in a wavefront. Then the execution trace mandated by SPIR-V for the first looks like: > > thread 0 | thread 1 > ballot 1 = 0b11 | ballot 1 = 0b11 > skipped | ballot 2 = 0b10 > ballot 1 = 0b11 | ballot 1 = 0b11 > skipped | ballot 2 = 0b10 > > Now, contrast this with the execution trace that programmers would expect for the second example: > > thread 0 | thread 1 > ballot 1 = 0b11 | ballot 1 = 0b11 > ballot 1 = 0b01 | skipped > s...
2019 Jan 31
2
[RFC] Adding thread group semantics to LangRef (motivated by GPUs)
...to enable subgroup operations with it. Let's > say there are two threads in a wavefront. Then the execution trace mandated > by SPIR-V for the first looks like: > > > > thread 0 | thread 1 > > ballot 1 = 0b11 | ballot 1 = 0b11 > > skipped | ballot 2 = 0b10 > > ballot 1 = 0b11 | ballot 1 = 0b11 > > skipped | ballot 2 = 0b10 > > > > Now, contrast this with the execution trace that programmers would > expect for the second example: > > > > thread 0 | thread 1 > > ballot 1 = 0b11 | ballot 1 = 0b1...
2019 Jan 31
3
[RFC] Adding thread group semantics to LangRef (motivated by GPUs)
...to enable subgroup operations with it. Let's > say there are two threads in a wavefront. Then the execution trace mandated > by SPIR-V for the first looks like: > > > > thread 0 | thread 1 > > ballot 1 = 0b11 | ballot 1 = 0b11 > > skipped | ballot 2 = 0b10 > > ballot 1 = 0b11 | ballot 1 = 0b11 > > skipped | ballot 2 = 0b10 > > > > Now, contrast this with the execution trace that programmers would > expect for the second example: > > > > thread 0 | thread 1 > > ballot 1 = 0b11 | ballot 1 = 0b1...
2019 Jan 30
2
[RFC] Adding thread group semantics to LangRef (motivated by GPUs)
...to enable subgroup operations with it. Let's > say there are two threads in a wavefront. Then the execution trace mandated > by SPIR-V for the first looks like: > > > > thread 0 | thread 1 > > ballot 1 = 0b11 | ballot 1 = 0b11 > > skipped | ballot 2 = 0b10 > > ballot 1 = 0b11 | ballot 1 = 0b11 > > skipped | ballot 2 = 0b10 > > > > Now, contrast this with the execution trace that programmers would > expect for the second example: > > > > thread 0 | thread 1 > > ballot 1 = 0b11 | ballot 1 = 0b1...
2019 Feb 01
2
[RFC] Adding thread group semantics to LangRef (motivated by GPUs)
...s with it. Let's say there are two > threads in a wavefront. Then the execution trace mandated by SPIR-V > for the first looks like: > > > > thread 0        | thread 1 > > ballot 1 = 0b11 | ballot 1 = 0b11 > > skipped        | ballot 2 = 0b10 > > ballot 1 = 0b11 | ballot 1 = 0b11 > > skipped        | ballot 2 = 0b10 > > > > Now, contrast this with the execution trace that programmers > would expect for the second example: > > > > thread 0        | thread 1 >...
2018 Jul 10
2
Stuck with instruction in tablegen
...efm" line that generates the "add" instruction pattern: multiclass BinOp8RF<Prefix prefix, bits<3> opcode, string mnemonic, bit compare = 0> { let isCompare = compare, Defs = [A, F], Uses = [A] in { def 8ap : I8 <prefix, {0b10, opcode, 0b110}, mnemonic, "\ta, $src", "", (outs), (ins ptr:$src), [(set A, F, (Z80add_flag A, (i8 (load iPTR:$src))))]>; } } and the parameters:...
2019 Feb 01
2
[RFC] Vector Predication
--- crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68 On Thu, Jan 31, 2019 at 10:22 PM Jacob Lifshay <programmerjake at gmail.com> wrote: > > We're in-progress designing a RISC-V extension (http://lists.libre-riscv.org/pipermail/libre-riscv-dev/2019-January/000433.html) that would have variable-length vectors of short vectors (1 to 4): > <VL x <4 x
2019 Feb 09
1
[RFC] Adding thread group semantics to LangRef (motivated by GPUs)
...re are two > > threads in a wavefront. Then the execution trace mandated by SPIR-V > > for the first looks like: > > > > > > thread 0 | thread 1 > > > ballot 1 = 0b11 | ballot 1 = 0b11 > > > skipped | ballot 2 = 0b10 > > > ballot 1 = 0b11 | ballot 1 = 0b11 > > > skipped | ballot 2 = 0b10 > > > > > > Now, contrast this with the execution trace that programmers > > would expect for the second example: > > > > > > t...
2019 Jan 24
3
[RFC] Adding thread group semantics to LangRef (motivated by GPUs)
I don't see how this would fix the continue vs. nested loop problem I explained earlier. That is, how would this prevent turning: for (...) { ballot(); if (... /* non-uniform */) continue; } into for (...) { do { ballot(); } while (... /* non-uniform */); } and vice versa? Note that there's no duplication going on here, and the single-threaded flow of control is
2017 Sep 25
1
TableGen questions.
...Opcode, op0t, 0b00, IO_MultSrc<op0t, SpecialReg>.outsDefault, IO_MultSrc<op0t, SpecialReg>.insDefault>; ... } multiclass TwoSrcOneDestSpec<bits<5> subOpcode, string opcodeStr> { defm _dds: MultSrc1Spec<subOpcode, 0b10, opcodeStr, SpecialReg>; ... defm _rr: MultSrc1Spec<subOpcode, 0b11, opcodeStr, GPReg>; } defm ADD : TwoSrcOneDestSpec<0b10000, "add">; I currently get the error "Undefined reference:'ADDanonymous_545'" when I try to generate. Any advice would be...
2017 Oct 04
2
[virtio-dev] packed ring layout proposal v3
On Sun, Oct 01, 2017 at 04:08:29AM +0000, Michael S. Tsirkin wrote: >On Thu, Sep 28, 2017 at 09:44:35AM +0000, Liang, Cunming wrote: >> >> Get it now. Please correct me if I missing something. >> >> >> Flags status hints, >> >> - DESC_DRIVER only: driver owns the descriptor w/o available info ready for device to use >> >> - DESC_DRIVER |
2017 Oct 04
2
[virtio-dev] packed ring layout proposal v3
On Sun, Oct 01, 2017 at 04:08:29AM +0000, Michael S. Tsirkin wrote: >On Thu, Sep 28, 2017 at 09:44:35AM +0000, Liang, Cunming wrote: >> >> Get it now. Please correct me if I missing something. >> >> >> Flags status hints, >> >> - DESC_DRIVER only: driver owns the descriptor w/o available info ready for device to use >> >> - DESC_DRIVER |
2016 Jan 06
2
DFAPacketizer, Scheduling and LoadLatency
...o LoadLatency if mayLoad is set to 1. However this doesn't seem to be happening in my case. Here is my load instruction definition: class InstLD<bits<4> op, dag outs, dag ins, string asmstr, list<dag> pattern> : InstEscala<outs, ins, asmstr, pattern> { let optype = 0b10; let opcode = op; } class LOAD<bits<4> subop, string asmstring, list<dag> pattern> : InstLD<subop, (outs GPR:$rD), (ins MEMri:$src), !strconcat(asmstring, "\t$rD, $src"), pattern> { bits<5> rD; bits<21> src; let Inst{25-21} = rD;...
2018 Jul 10
2
Stuck with instruction in tablegen
2015 Nov 17
2
DFAPacketizer, Scheduling and LoadLatency
> In particular, the LoadLatency is used in defaultDefLatency: > > /// Return the default expected latency for a def based on it's opcode. > unsigned TargetInstrInfo::defaultDefLatency( > const MCSchedModel &SchedModel, const MachineInstr *DefMI) const { > if (DefMI->isTransient()) > return 0; > if (DefMI->mayLoad()) > return
2019 Feb 01
3
[RFC] Vector Predication
...but > predication and loads and stores (including strided or scatter/gather) > will operate on 128 bit elements. > > [I just made up "vnreg8" as an alias for the standard "vlmul4" because > "vlmul4,vdiv4" might look confusing. Either way it means to put 0b10 > into bits [1:0] of the vtype CSR specifying that the 32 vector > registers should be ganged into 8 groups each 4x longer than standard > because (I'm assuming) we need more than four vector registers in this > loop, but no more than eight] > Neat! I did not know that about the...
2019 Mar 11
3
IsDead, IsKill
Thanks. I saw the header comments but it wasn’t clear to me what the difference between those concepts is? My slightly vague understanding is IsDef means that the register specified by this operand is set by the machine instruction. So I understand that to mean the MO will override that register? Also things like early clobber, perhaps there is another document that clarifies some of these