Awful AMD VCE performance

Page 3 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

el etro

Golden Member
Jul 21, 2013
1,581
14
81
Power limit? How much power the encoder uses anyway? That seems false to me.

Clocks go down when VCE works. Once i made the PL/FAN go up, FPS has stabilized, with GPu power going 20W up. Much strange because that didn't happened on the 7950 even on the highest of all settings.
 

chummy

Member
Jun 18, 2015
37
1
41
I see much of a anti-AMD rant in your post. Performance hit using my ex-7950 while recording is about 10%. For me there's just something unkown wrong, likely something easily dolvable on the drivers.



Can someone take this discussion forward to AMD driver team averiguate the problem?

First about your last question you can send AMD a report, but Xaymar already has constant contact with AMD guy in AMF repository where he keep reporting bugs. So i guess he already has being warned about it and if there has some fix will appear in future releases. But yet users can report bugs direct to AMD here: http://www.amdsurveys.com/se.ashx?s=5A1E27D23A3DE979

About me ranting, its not ranting but frustration and haterism after one year of experience with them. After one year experiencing how lazy and slow AMD software/driver bug fix for old issues take to come out i become very frustrated with this company. Now i'm being forced to consider only NVIDIA which i dont like the methods it do about crippling hardware but yet they can maintain much better all-around driver support for PC.

AMD is a choice for "consolist" plug n play user, they can give nothing beside an piece of hardware to only play games, if you expecting features with workable driver just forget about it, is a no go for AMD. They take 3 years to fix VCE 2.0 b-frames in their driver, they take 14 months to fix Win10 DVR major bug for VCE 1.0 & 2.0. Users with GCN 1.0 are suffering from some bugs implemented since Crimson launch and GCN 1.0 was rebranded in R300 last year. AMD driver not even matured for old cards (GCN 1.0) leaving there many issues while this is not a concern for Kepler where drivers are full stable. There yet DX11 and OGL driver CPU overhead which never will be fixed and is a performance downside for AMD.

So in the last 3 years i used NVIDIA before moving to AMD i never experienced problems like this which take years to fix bugs and that experience make me becoming from a user which has no bad expectations about AMD before experiencing them to someone hate they now. Only who has too much love for a company will not get deceptive when they cannot deliver software and every extra feature is broken and not working for years. Need much love.

Before i moving to AMD i never imagined NVIDIA driver support/stability was so far ahead at least for old cards, using AMD make me think different.
 

Dave2150

Senior member
Jan 20, 2015
639
178
116
First about your last question you can send AMD a report, but Xaymar already has constant contact with AMD guy in AMF repository where he keep reporting bugs. So i guess he already has being warned about it and if there has some fix will appear in future releases. But yet users can report bugs direct to AMD here: http://www.amdsurveys.com/se.ashx?s=5A1E27D23A3DE979

About me ranting, its not ranting but frustration and haterism after one year of experience with them. After one year experiencing how lazy and slow AMD software/driver bug fix for old issues take to come out i become very frustrated with this company. Now i'm being forced to consider only NVIDIA which i dont like the methods it do about crippling hardware but yet they can maintain much better all-around driver support for PC.

AMD is a choice for "consolist" plug n play user, they can give nothing beside an piece of hardware to only play games, if you expecting features with workable driver just forget about it, is a no go for AMD. They take 3 years to fix VCE 2.0 b-frames in their driver, they take 14 months to fix Win10 DVR major bug for VCE 1.0 & 2.0. Users with GCN 1.0 are suffering from some bugs implemented since Crimson launch and GCN 1.0 was rebranded in R300 last year. AMD driver not even matured for old cards (GCN 1.0) leaving there many issues while this is not a concern for Kepler where drivers are full stable. There yet DX11 and OGL driver CPU overhead which never will be fixed and is a performance downside for AMD.

So in the last 3 years i used NVIDIA before moving to AMD i never experienced problems like this which take years to fix bugs and that experience make me becoming from a user which has no bad expectations about AMD before experiencing them to someone hate they now. Only who has too much love for a company will not get deceptive when they cannot deliver software and every extra feature is broken and not working for years. Need much love.

Before i moving to AMD i never imagined NVIDIA driver support/stability was so far ahead at least for old cards, using AMD make me think different.

Sounds like you have faulty cards, or installation issues.

I've used both AMD and NVIDIA cards over many years, both have been perfect driver wise in a single GPU configuration.
 

chummy

