29.01.2015 Views

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

Embedded Software for SoC - Grupo de Mecatrônica EESC/USP

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

478 Chapter 34<br />

where is the total IPC (read and write) energy <strong>for</strong> communicating x<br />

amount of data, is the number of times the IPC between the two processes<br />

is invoked, and is the number of times each of the processes is activated.<br />

3.5.3. Intra-process computation migration<br />

This trans<strong>for</strong>mation involves moving some of the co<strong>de</strong> in a process so that<br />

two IPC writes (or sends) can be replaced by a single write (or send). It<br />

exploits the capability of IPC system calls that can accept multiple messages<br />

(with potentially different <strong>de</strong>stinations), e.g., the msg_snd() function in Linux.<br />

It is useful in reducing the constant overhead involved in invoking the IPC<br />

function. It is illustrated in Figure 34-6.<br />

The energy change due to this trans<strong>for</strong>mation is estimated as:<br />

where refers to IPC write energy, is the number of times one of<br />

the IPC writes is invoked, and x and y represent the average amount of data<br />

transferred per call through the first and second IPC writes, respectively. Note<br />

that this trans<strong>for</strong>mation enables further IPC merging in some cases.<br />

3.5.4. Temporal cohesion driven IPC merging<br />

This trans<strong>for</strong>mation involves merging of two IPC’s that are driven by the same<br />

event. This move is illustrated in Figure 34-7.<br />

The energy change due to this trans<strong>for</strong>mation is estimated as:<br />

where is the IPC read energy <strong>for</strong> x amount of data and is the<br />

number of times one of the IPC reads is invoked.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!