Questions tagged [pipelining]

In computing, a pipeline is a set of data processing elements connected in series, where the output of one element is the input of the next one.

In computing, a pipeline is a set of data processing elements connected in series, where the output of one element is the input of the next one. The elements of a pipeline are often executed in parallel or in time-sliced fashion; in that case, some amount of buffer storage is often inserted between elements.

Computer-related pipelines include:

  • Instruction pipelines, such as the classic RISC pipeline, which are used in central processing units (CPUs) to allow overlapping execution of multiple instructions with the same circuitry. The circuitry is usually divided up into stages, including instruction decoding, arithmetic, and register fetching stages, wherein each stage processes one instruction at a time.
  • Graphics pipelines, found in most graphics processing units (GPUs), which consist of multiple arithmetic units, or complete CPUs, that implement the various stages of common rendering operations (perspective projection, window clipping, color and light calculation, rendering, etc.).
  • Software pipelines, where commands can be written where the output of one operation is automatically fed to the next, following operation. The Unix system call pipe is a classic example of this concept, although other operating systems do support pipes as well.
  • HTTP pipelining, where multiple requests are sent without waiting for the result of the first request.

Source: Wikipedia

164 questions
69
votes
1 answer

pipelining vs transaction in redis

When we use a transaction in Redis, it basically pipelines all the commands within the transaction. And when EXEC is fired, then all the commands are executed together, thus always maintaining the atomicity of multiple commands. Isn't this same as…
Manas Saxena
  • 2,171
  • 6
  • 39
  • 58
47
votes
5 answers

what is difference between Superscaling and pipelining?

Well looks too simple a question to be asked but i asked after going through few ppts on both. Both methods increase instruction throughput. And Superscaling almost always makes use of pipelining as well. Superscaling has more than one execution…
Alex Xander
  • 3,903
  • 14
  • 36
  • 43
42
votes
3 answers

What is the difference between HTTP/1.1 pipelining and HTTP/2 multiplexing?

Is it because it requires the responses to be made to client in the order of request that causes the head of line blocking problem in HTTP 1.1? If each request takes exactly an equal amount of time, then there won't be head of line blocking and…
prasun
  • 7,073
  • 9
  • 41
  • 59
25
votes
5 answers

What is the point of delay slots?

So from my understanding of delay slots, they occur when a branch instruction is called and the next instruction following the branch also gets loaded from memory. What is the point of this? Wouldn't you expect the code after a branch not to run in…
James
  • 706
  • 3
  • 8
  • 16
15
votes
1 answer

Check if Ansible pipelining is enabled / working

Ansible has the ability to work faster when pipelining is enabled. However there are some requirements to make this work. Pipelinging must be enabled in ansible.cfg or in the inventory-file and requiretty must be dissabled. I already checked -vvvv,…
Thomas Detemmerman
  • 353
  • 1
  • 3
  • 8
15
votes
1 answer

3-stage MD5 pipeline in VHDL

I am trying to implement a 3-stage MD5 pipeline according to this link. In particular the algoritms on page 31. There is also another document which describes data forwarding. The MD5 algoritm is described in RFC1321. This is done in an FPGA…
jgr
  • 3,914
  • 2
  • 24
  • 28
14
votes
2 answers

Why are CISC processors harder to pipeline? In what sense are some instructions "more complex" than others?

According to "Computer Architecture and Organization" by Miles Murdoca and Vincent Heuring, CISC instructions do not fit pipelined architectures very well. For pipelining to work effectively, each instruction needs to have similarities to…
Celeritas
  • 14,489
  • 36
  • 113
  • 194
13
votes
2 answers

What is the cleanest way to create a non-linear pipeline?

What is the cleanest (simplest, most efficient, shortest, quickest, easiest, most elegant) way to create a non-linear pipeline like this in Bash? I have three commands: mksock, irclogin, and ircpingpong. I want to pipe stdin, irclogin, and…
Aardbei
  • 361
  • 4
  • 12
12
votes
5 answers

What is pipelining? how does it increase the speed of execution?

I believe that no question is silly if it is bugging you. I have this question about pipe-lining? What is pipe-lining? Theory says that : "With pipelining, the CPU begins executing a second instruction before the first instruction is completed.…
Sandeep
  • 18,356
  • 16
  • 68
  • 108
11
votes
1 answer

Can the x86 do FPU operations independently or in parallel?

My teacher claims that the processor can sometimes do FPU operations in parallel. Like this: float a = 3.14; float b = 5.12; float c; float d = 3.02; float e = 2.52; float f; c = a + b; f = e + d; So, as I've heard, the 2 add operations above would…
minecraftplayer1234
  • 2,127
  • 4
  • 27
  • 57
10
votes
1 answer

Node.js http request pipelining

So, I want to use node.js and http request pipelining, but I want to use HTTP only as a transport, nothing else. I am interested in exploiting the request pipelining feature. However, one problem that I am running into is that till a send a response…
dhruvbird
  • 6,061
  • 6
  • 34
  • 39
9
votes
2 answers

Swapping Variables (C++, processor level)

click here to access the chatroom for this question. I would like to swap two variables. and i would like to do it through the pipeline using a Read After Write hazard to my advantage. Pipeline: OPERXXXXXX FetchXXXXX DecodeXXXX ExecuteXXX…
CLASSIFIED
  • 107
  • 5
9
votes
1 answer

F# compilation error: Unexpected type application

In F#, given the following class: type Foo() = member this.Bar<'t> (arg0:string) = ignore() Why does the following compile: let f = new Foo() f.Bar "string" While the following won't compile: let f = new Foo() "string" |> f.Bar
Jim Burger
  • 4,399
  • 1
  • 24
  • 27
8
votes
3 answers

difference between pipelining and redirection in linux

Can anyone tell me the difference? for example: if I have a file a.txt with the following content: a b c what would be the difference between cat a.txt | cat and cat < a.txt It seems to me that they all simulate STDIN, is that correct, or…
user685275
  • 2,097
  • 8
  • 26
  • 32
7
votes
1 answer

Whatever happened to `Observable.transduce` in RxJS v5+?

RxJS v4 used to have an Observable.transduce method which took a transducer. This allowed the use of library-independent transducer operators which had major performance benefits in the…
Kevin Ghadyani
  • 6,829
  • 6
  • 44
  • 62
1
2 3
10 11