Member
Jun 18, 2015
37
1
41
@Shivansps do you tried Xaymar encoding test? Are it only loading encoder or put stress in 3D GPU at same time? Can you try solely encoding with Rigaya VCE encoder to see how it performs there, it use old SDK but at least with VCE 2.0 was very stable and shows true performance. Afterburner has a VCE benchmark too which shows performance of each preset.

If lack of power was a real cause of problem it only would happen when card is at full stress with 3D+encoder running at same time, using encoder solely outside any 3D heavy load encoder should show it full performance capability. If even in this scenario performance is low then the performance problem is encoder hardware limitation. Unfortunately AMD has not a encoder status load like NVIDIA does so you can see how much the encoder is stressed like GPU load.

Here a look at NVENC generations performance from NVIDIA notes:
http://i.imgur.com/QPLUGSB.png
 

chummy

Member
Jun 18, 2015
37
1
41
we need to wait for H265, thats the part that should be "new", the problem is, we cant actually use H265 for upload online videos or streaming.

Lets see if now with HEVC releasing some software royalty-free it will change something, but you know Google and all big boys already created last year the Alliance for Open Media where they're developing a new codec to be released 1H 2017. I dont know if Google will adopt HEVC in this stage and maybe HEVC will be the biggest bust in video codec history.

http://aomedia.org/about-us/

"The Netflix encoding department had a meet-up where they discussed VP9 vs. H.265 vs. H.264. The Alliance for Open Media was also there and gave a presentation on AV1, where they said they are aiming for a 50% increase in efficiency over VP9/H.265 with AV1. They also said that AV1 in it's current state already beats VP9 by 25-30% (with not yet released Google internal tools). They said that in order to achieve the 50% increase in efficiency over VP9, they are willing to accept a 40% increase in decoding complexity and a 5 to 10 times higher encoding complexity than VP9, see:" :coldsweat:

Source: http://forum.doom9.org/showpost.php?p=1785666&postcount=102
 
Last edited:

Shivansps

Diamond Member
Sep 11, 2013
3,855
1,518
136
@Shivansps do you tried Xaymar encoding test? Are it only loading encoder or put stress in 3D GPU at same time? Can you try solely encoding with Rigaya VCE encoder to see how it performs there, it use old SDK but at least with VCE 2.0 was very stable and shows true performance. Afterburner has a VCE benchmark too which shows performance of each preset.

If lack of power was a real cause of problem it only would happen when card is at full stress with 3D+encoder running at same time, using encoder solely outside any 3D heavy load encoder should show it full performance capability. If even in this scenario performance is low then the performance problem is encoder hardware limitation. Unfortunately AMD has not a encoder status load like NVIDIA does so you can see how much the encoder is stressed like GPU load.

Here a look at NVENC generations performance from NVIDIA notes:
http://i.imgur.com/QPLUGSB.png

Code:
--------------------------------------------------------------------------------
- Speed                                                                        -
--------------------------------------------------------------------------------
DX11: List of adapters:
          0: Device ID: 67DF [Radeon (TM) RX 480 Graphics]
DX11 : Chosen Device 0: Device ID: 67DF [Radeon (TM) RX 480 Graphics]
InitDX11() created HW DX11.1 device
InitDX11() created HW DX11 device
2016-12-02 17:06:31.638     22CC [VCEEncoderTrace] Warning: SetProperty BPicturesDeltaQP already initialized

m_encoder->SetProperty(BPicturesDeltaQP) failed  Error:AMF_ALREADY_INITIALIZED
2016-12-02 17:06:31.638     22CC [VCEEncoderTrace] Warning: SetProperty ReferenceBPicturesDeltaQP already initialized

m_encoder->SetProperty(ReferenceBPicturesDeltaQP) failed  Error:AMF_ALREADY_INITIALIZED
Start: 1 threads

