4.7.8 - August 28, 2018 - Support for the Nvidia CUDA hardware decoding

zlandar

n3wb
Joined
May 11, 2015
Messages
16
Reaction score
2
I'm having a few problems with the Hardware Decoding...

1) It doesn't seem to work with H265, with H264 it's fine.... if I try H265 it'll just show the color bars and never get an image. (error is "HW Accelerated Decoder Not Found")
2) After several hours of working fine with H264, all the cameras show the no signal screeen and it gives me some "HW Decoding" failure message.
3) This is on my old system with a GTX TITAN on it.... overkill on the GFX card, yes, but i used to play video games.

I guess there are still a few bugs to work out.
.265 hardware decode never worked properly with BI using Intel quicksync. Doubt it would be fixed with Nvidia.
 

bp2008

Staff member
Joined
Mar 10, 2014
Messages
12,676
Reaction score
14,024
Location
USA
You're right, it never worked properly with quick sync. But it does work with nvidia if you have a card that supports it. His card was too old and does not support it.
 

fenderman

Staff member
Joined
Mar 9, 2014
Messages
36,903
Reaction score
21,275
.265 hardware decode never worked properly with BI using Intel quicksync. Doubt it would be fixed with Nvidia.
That makes no sense. What Would One have to do with the other... More importantly the release notes specifically state that it works with h.265... that was never the case with Intel... Also note that even if he does support 265 eventually it will only work with 6th gen processors and above.
 
Last edited:

zlandar

n3wb
Joined
May 11, 2015
Messages
16
Reaction score
2
That makes no sense. What Would One have to do with the other... More importantly the release notes specifically state that it works with h.265... that was never the case with Intel... Also note that even if he does support 265 eventually it will only work with 6th gen processors and above.
I have an 8th gen intel proccessor (8700k) which fully supports .265 hardware acceleration throug quicksync.

What would one have to do with the other? This is not the first time BI announced .265 hardware acceleration support except it doesn't work. Still doesn't work.
 

bp2008

Staff member
Joined
Mar 10, 2014
Messages
12,676
Reaction score
14,024
Location
USA

fenderman

Staff member
Joined
Mar 9, 2014
Messages
36,903
Reaction score
21,275
I have an 8th gen intel proccessor (8700k) which fully supports .265 hardware acceleration throug quicksync.

What would one have to do with the other? This is not the first time BI announced .265 hardware acceleration support except it doesn't work. Still doesn't work.
Except that BP confirm that it does work earlier in this thread.... But I guess there's always a place for professional bitchers like you
 

fenderman

Staff member
Joined
Mar 9, 2014
Messages
36,903
Reaction score
21,275
Last edited:

awsum140

Known around here
Joined
Nov 14, 2017
Messages
1,254
Reaction score
1,128
Location
Southern NJ
If I remember correctly, the latest and greatest Intel driver does work for H265. So it appears Ken was right about it being the driver. Someone mentioned it in a thread, somewhere, here.
 

bp2008

Staff member
Joined
Mar 10, 2014
Messages
12,676
Reaction score
14,024
Location
USA
I've tried two recent Intel driver versions that didn't suffer "the leak" with my i7-8700K and each of them could only decode one frame of H.265 before freezing. Could be a camera/firmware compatibility problem though...
 

peterfram

Young grasshopper
Joined
Nov 4, 2015
Messages
37
Reaction score
21
First, thanks to the developer for continuing to innovate this reliable product over the years. Even if this feature doesn't save power (I'd have to measure), it does allow some CPU offload which might benefit some use cases. With the virtual end of Intel's Moore's law a few years back, the more CPU offload capability the merrier! My BI machine is used for many other purposes. Everyone has a different use case.

My results with CUDA HA on BI

BI Ver 4.7.8.1
CPU: i7 5820K 6 cores/12 threads, 32 GB RAM
Nvidia GTX 1080 8 GB RAM
8 Cameras h.265 and h.264 ranging 2.1 to 4.1 megapixels

With BI console closed, background service only mode (normal operation mode for me)
BI CPU utilization with Intel HA on: 16% (+/- 2 or 3%) with 0 GPU utilization
BI CPU utilization with Cuda HA on: 7.5% (+/- 0.5%) with BI GPU utilization 13.9% to 15%

With BI console open
BI CPU utilization with Intel HA on: 23% (+/- 2%), with 0 GPU utilization
BI CPU utilization with CUDA HA on: 18% (+/- 0.8%), with BI GPU utilization 13.7% to 15.6%

