Messages in this thread | | | Subject | Re: [PATCH] radeon: preallocate memory for command stream parsing | From | Jerome Glisse <> | Date | Wed, 24 Jun 2009 10:29:01 +0200 |
| |
On Tue, 2009-06-23 at 22:52 +0300, Pekka Enberg wrote: > Hi Jerome, > > On Tue, Jun 23, 2009 at 10:46 PM, Jerome Glisse<jglisse@redhat.com> wrote: > > Command stream parsing is the most common operation and can > > happen hundred of times per second, we don't want to allocate/free > > memory each time this ioctl is call. This rework the ioctl > > to avoid doing so by allocating temporary memory along the > > ib pool. > > > > Signed-off-by: Jerome Glisse <jglisse@redhat.com> > > So how much does this help (i.e. where are the numbers)? I am bit > surprised "hundred of times per second" is an issue for our slab > allocators. Hmm? >
I didn't have real number but the vmap path was really slower, quake3 fps goes from ~20 to ~40 on average when going from vmap to preallocated. When using kmalloc i don't thing there was so much performance hit. But i think the biggest hit was that in previous code i asked for zeroed memory so i am pretty sure kernel spend a bit of time clearing page. I reworked the code to avoid needing cleared memory and so avoid memset, this is likely why we get a performance boost.
Cheers, Jerome
| |