Average (Max, fr#) Encode Latency: 7.3 ms (15.6 ms frame# 5)
Average (Max) Frame size: 14964 bytes (30695 bytes)
Frames processed: 500 Frame process time: 7.3ms FPS: 137.6
Average FPS: 137.6 Combined FPS: 137.6
--------------------------------------------------------------------------------
- Balanced                                                                     -
--------------------------------------------------------------------------------
DX11: List of adapters:
          0: Device ID: 67DF [Radeon (TM) RX 480 Graphics]
DX11 : Chosen Device 0: Device ID: 67DF [Radeon (TM) RX 480 Graphics]
InitDX11() created HW DX11.1 device
InitDX11() created HW DX11 device
2016-12-02 17:06:35.772     13BC [VCEEncoderTrace] Warning: SetProperty BPicturesDeltaQP already initialized

m_encoder->SetProperty(BPicturesDeltaQP) failed  Error:AMF_ALREADY_INITIALIZED
2016-12-02 17:06:35.772     13BC [VCEEncoderTrace] Warning: SetProperty ReferenceBPicturesDeltaQP already initialized

m_encoder->SetProperty(ReferenceBPicturesDeltaQP) failed  Error:AMF_ALREADY_INITIALIZED
Start: 1 threads

Average (Max, fr#) Encode Latency: 9.7 ms (20.2 ms frame# 5)
Average (Max) Frame size: 14853 bytes (27348 bytes)
Frames processed: 500 Frame process time: 9.7ms FPS: 102.8
Average FPS: 102.8 Combined FPS: 102.8
--------------------------------------------------------------------------------
- Quality                                                                      -
--------------------------------------------------------------------------------
DX11: List of adapters:
          0: Device ID: 67DF [Radeon (TM) RX 480 Graphics]
DX11 : Chosen Device 0: Device ID: 67DF [Radeon (TM) RX 480 Graphics]
InitDX11() created HW DX11.1 device
InitDX11() created HW DX11 device
2016-12-02 17:06:41.129      1A8 [VCEEncoderTrace] Warning: SetProperty BPicturesDeltaQP already initialized

m_encoder->SetProperty(BPicturesDeltaQP) failed  Error:AMF_ALREADY_INITIALIZED
2016-12-02 17:06:41.129      1A8 [VCEEncoderTrace] Warning: SetProperty ReferenceBPicturesDeltaQP already initialized

m_encoder->SetProperty(ReferenceBPicturesDeltaQP) failed  Error:AMF_ALREADY_INITIALIZED
Start: 1 threads

Average (Max, fr#) Encode Latency: 17.6 ms (20.4 ms frame# 4)
Average (Max) Frame size: 14789 bytes (27348 bytes)
Frames processed: 500 Frame process time: 17.6ms FPS: 56.7
Average FPS: 56.7 Combined FPS: 56.7

Its close, but its just cant handle 1080p@60fps@quality preset, GPU power has nothing to do with it. Its just a mayor downgrade compared to VCE 3.0.

The ratio of quality:bitrate is the thing that worries me at this point as well, it seems to be really bad, especially a low bitrate.
 

Shivansps

Diamond Member
Sep 11, 2013
3,855
1,518
136
There is AMD shadowplay-esque news coming soon. :)

Im really hope so, im tired of the "its open source, do it yourselft" moto.

BTW, there is a video converter program that supports VCE? Other than MediaExpresso? i need to convert some 4K 10bit HEVC to H264.
 

chummy

Member
Jun 18, 2015
37
1
41
BTW, there is a video converter program that supports VCE? Other than MediaExpresso? i need to convert some 4K 10bit HEVC to H264.

Yes, i say to you test it, Rigaya(developer name). It's called VCEEnc. If you dont like messing with CL, you can download Staxrip which has VCEEnc implemented and you can encode things there, but its using old SDK. Try it out to see how VCE4 performs there. Rigaya developed NVEEnc, QSVEnc and VCEEnc i using their work for a good time and i believe their encoders are the best out there, at least NVENC/QSVenc which has constant updates.

All three hardware encoders are bundled with Staxrip. Take the latest Beta build: http://forum.doom9.org/showthread.php?t=172068
 

el etro

Golden Member
Jul 21, 2013
1,581
14
81
FPS loss on VCE encoder is ~20% because clocks go down. This simply didn't happened on my 7950. Anyway there's recording results here, with 1)no encoder; 2)Software encoder; 3)VCE encoder:



Code:
NO RECORDING
2016-11-30 21:26:11 - Crysis3
Frames: 8649 - Time: 155813ms - Avg: 55.509 - Min: 6 - Max: 88

SOFTWARE RECORDING
2016-11-30 21:30:25 - Crysis3
Frames: 7026 - Time: 152844ms - Avg: 45.968 - Min: 9 - Max: 66

VCE RECORDING
2016-11-30 21:39:01 - Crysis3
Frames: 7599 - Time: 155531ms - Avg: 48.858 - Min: 7 - Max: 70
 

Shivansps

Diamond Member
Sep 11, 2013
3,855
1,518
136
I did not notice clocks going down or FPS loss, at least with GameDVR/Plays.TV, OBS and other recording programs has the memcpy overhead added. Increase the power target to +35 and check again.
 

