【CUDA开发】论CUDA和LAV解码器是否真的实用
先说配置,我电脑E3V3+GTX780TI视频就一个普通的720P AVC1编码MP4视频,实时检测软件是CPU-Z和GPU-Z,AIDA64【全默认设置】全部用ptoplayer默认播放时候,播放30分钟,全程满帧(输入和输出帧数相等)。显卡和CPU基本处于待机负载显卡核心频率在300MHZ,显存在600MHZ,TDP 4%,温度40℃;CPU温度42℃。机箱出风口基本无热风。【开启CUDA:LAV解码器】LAV使用Nvidia CUVID显卡和CPU处于中等负载显卡核心满频率875MHZ(我是公版),显存1600MHZ满载,TDP
55%(对于GTX780TI这个TPD基本等于中高特效在玩单机了),温度65℃,外壳烫手,风扇转速45%;CPU温度50℃。机箱出风口有明显热风【开启CUDA:默认解码器开启CUDA】pot自带内置解码器,AVC1改成NV CUDA解码基本数据同LAV。CPU负载略低一点。由此可见,CUDA解码其实并不是像CPU硬解码一样可以实现节省计算芯片资源和能耗的作用。相反,他是把本应由CPU负担的计算转交给CUDA核心,也就是这里的NV GPU进行运算,从而给CPU减负。单对整体来说,打个不恰当的比方,CPU跑1km路程要消耗1KG汽油,现在为了让CPU能干点别的,只让他跑200m路程,而让GPU跑800m路程,此时GPU却要消耗2KG的汽油。这样CPU虽然稍微的减负了,但是整体却带来了更多的能耗和发热。所以我个人认为,当CPU不因为视频而出现负载压力导致帧数下降的情况下,最好别开启CUDA进行同步计算,尤其对于配置比较好或者比我还要好的同学,就更不应该开启了。因为你的CPU对付这些东西绰绰有余的时候,开CUDA只是烧电费取暖罢了,对画质和流畅度没有任何意义。似乎CUDA运算【并没有对负载有动态调整,而是全负荷运行】,不管杀鸡还是打蚊子都用核弹火力全开,这对显卡本身是不好的。也许Nv应该在以后的CUDA技术中优化对芯片负载和功耗的整体控制。对付不同的敌人掏出不同的武器才是。
【CUDA开发】论CUDA和LAV解码器是否真的实用的更多相关文章
- 【CUDA开发】CUDA面内存拷贝用法总结
[CUDA开发]CUDA面内存拷贝用法总结 标签(空格分隔): [CUDA开发] 主要是在调试CUDA硬解码并用D3D9或者D3D11显示的时候遇到了一些代码,如下所示: CUdeviceptr g_ ...
- 【并行计算-CUDA开发】CUDA软件架构与Nvidia硬件对应关系
前面扯了很多,不过大多都是在讲CUDA 在软体层面的东西:接下来,虽然Heresy 自己也不熟,不过还是来研究一下硬体的部分吧-毕竟要最佳化的时候,好像还是要大概知道一下相关的东西的.这部分主要参考资 ...
- 【CUDA开发】CUDA编程接口(一)------一十八般武器
子曰:工欲善其事,必先利其器.我们要把显卡作为通用并行处理器来做并行算法处理,就得知道CUDA给我提供了什么样的接口,就得了解CUDA作为通用高性能计算平台上的一十八般武器.(如果你想自己开发驱动,自 ...
- 【并行计算-CUDA开发】CUDA编程——GPU架构,由sp,sm,thread,block,grid,warp说起
掌握部分硬件知识,有助于程序员编写更好的CUDA程序,提升CUDA程序性能,本文目的是理清sp,sm,thread,block,grid,warp之间的关系.由于作者能力有限,难免有疏漏,恳请读者批评 ...
- 【CUDA开发】 CUDA Thrust 规约求和
1. 使用 Thrust Thrust 是一个开源的 C++ 库,用于开发高性能并行应用程序,以 C++ 标准模板库为蓝本实现. 官方文档见这里:CUDA Thrust /* ... */ float ...
- 【CUDA开发】Cuda C++ Thrust API与 Cuda Runtime API程序比较
今天买了本新书<高性能CUDA应用设计与开发方法与最佳实践>,今天读了第一章有点出获,分享给大家. 程序功能:给向量填充数据并计算各元素之和 1. CPU串行运行的代码: //seqSer ...
- 【CUDA开发】CUDA从入门到精通
CUDA从入门到精通(零):写在前面 在老板的要求下,本博主从2012年上高性能计算课程开始接触CUDA编程,随后将该技术应用到了实际项目中,使处理程序加速超过1K,可见基于图形显示器的并行计算对于追 ...
- 【CUDA开发】CUDA开发琐碎知识
## 一维矩阵的加 //实现一个一维1*16的小矩阵的加法. //矩阵大小:1*16 //分配一个block,共有16个线程并发. #include <stdio.h> #includ ...
- 【并行计算-CUDA开发】CUDA存储器模型
CUDA存储器模型 除了执行模型以外,CUDA也规定了存储器模型(如图2所示)和一系列用于主控CPU与GPU间通信的不同地址空间.图中红色的区域表示GPU片内的高速存储器,橙色区域表示DRAM中的的地 ...
随机推荐
- [Dart] Understand Classes and Inheritance in Dart
We will look at how we can create classes and explore some various features. Dart adopts a single-in ...
- sqlserver内存、会话、连接查询
1.连接查询 select * from sysprocesses where dbid in (select dbid from sysdatabases where name='dbname') ...
- HDU 6170 - Two strings | 2017 ZJUT Multi-University Training 9
/* HDU 6170 - Two strings [ DP ] | 2017 ZJUT Multi-University Training 9 题意: 定义*可以匹配任意长度,.可以匹配任意字符,问 ...
- 运行级别 runlevel
linux默认有7个等级,从0到6 0 关机 1 单用户模式,系统出现问题是可使用该模式进入系统.例如完了root密码,就可以使用1进入系统修改root密码 2 多用户模式,没有网络连接 3 完全多用 ...
- mysql的存储引擎与锁
一.背景知识 1.锁是计算机协调多个进程或线程并发访问某一资源的机制. A.锁分类. | 共享锁(读锁):在锁定期间,多个用户可以读取同一个资源,读取过程中数据不会发生变化. | 排他锁(写锁):在锁 ...
- thymeleaf 与shiro 整合错误
错误 @Override protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) { // ...
- 服务器更新了php版本报错(PHP7.3)
Warning: "continue" targeting switch is equivalent to "break". Error:"con ...
- 腾讯基于 Flink 的实时流计算平台演进之路
https://mp.weixin.qq.com/s/MGnG_Mpf6CUQWLJHvmWqLA
- SVN分支创建与合并
SVN分支 一个branch是某个development line(通常是主线也即trunk)的一个拷贝,branch存在的意义在于,在不干扰trunk的情况下,和trunk并行开发,待开发结束后合并 ...
- SQL-W3School-函数:SQL NOW() 函数
ylbtech-SQL-W3School-函数:SQL NOW() 函数 1.返回顶部 1. NOW() 函数 NOW 函数返回当前的日期和时间. 提示:如果您在使用 Sql Server 数据库,请 ...