POPPUR爱换

 找回密码
 注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

搜索
查看: 11303|回复: 41
打印 上一主题 下一主题

今天和一帮人争论了很久,CUDA倒是算软解还是硬解?

[复制链接]
跳转到指定楼层
1#
发表于 2010-1-12 19:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
CoreAVC 2.0的CUDA,到底是软解还是硬解?我认为CUDA是通过不同的接口实现了DXVA,调用的是和DXVA相同的电路,所以算硬解;但是对方说CUDA用GPU软解而已,我感觉这种说法没有讲到点子上很牵强……求真相解释

另,为什么CoreAVC的画质比FFD差呢?不解
2#
发表于 2010-1-12 19:47 | 只看该作者
CUDA是依靠GPU的强大并行计算能力进行解码

个人认为软解和硬解的区别(肯定是主要区别)在于:软解考验的是处理单元是否肌肉;硬解是通过指令(集)进行“抄近道”式的操作

关于画质,个人认为和编解码器有关
回复 支持 反对

使用道具 举报

3#
发表于 2010-1-12 19:50 | 只看该作者
CoreAVC CUDA 是硬件解码,你可以查阅 NVIDIA CUDA 文档获得更多信息。
回复 支持 反对

使用道具 举报

4#
发表于 2010-1-12 20:31 | 只看该作者
硬解,SP单元只负责把NV12转成YV12
回复 支持 反对

使用道具 举报

5#
发表于 2010-1-12 20:34 | 只看该作者
都是硬解,只不过GPU性能更好,除非芯片内置了专门处理的单元,对于CUDA来说,严格来讲,它还是软的,不然干吗要一个CUDA作为接口?
回复 支持 反对

使用道具 举报

6#
发表于 2010-1-12 20:44 | 只看该作者
CoreAVC CUDA 就是调用 VP2 进行 h.264 解码,因此不是楼上所说的"软的",采用 CUDA 是因为 CUDA Video Decoder API 的适用性比 DXVA 广得多。

此外,虽然使用 GPU shader 来做视频解码已经有一些研究报告,但是从耗电的角度而言,几乎毫无价值可言。
回复 支持 反对

使用道具 举报

7#
 楼主| 发表于 2010-1-12 20:56 | 只看该作者
那请问版大CUDA和DXVA调用时一个模块吧?如果画质有区别那也是CoreAVC算法造成的?还是说CoreAVC只是起了个桥梁的作用,没有参与实际解码,所有解码时交与GPU运算的,CPU没有运算?
回复 支持 反对

使用道具 举报

8#
发表于 2010-1-12 21:01 | 只看该作者
按照 h.264 的规范,decoder 出来的东西应该都是一样的,但是由于 post processing(后处理)的原因,可能就会有一些差别。

CoreAVC CUDA 会把解码出来的画面发回给 CPU 作处理,例如加个字幕什么的。
回复 支持 反对

使用道具 举报

9#
 楼主| 发表于 2010-1-12 21:06 | 只看该作者
怪不得开了FFD的post processing就爆卡了……也就是说如果没有挂字幕的话,用CoreAVC的CUDA和DXVA得到的画面是完全相同的?两者都是12bit吗?
回复 支持 反对

使用道具 举报

10#
发表于 2010-1-12 21:16 | 只看该作者
后处理不仅仅是字幕,可能还有其他的东西。

yv12 是 8 bit Y plane followed by 8 bit 2x2 subsampled V and U planes。
回复 支持 反对

使用道具 举报

11#
发表于 2010-1-12 21:54 | 只看该作者
本帖最后由 我有3个马甲 于 2010-1-12 21:56 编辑

个人见解, 使用gpu资源把cpu解放出来就叫软解,每个解法的程度不一。
回复 支持 反对

使用道具 举报

12#
发表于 2010-1-13 06:03 | 只看该作者
利用专用电路叫硬解,如果用shader解的话,还是通用电路,只不过是GPGPU而已,依然是软解范畴。

个人见解, 使用gpu资源把cpu解放出来就叫软解,每个解法的程度不一。
我有3个马甲 发表于 2010-1-12 21:54
回复 支持 反对

使用道具 举报

13#
发表于 2010-1-13 07:59 | 只看该作者
我觉得只要能大幅降低CPU占用的都算硬解,只是硬解也有不同方式
回复 支持 反对

使用道具 举报

14#
发表于 2010-1-13 10:16 | 只看该作者
我觉得只要能大幅降低CPU占用的都算硬解,只是硬解也有不同方式
dalao123 发表于 2010-1-13 07:59


问题是硬解和cuda解 哪个更耗电? 这是最关键的问题吧?
回复 支持 反对

使用道具 举报

15#
发表于 2010-1-13 10:17 | 只看该作者
如果cuda是软解应该更耗电的。
回复 支持 反对

使用道具 举报

16#
发表于 2010-1-13 10:21 | 只看该作者
guityurtyedxgfxc
回复 支持 反对

使用道具 举报

17#
发表于 2010-1-13 10:25 | 只看该作者
CUDA调用的不是DXVA的加速
回复 支持 反对

使用道具 举报

18#
发表于 2010-1-13 10:29 | 只看该作者
CUDA解码当然是软解。

CUDA是通用的计算架构,将来也可以实现H.264/AVC-1以外的解码算法。
而传统意义上的硬解是通过专用解码硬件实现的,显卡上有啥解码模块就只能实现相应的解码功能。

但是目前的CUDA通用计算需要通过SDK来实现,通用性显然没有CPU那么NB。这可能限制了某些算法的实现,导致CUDA解码质量与CPU解码略有区别。

换一个角度来看,CUDA解码能耗比要比DXVA硬解差得多。
传统的DXVA硬解显卡上主要是专用解码模块在工作,功耗很低。而CUDA解码时显卡上的流处理器也需要参与工作,功耗比前者要高得多。
回复 支持 反对

使用道具 举报

19#
发表于 2010-1-13 10:31 | 只看该作者
我觉得只要能大幅降低CPU占用的都算硬解,只是硬解也有不同方式
dalao123 发表于 2010-1-13 07:59


CUDA解码降低CPU占用率的同时,GPU的占用率会上升。
而DXVA硬解的同时,GPU仍然是近似空闲的,只有硬解模块在工作。
回复 支持 反对

使用道具 举报

20#
发表于 2010-1-13 12:17 | 只看该作者

硬解的速度,软解的质量就是 cuda
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

广告投放或合作|网站地图|处罚通告|

GMT+8, 2024-11-21 19:41

Powered by Discuz! X3.4

© 2001-2017 POPPUR.

快速回复 返回顶部 返回列表