Luca Barbieri wrote:
>> ^^^ Luca, I've never seen this show up high on a profile (yet). Do you see
>> that with Nouveau? I used to have an rb-tree implementation of drm_mm_xxx
>> lying around, but I didn't use it because I didn't have a case where it
>> showed up?
>>     
>
> Yes, before I did userspace allocation, in doom3 profiles,
> get_unmapped_area and function called by it (all coming from sys_mmap)
> consumed around 10% of the time.
>
> Note that this is not DRM-specific code, but rather the generic Linux
> code for finding free virtual address space, which walks over all the
> vmas in the process and, in the default x86 variant, does an rb-tree
> lookup for each vma!
>   

Ah, OK. I thought this was the drm linear search for device address 
space for each bo.

> It could be fixed by either in the kernel with better data structures
> and algorithms or in userspace by using MAP_FIXED.
> However, this will still leave significant kernel overhead (e.g. just
> drm_mm_search_free_in_range takes 1%).
>   

/Thomas


------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to