如何加速uncached speculative write combined memory(USWC)的读性能

69 views
Skip to first unread message

hank peng

unread,
Jul 11, 2011, 10:19:39 AM7/11/11
to linux-...@zh-kernel.org
Hi,guys:
现在遇到了一个棘手的问题,我的平台是sandy
bridge,它自带GPU,我通过调用libva(一个硬件解码库),进行硬件解码,驱动程序将解码后的数据放在AGP映射的memory里,而这部分内存正是USWC类型的,因为我要在用户层把解码后的数据拷贝出来以进行后续的进一步的处理,但是现在发现USWC类型的内存比cached内存的读性能相差太多了,有什么办法可以加速USWC类型内存的读性能呢?

--
The simplest is not all best but the best is surely the simplest!
_______________________________________________
Linux 内核开发中文邮件列表
Linux-...@zh-kernel.org
http://zh-kernel.org/mailman/listinfo/linux-kernel
Linux 内核开发中文社区: http://zh-kernel.org

DuanZhenzhong

unread,
Jul 11, 2011, 10:27:23 PM7/11/11
to hank peng, linux-...@zh-kernel.org
hank peng wrote:
> Hi,guys:
> 现在遇到了一个棘手的问题,我的平台是sandy
> bridge,它自带GPU,我通过调用libva(一个硬件解码库),进行硬件解码,驱动程序将解码后的数据放在AGP映射的memory里,而这部分内存正是USWC类型的,因为我要在用户层把解码后的数据拷贝出来以进行后续的进一步的处理,但是现在发现USWC类型的内存比cached内存的读性能相差太多了,有什么办法可以加速USWC类型内存的读性能呢?
>
>
Write-Through?

--
Regards
zhenzhong
--
Oracle Building, No.24 Building, Zhongguancun Software Park
Haidian District, Beijing 100193, China

Gang Lei (雷刚)

unread,
Jul 12, 2011, 9:34:17 PM7/12/11
to hank peng, linux-...@zh-kernel.org
试过mmap了吗?
这块内存应该是不可以被cache的,驱动程序很可能是用DMA把数据搬到这个memory里的,即使对这部分memory有cache,那么也需要在读这部分memory的时候invalidate cache,然后再读,否则会有cache coherency的问题。
Reply all
Reply to author
Forward
0 new messages