[Intel-gfx] gem clflush optimization for media encoding

Daniel Vetter daniel at ffwll.ch
Wed Jun 22 08:29:24 CEST 2011


2011/6/22 Zou, Nanhai <nanhai.zou at intel.com>:
>        map_gtt in current gem is super slow.
>        I've tried map_gtt but it seems that the speed is unacceptable.
map_gtt should be pretty fast for large things on the upload side. For
the gpu->cpu download, have you tried pread? btw, the counterpart
(pwrite) also beats everything else for small uploads. Might be worth
it to use that generally throughout libva.

The important thing is that you may never use the cpu mappings with
these functions (for objects of similar size). Because libdrm reuses
bos without checking their domain, you'll get tons of unnecessary
clflush even on objects that do not get accessed through the cpu
domain.
-Daniel
-- 
Daniel Vetter
daniel.vetter at ffwll.ch - +41 (0) 79 364 57 48 - http://blog.ffwll.ch



More information about the Intel-gfx mailing list