el etro

Golden Member
Jul 21, 2013
1,581
14
81
Did you notice that in afterburner or some other tool? Very odd.

Afterburner FPS is some 2% higher, quality is OK. Is practical, very much, but OBS as hard it is to engage it gives better quality/performance result.


Code:
2016-12-03 20:31:44 - Crysis3
Frames: 2650 - Time: 53391ms - Avg: 49.634 - Min: 40 - Max: 68



Look at the GPU behavior when recording. Afterburner LOG: http://www.4shared.com/file/6vckb5IAba/HardwareMonitoring.html
 

chummy

Member
Jun 18, 2015
37
1
41
@Shivansps I waiting you test encoding with VCEenc to confirm performance of Xaymar test. Xaymar test is very strange and strange yet. He messed up 290x and 390 test, he used B-frames for 390 and no b-frames for 290x and results became different but both cards have same VCE version. I have lot of experience with VCE 2.0 and when it does 1080p@45fps is running without B-frames but when performance comes at 1080p@65fps then its using b-frames. I dont know exactly why but AMD made things like that for VCE 2.0 where b-frames supposed to drop performance. VCEenc will give you the three presets and b-frames option to try out.

Xaymar says than in their plugin the 2-pass is already released for testing, do you already tried it? I dont know if it will only work for Polaris or all VCE. NVIDIA say in their docs than NVENC 2-pass and adaptive quantization are done by CUDA and not encoder itself, i guess AMD can add this feature with OpenCL for all VCE maybe. Adaptive quantization is very good for dark scenes, take a look for NVENC1 vs VCE2, where NVENC is using AQ-mode+VBR 2-pass while VCE is VBR and no AQ suporting: https://cdn.knightlab.com/libs/juxt...html?uid=e62ba83c-b79b-11e6-8803-0edaf8f81e27

@el etro Afterburner is bad for Quicksync and VCE, it only works with small performance loss in Nvenc, probably some bad implementation from Unwinder there for AMD and Intel. The best recorder for both VCE and Nvenc for performance case is Win10 DVR since MS knows the best way how to reduce overhead in their own API and OS. Win10 DVR is even faster than Shadowplay by very low win but faster.
 

el etro

Golden Member
Jul 21, 2013
1,581
14
81
Tested under WinGameDVR, it gives the worst(performance/quality ratio) result but FPS is a bit higher. But at overall all of them just just sightly better(about 10% more) FPS than with software recording.

OBS with the plugin remains the most efficient option out there, youtube just couldn't show all the capture quality on 1080p. Plays.TV does great except in games like Crysis 3 or Witcher 3, would be my default choice if i didn't want very high fidelity and/or didn't want to play these GPU crushers like C3/W3.


Something is happening to Polaris decoder/encoder to use more power than what my HD 7950 needed to use, FPS loss was nowhere near this huge with it. If someone with a 7970/7950 could give a Crysis 3 test for us, would be nice.
 

Sven_eng

Member
Nov 1, 2016
110
57
61
The new AMD recorder is very efficient, tiny recording loss for fps and no extra power used.
 

Shivansps

Diamond Member
Sep 11, 2013
3,855
1,518
136
@Shivansps I waiting you test encoding with VCEenc to confirm performance of Xaymar test. Xaymar test is very strange and strange yet. He messed up 290x and 390 test, he used B-frames for 390 and no b-frames for 290x and results became different but both cards have same VCE version. I have lot of experience with VCE 2.0 and when it does 1080p@45fps is running without B-frames but when performance comes at 1080p@65fps then its using b-frames. I dont know exactly why but AMD made things like that for VCE 2.0 where b-frames supposed to drop performance. VCEenc will give you the three presets and b-frames option to try out.

Xaymar says than in their plugin the 2-pass is already released for testing, do you already tried it? I dont know if it will only work for Polaris or all VCE. NVIDIA say in their docs than NVENC 2-pass and adaptive quantization are done by CUDA and not encoder itself, i guess AMD can add this feature with OpenCL for all VCE maybe. Adaptive quantization is very good for dark scenes, take a look for NVENC1 vs VCE2, where NVENC is using AQ-mode+VBR 2-pass while VCE is VBR and no AQ suporting: https://cdn.knightlab.com/libs/juxt...html?uid=e62ba83c-b79b-11e6-8803-0edaf8f81e27

