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
7
votes
1 answer

Out-of-order instruction execution: is commit order preserved?

On the one hand, Wikipedia writes about the steps of the out-of-order execution: Instruction fetch. Instruction dispatch to an instruction queue (also called instruction buffer or reservation stations). The instruction waits in the queue until its…
7
votes
5 answers

Why increased pipeline depth does not always mean increased throughput?

This is perhaps more of a discussion question, but I thought stackoverflow could be the right place to ask it. I am studying the concept of instruction pipelining. I have been taught that a pipeline's instruction throughput is increased once the…
user246392
  • 2,661
  • 11
  • 54
  • 96
7
votes
3 answers

Why does Visual Studio increment the loop pointer before dereferencing it?

I checked out Visual Studio 2012's assembly output from the following SIMD code: float *end = arr + sz; float *b = other.arr; for (float *a = arr; a < end; a += 4, b += 4) { __m128 ax = _mm_load_ps(a); __m128 bx =…
japreiss
  • 11,111
  • 2
  • 40
  • 77
7
votes
1 answer

redis sharding, pipelining, and round-trips

Suppose in your web application you need to do a number of redis calls to render a page, like, getting a bunch of user hashes. To speed this up you could wrap up your redis commands in a MULTI/EXEC section, thus using pipelining, so that you avoid…
nicolagi
  • 1,289
  • 13
  • 18
6
votes
2 answers

Does S3 support HTTP pipelining?

I have thousands of small files (about 1 KB) to upload to S3 every minutes. If I upload every file in the loop "send my HTTP request - wait S3's HTTP response - send next request - wait next response ...", it cost lots of time because I have to wait…
Celebi
  • 1,280
  • 3
  • 16
  • 25
6
votes
3 answers

HTTP 1.1 Pipelining

I have to implement an HTTP client in Java and for my needs it seems that the most efficient way to do it, is implement HTTP pipeline (as per RFC2616). As an aside, I want to pipeline POSTs. (Also I am not talking about multiplexing. I am talking…
Cratylus
  • 52,998
  • 69
  • 209
  • 339
6
votes
1 answer

Pipelining between two SEPARATE Powershell processes

Let's say I have two PowerShell programs running: Producer.ps1 and Consumer.ps1. Is there any way to establish a client-server relationship between the two .ps1 files I have? Specifically, Producer.ps1 outputs a PSObject containing login info. Is…
JayFresco
  • 295
  • 1
  • 3
  • 11
6
votes
6 answers

F# pipeline placeholder?

I have googlet a bit, and I haven't found what I was looking for. As expected. My question is, is it possible to define a F# pipeline placeholder? What I want is something like _ in the following: let func a b c = 2*a + 3*b + c 2 |> func 5 _…
torbonde
  • 2,459
  • 1
  • 15
  • 17
5
votes
3 answers

Luigi Pipelining : No module named pwd in Windows

I am trying to execute the tutorial given in https://marcobonzanini.com/2015/10/24/building-data-pipelines-with-python-and-luigi/. I am able to run the program on its own using local scheduler, giving me: Scheduled 2 tasks of which: * 2 ran…
ALEX MATHEW
  • 251
  • 1
  • 5
  • 13
5
votes
2 answers

Spring Data Redis: Redis Pipeline returning always null

I would like to retrieve multiple hashmap values with only specified fields. So I opted-in to Redis pipeline. While testing the below code, i see redisResponse1 is always null, where as redisResponse2 has value. …
Kanagavelu Sugumar
  • 18,766
  • 20
  • 94
  • 101
5
votes
2 answers

Understanding bubble vs stall vs repeated decode/fetch

I'm really confused on the difference between bubbles, stalls, and repeated decoding/fetching. My text is the Patterson text, 3rd edition. Example 1: add $3, $4, $6 sub $5, $3, $2 lw $7, 100($5) add $8, $7, $2 Solution: (Using an image because it…
5
votes
1 answer

Persistent cURL connections across multiple page loads in PHP

On a page load, I'm consistently requesting data from the same API. Is there any way to keep a cURL connection alive across multiple page loads to reduce handshake time? I know you can make multiple cURL requests with keep-alive headers on the…
4
votes
1 answer

Use HttpCore + HttpNIO from Apache for HTTP Pipelining on Android?

Android uses Apache's HTTP Components library to perform HTTP requests and exposes an API that doesn't support asynchronous requests or pipelining. We're writing an app that would benefit from pipelining so we are using Hotpotato to perform those…
magneticMonster
  • 2,373
  • 6
  • 30
  • 46
4
votes
1 answer

Round Trip Time Http on non persistent, persistent, persistent with pipelining

networking is my final course in my Masters degree. I do have a question regarding how to calculate Round Trip Time of http on non persistent, persistent and persistent with pipelining. After spending countless hours reading regarding the issue,…
James.D
  • 41
  • 1
  • 1
  • 3
4
votes
2 answers

MIPS Structural Hazard

I'm trying to learn about MIPS pipe-lining and the hazards associated to them. I'm having trouble picturing what a structural hazard looks like in MIPS instructions. I've read that it is a situation where two (or more) instructions require the use…
1
2
3
10 11