public inbox for linuxppc-dev@ozlabs.org 
 help / color / mirror / Atom feed
From: "Ira W. Snyder" <iws@ovro•caltech.edu>
To: Dudhat Dipen-B09055 <B09055@freescale•com>
Cc: herbert@gondor•apana.org.au,
	Suresh Vishnu-B05022 <B05022@freescale•com>,
	Tabi Timur-B04825 <B04825@freescale•com>,
	linuxppc-dev@ozlabs•org, dan.j.williams@intel•com,
	Gupta Maneesh-B18878 <B18878@freescale•com>,
	Li Yang-R58472 <R58472@freescale•com>
Subject: Re: fsldma: cleanup driver and fix async_tx compatibility
Date: Mon, 11 Jan 2010 08:29:00 -0800	[thread overview]
Message-ID: <20100111162900.GA10110@ovro.caltech.edu> (raw)
In-Reply-To: <0949C49693EF1A47A54B0F0113CDB4A6076CEE@zin33exm23.fsl.freescale.net>

On Mon, Jan 11, 2010 at 11:17:04AM +0530, Dudhat Dipen-B09055 wrote:
> 
> Hi Ira,
> 
> I have tested your patches with async DMA memcpy support. Though I
> haven't captured the improvement figures.
> It works fine for RAID5 memcpy offload as interrupts are coming for
> separate DMA channels while I have ran IOZONE onto RAID partition.
> 

Excellent, thanks for running these tests. I'm glad to hear that the
RAID offload is working now.

You shouldn't notice any difference in performance. On a 32MB memcpy
operation, broken into 32x 1MB memcpy(), 1x interrupt(), I noticed less
than 0.1% difference (approx 100,000 ns / 0.1ms). This is probably at or
near the limits of my measurement accuracy.

Ira


> Regards,
>  Dipen
>  
> 
> -----Original Message-----
> From: Dudhat Dipen-B09055 
> Sent: Tuesday, January 05, 2010 11:38 AM
> To: 'Ira W. Snyder'; dan.j.williams@intel•com
> Cc: galak@kernel•crashing.org; herbert@gondor•apana.org.au; Tabi
> Timur-B04825; linuxppc-dev@ozlabs•org; Suresh Vishnu-B05022; Gupta
> Maneesh-B18878; Li Yang-R58472
> Subject: RE: fsldma: cleanup driver and fix async_tx compatibility
> 
> 
> Hi Ira,
> 
> I will test it on 85xx hardware and let you know once done.
> 
> Thanks
> Dipen
>  
> 
> -----Original Message-----
> From: Ira W. Snyder [mailto:iws@ovro•caltech.edu]
> Sent: Friday, January 01, 2010 11:41 AM
> To: dan.j.williams@intel•com
> Cc: galak@kernel•crashing.org; herbert@gondor•apana.org.au; Tabi
> Timur-B04825; linuxppc-dev@ozlabs•org; Suresh Vishnu-B05022; Dudhat
> Dipen-B09055; Gupta Maneesh-B18878; Li Yang-R58472
> Subject: fsldma: cleanup driver and fix async_tx compatibility
> 
> This patch series cleans up the Freescale DMAEngine driver, including
> verifying the locking and making sure that all code paths are correct.
> There were a few places that seemed suspicious, and they have been
> fixed.
> 
> I have written a quick memory->memory DMAEngine test driver, and the
> performance is identical before and after my changes (<0.1% change). I
> measured both setting up the DMA operation (via
> device_prep_dma_interrupt() and device_prep_dma_memcpy()) and the actual
> DMA transfer itself.
> 
> As an added bonus, the interrupt load is measurably reduced. My test
> driver transfers 32MB as 32x 1MB chunks + 1 interrupt descriptor, using
> the functions noted above. Previous to this patch series, 31 interrupts
> were generated. After this patch series, only a single interrupt is
> generated for the whole transaction.
> 
> Some testing on 85xx/86xx hardware would be appreciated. Also, some
> testing by the users attempting to use async_tx and talitos to handle
> RAID offload would be great as well.
> 
>  Documentation/powerpc/dts-bindings/fsl/dma.txt |   17 +-
>  drivers/dma/fsldma.c                           | 1036
> ++++++++++++------------
>  drivers/dma/fsldma.h                           |   35 +-
>  3 files changed, 556 insertions(+), 532 deletions(-)
> 
> Thanks,
> Ira
> 

  reply	other threads:[~2010-01-11 16:29 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-01  6:10 fsldma: cleanup driver and fix async_tx compatibility Ira W. Snyder
2010-01-01  6:10 ` [PATCH 1/8] fsldma: reduce kernel text size Ira W. Snyder
2010-01-01  6:10 ` [PATCH 2/8] fsldma: remove unused structure members Ira W. Snyder
2010-01-01  6:10 ` [PATCH 3/8] fsldma: rename struct fsl_dma_chan to struct fsldma_chan Ira W. Snyder
2010-01-01  6:10 ` [PATCH 4/8] fsldma: rename dest to dst for uniformity Ira W. Snyder
2010-01-01  6:10 ` [PATCH 5/8] fsldma: clean up the OF subsystem routines Ira W. Snyder
2010-01-01  6:10 ` [PATCH 6/8] fsldma: simplify IRQ probing and handling Ira W. Snyder
2010-01-06 18:02   ` Scott Wood
2010-01-06 18:39     ` Ira W. Snyder
2010-01-06 20:51       ` Scott Wood
2010-01-01  6:10 ` [PATCH 7/8] fsldma: rename fsl_chan to fchan Ira W. Snyder
2010-01-06 18:04   ` Scott Wood
2010-01-06 18:19     ` Ira W. Snyder
2010-01-06 18:27       ` Scott Wood
2010-01-06 18:40         ` Ira W. Snyder
2010-01-01  6:10 ` [PATCH 8/8] fsldma: major cleanups and fixes Ira W. Snyder
2010-01-05  6:08 ` fsldma: cleanup driver and fix async_tx compatibility Dudhat Dipen-B09055
2010-01-11  5:47 ` Dudhat Dipen-B09055
2010-01-11 16:29   ` Ira W. Snyder [this message]
2010-02-02  7:50     ` Dudhat Dipen-B09055
2010-02-02 15:04       ` Dan Williams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100111162900.GA10110@ovro.caltech.edu \
    --to=iws@ovro$(echo .)caltech.edu \
    --cc=B04825@freescale$(echo .)com \
    --cc=B05022@freescale$(echo .)com \
    --cc=B09055@freescale$(echo .)com \
    --cc=B18878@freescale$(echo .)com \
    --cc=R58472@freescale$(echo .)com \
    --cc=dan.j.williams@intel$(echo .)com \
    --cc=herbert@gondor$(echo .)apana.org.au \
    --cc=linuxppc-dev@ozlabs$(echo .)org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox