Thread (1 message) 1 message, 1 author, 2017-01-15

mmc: core: complete/wait_for_completion performance

From: Stefan Wahren <hidden>
Date: 2017-01-15 21:08:18

Hi J?rg,
J?rg Krause [off-list ref] hat am 15. Januar 2017 um 21:42 geschrieben:


Hi Stefan,

On Tue, 2016-12-27 at 00:03 +0100, Stefan Wahren wrote:
quoted
Hi J?rg,
...
I also rebased an old patch from Shawn Guo [2] with pre_req and
post_req support, tried to call the DMA channel callback from the
interrupt context instead of scheduling the tasklet within the DMA
engine driver and implement CMD23 support [3]. But none of them show
any measurable performance improvement.
I tested the three patches after disabling any debugging options in the
config. There is no performance gain, but the timings have changed.
Please have a look at the attached graphs. The time between complete()
and wait_for_completion() is reduced to 15us whereas the time from
return from wait_for_completion() to return to sdio_readsb() increases
to 23us (from maybe 2us before).
that confirms my results. I think you are searching on the wrong layer. You better step "back" and take a look at the whole transfer instead of single blocks. Maybe there are some bigger delays.

Stefan
J?rg
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help