@el etro Afterburner is bad for Quicksync and VCE, it only works with small performance loss in Nvenc, probably some bad implementation from Unwinder there for AMD and Intel. The best recorder for both VCE and Nvenc for performance case is Win10 DVR since MS knows the best way how to reduce overhead in their own API and OS. Win10 DVR is even faster than Shadowplay by very low win but faster.

Im sorry i was trying to figure out the correct arguments to encode with it, but right now im busy with other stuff.
 

psolord

Golden Member
Sep 16, 2009
1,917
1,194
136
Tested under WinGameDVR, it gives the worst(performance/quality ratio) result but FPS is a bit higher. But at overall all of them just just sightly better(about 10% more) FPS than with software recording.

OBS with the plugin remains the most efficient option out there, youtube just couldn't show all the capture quality on 1080p. Plays.TV does great except in games like Crysis 3 or Witcher 3, would be my default choice if i didn't want very high fidelity and/or didn't want to play these GPU crushers like C3/W3.


Something is happening to Polaris decoder/encoder to use more power than what my HD 7950 needed to use, FPS loss was nowhere near this huge with it. If someone with a 7970/7950 could give a Crysis 3 test for us, would be nice.

I have a Gigabyte WF3 7950 V2 and Crysis 3. I will be installing it tomorrow for some Watchdogs2 testing.

What do you want me to test in order to help my friend?

I am following this thread silently because I was intrigued. I do quite a lot of recording for my hobbyist Youtube channel, but I was using my 970 and now the 1070 and everything was ok.

So I fired up Doom and did a quick test with GameDVR on the 7950 a few days back and it returned very decent results already. I will see if ReLive will bring anything better.
 
Last edited:
  • Like
Reactions: el etro

el etro

Golden Member
Jul 21, 2013
1,581
14
81
I have a Gigabyte WF3 7950 V2 and Crysis 3. I will be installing it tomorrow for some Watchdogs2 testing.

What do you want me to test in order to help my friend?

I am following this thread silently because I was intrigued. I do quite a lot of recording for my hobbyist Youtube channel, but I was using my 970 and now the 1070 and everything was ok.

So I fired up Doom and did a quick test with GameDVR on the 7950 a few days back and it returned very decent results already. I will see if ReLive will bring anything better.

Wanted to test some heavy games, move-full or not with Crysis 3 or Witcher 3 included.

Encoder turned on, use OBS studio AMD plugin by preference(On settings, put them from "simple" to "advanced", then use "AMD advanced media encoder" "high quality" or "VBR with 90000 average bitrate" on recording, on hotkeys put two unassinged combinations like CTRL+* and CTRL+/ to start recording and stop recording options on the first TAB). Record on games and do a FRAPS bench on it. Check the video quality if it matched the desired result. FPS hit must be at 10% max versus normal FPS, plus video quality must be great as selected.
 

el etro

Golden Member
Jul 21, 2013
1,581
14
81
ReLive tool does wonders.


Code:
2016-12-08 22:47:32 - Crysis3
Frames: 5490 - Time: 87313ms - Avg: 62.877 - Min: 42 - Max: 89

versus what was:

Code:
2016-12-02 21:35:00 - Crysis3
Frames: 72234 - Time: 1367844ms - Avg: 52.809 - Min: 2 - Max: 102

And 50Mbps HEVC is as good as 99Mbps AVC. Surprised to see it. 4min videos take 1GB, but the quality make it all worth.
 

Shivansps

Diamond Member
Sep 11, 2013
3,855
1,518
136
Well my strange lag problem is kinda back with ReLive, is not as bad as what it was with OBS, but it certanly does not happen with GameDVR.
Strange thing is, if i upload a sample video to youtube, youtube will "fix it", still its not really that bad, and HEVC @ 50mbps is well worth it.
You can check this sample ive uploaded https://www.dropbox.com/s/9kab4dh3y0bgi0c/Witcher_3_lag.mkv?dl=0
Its really strange, i use that scene to detect that issue, its not as bad as what it was on OBS, but i really i have no idea of what it is, maybe PCI-E 2.0 problem, por DDR3-1333, no idea.

Im also uploading a Witcher 3 quality comparison video.

As for streaming, is bad, VCE 3.4 is bad in general at very low bitrates, i did compare it to QSV of my 2500K and i dont know who wins, they are just terrible both.

aaaaaand mouse corruption bug is back, so enable pointer trail at minimum.
 

PhonakV30

Senior member
Oct 26, 2009
987
378
136
I really don't know what's your problem but I watched Your Youtube and Image quality is decent.I don't see any issue.If you want Excellent Image quality then you go crazy bit-rate , above 50mbps