Playing recordings, my CPU utilization drops from the above 18% to about 9% with 4.1 MP cams, slightly less for 2 MP cams. CPU goes back up after I close recording and console view back on screen. GPU utilization remains constant around 14 to 15%.

With CUDA on for all, minimizing and maximizing BI console doesn't seem to impact utilization one way or another. But closing the console (service mode), drops CPU utilization right back under 8%.

The 4.1 MP cameras (h.265) each consume about 2.5% of GPU utilization, the 2.1 MP (h.264) cameras less than 1%-ish, also a couple 3 MP h.264 cameras closer to 1% than 2%.

CUDA on, with console closed, viewing live cameras on Android app or UI3 browser increases CPU utilization by about 2%. Playing recordings remotely spikes BI CPU utilization by 7% to 20%, the larger MP cameras trigger the most spike. I believe this is working as intended and no difference with any HW acceleration enabled or disabled.

I have a home automation dashboard tablet on the wall in kitchen, turns on by motion and streams three BI camera feeds for hours every day when someone home. With that running, CUDA HA, console closed, my BI CPU utilization hovers around 12.4 to 13.5%. With Intel HA, console closed BI CPU utilization hovers 16.5 to 17%.

So, real world summary, when not dashboard streaming, in normal operation mode, CUDA cuts my CPU utilization roughly in half to under 8%. But for many hours p/day with the dashboard streaming, my CPU utilization closer to 13% vs 16.5 to 17% without CUDA, so a little over 20% benefit for a good portion of the day.
 
Last edited:

bp2008

Staff member
Joined
Mar 10, 2014
Messages
12,676
Reaction score
14,024
Location
USA
I have a home automation dashboard tablet on the wall in kitchen, turns on by motion and streams three BI camera feeds for hours every day when someone home. With that running, CUDA HA, console closed, my BI CPU utilization hovers around 12.4 to 13.5%. With Intel HA, console closed BI CPU utilization hovers 16.5 to 17%.
You might consider sending sub streams from your cams directly to the tablet without going through Blue Iris, if that is supported.
 

peterfram

Young grasshopper
Joined
Nov 4, 2015
Messages
37
Reaction score
21
Ok, thinking about power consumption, take this with a grain of salt.

I did three 2-minute tests with my PC plugged into a z-wave power outlet that reports energy use in watts, configured to report every 1 second. These are notoriously not at all scientifically accurate devices but they are generally consistent. I left all other things idle and tried to minimize background stuff to at least get a ballpark of GPU power consumption with CUDA and Blue Iris.

Results: CUDA on, see my post above. 8 cameras, GTX 1080, BI GPU utilization around 15%
242 Watts, pretty static 2 to 5 watt fluctuations.

CUDA off, Intel HA on, BI GPU utilization = 0
212 Watts, pretty static, similar fluctuations

So, unscientifically on a GTX 1080, CUDA BI offloads might cost about 30 watts in GPU power consumption for my case on a GTX 1080, console closed no streaming. So a 14% increase in power cost to cut my BI CPU utilization in half. Or in my idle case, cut my total system CPU utilization from about 28% to 20%.

For reference, 8% of my CPU 140 watt TDP is 11.2 watts. So GPU costs about 3x, but might be worth it if you need to free up CPU.
 
Last edited:

fenderman

Staff member
Joined
Mar 9, 2014
Messages
36,903
Reaction score
21,275
Ok, thinking about power consumption, take this with a grain of salt.

I did three 2-minute tests with my PC plugged into a z-wave power outlet that reports energy use in watts, configured to report every 1 second. These are notoriously not at all scientifically accurate devices but they are generally consistent. I left all other things idle and tried to minimize background stuff to at least get a ballpark of GPU power consumption with CUDA and Blue Iris.

Results: CUDA on, see my post above. 8 cameras, GTX 1080, BI GPU utilization around 15%
242 Watts, pretty static 2 to 5 watt fluctuations.

CUDA off, Intel HA on, BI GPU utilization = 0
212 Watts, pretty static, similar fluctuations

So, unscientifically on a GTX 1080, CUDA BI offloads might cost about 30 watts in GPU power consumption for my case on a GTX 1080, console closed no streaming. So a 14% increase in power cost to cut my BI CPU utilization in half. Or in my idle case, cut my total system CPU utilization from about 28% to 20%.

For reference, 8% of my CPU 140 watt TDP is 11.2 watts. So GPU costs about 3x, but might be worth it if you need to free up CPU.
Can you clarify what's plugged into the outlet that you're measuring? If all you have plugged in is your PC those are crazy high numbers... Also note that since your PC doesn't support intel Hardware acceleration, turning it on does nothing.... if those numbers are accurate you are better off replacing the computer with an efficient Intel processor that supports quick sync..
 

peterfram

Young grasshopper
Joined
Nov 4, 2015
Messages
37
Reaction score
21
This CPU does not support Intel Quick Sync for hardware acceleration, which is why you saw such significant differences after switching to CUDA :)
Yep, I've kind of lost track over the months and just left it enabled. I thought it was working for h.264 though, and didn't cause me harm or errors. But, good to see GPU HA now works. Not sure I'll use it ongoing, but cool

You might consider sending sub streams from your cams directly to the tablet without going through Blue Iris, if that is supported.
I think the challenge with direct camera stream was authentication, what should have worked, username+password in URL, didn't.
 

peterfram

Young grasshopper
Joined
Nov 4, 2015
Messages
37
Reaction score
21
celeration, turning it on does nothing.... if those numbers are accurate you are better off replacing the computer with an efficient Intel processor that supports quick sync..
The Z-wave outlet power meter is not that accurate but it is relatively consistent or easy to spot odd fluctuations. So a 10 watt LED light bulb might show as 9 or 11 watts (what I have seen), but it would be mostly stable/consistent between reports after initial power on. It reported consistently every 1 second through my testing. I could see power increase when I did anything to increase CPU or GPU utilization, decrease when the utilization declined.

It's true, the reported 30 watt power difference could actually be say a 15 or 45 watt power difference. Generally the percent of power difference is probably more accurate than the actual values. It was fun to test though.

TDP of my GTX 1080 GPU is 230 watts, but utilization was under 2% from other processes during that test with BI CUDA on/off. CPU is not efficient, 140 watts (circa 2014 CPU with 6/12 cores). I do a lot of 3D/CAD/Design for 3D printing on this machine and the GPU and CPU still perform really well. There are a number of other processes running that keep CPU mostly near max core speed (more power) even though utilization isn't that high. And I have some power saving things disabled (PCI Express and USB) at the moment due to some legacy connected device problems (weather station, and Raspberry PI home automation geekness)

That new I9-9900k might become mine over the holidays vacation bordom.
 
Last edited:

fenderman

Staff member
Joined
Mar 9, 2014
Messages
36,903
Reaction score
21,275
The Z-wave outlet power meter is not that accurate but it is relatively consistent or easy to spot odd fluctuations. So a 10 watt LED light bulb might show as 9 or 11 watts (what I have seen), but it would be mostly stable/consistent between reports after initial power on. It reported consistently every 1 second through my testing. I could see power increase when I did anything to increase CPU or GPU utilization, decrease when the utilization declined.

It's true, the reported 30 watt power difference could actually be say a 15 or 45 watt power difference. Generally the percent of power difference is probably more accurate than the actual values. It was fun to test though.

TDP of my GTX 1080 GPU is 230 watts, but utilization was under 2% from other processes during that test with BI CUDA on/off. CPU is not efficient, 140 watts (circa 2014 CPU with 6/12 cores). I do a lot of 3D/CAD/Design for 3D printing on this machine and the GPU and CPU still perform really well. There are a number of other processes running that keep CPU mostly near max core speed (more power) even though utilization isn't that high. And I have some power saving things disabled (PCI Express and USB) at the moment due to some legacy connected device problems (weather station, and Raspberry PI home automation geekness)

That new I9-9900k might become mine over the holidays vacation bordom.
my point was that for a 24/7 vms machine, consuming 200+ watts is insane, it would be cheaper to simply buy an intel machine with HA and run BI on it.
 

peterfram

Young grasshopper
Joined
Nov 4, 2015
Messages
37
Reaction score
21
I've considered a budget PC for BI and other 24 x 7 stuff, in fact I used to have an old box without HA running all my 24 x 7 apps. Even a laptop years ago. Other gadgets have since consumed that extra space.

If 200 watts is accurate, that is pretty high. But my whole house averages about 1000 kWh per month in summer, and that includes 3 40 to 70 watt air purifiers running 24 x 7 (kid allergies) and periods of two window air conditioners running and hot tub is heating and/or blowing at many thousands of watts at times. Not bad for 3k square feet and less than my previous house that was a third smaller. I'm not sweating the power bill.
 
Last edited:
Top