View Single Post
Old 8th July 2014, 04:39   #26820  |  Link
generalmx
Registered User
 
Join Date: Aug 2008
Posts: 11
My results with R9 290X and various observations

First I'd like to thank madshi and the community for such an excellent product

I have a watercooled R9 290X that's pretty consistent with its clocks (no overclock yet, stable at 1000MHz) and even this beast of a card can't handle everything without the occasional frame drop.

Specs
Windows 8.1 (Update 1) 64-bit (Pro w/ WMC)
Haswell Xeon 3.5GHz (w/ HT) 16GB DDR3 RAM
AMD Radeon R9 290X 4GB GDDR5
AMD Driver version: 14.16 (no difference with 14.14)

madVR version: 0.87.10
Software Used: MPC-HC "Lite" (*), MPC-BE (*), LAV Filters 0.62.0, ReClock 1.8.8.4
* - All internal filters disabled.

madVR & ReClock Configuration
Code:
ReClock
- WASAPI Exclusive
- Assume source is 30 FPS or Refresh Rate / 2
- Pre-Buffer: 100ms
- Quality: Best Sinc Interpolation
- Added MPC-BE to ReClock's "load always" since it's not added by default.
(all other defaults)

madVR 0.87.10 Configuration
(If not mentioned, option is disabled.)

Deinterlacing: 
- Automatically activate deinterlacing when needed
-- if in doubt, deactive deinterlacing
- Only look at pixels in the frame center.

artifact removal:
- reduce banding artifacts
-- default debanding strength: low
-- strength during fade in/out: medium

Scaling Algorithms (All)
-- image downscaling: Catmull-Rom w/ Anti-Ringing Filter + Scale in Linear Light

Scaling Algorithms: <=360p
-- image upscaling: Jinc, 3 taps w/ Anti-Ringing Filter
-- chroma upscaling: NNEDI3, 256 neurons
-- image doubling: Always Double Luma, 64 neurons + Always Double Chroma, 16 neurons (*)

Scaling Algorithms: 360p<=480p
-- image upscaling: Jinc, 3 taps w/ Anti-Ringing Filter
-- chroma upscaling: NNEDI3, 128 neurons
-- image doubling: Always Double Luma, 32 neurons + Always Double Chroma, 16 neurons (*)

Scaling Algorithms: 480p<=720p
-- image upscaling: Jinc, 3 taps w/ Anti-Ringing Filter
-- chroma upscaling: NNEDI3, 32 neurons
-- image doubling: Always Double Luma, 16 neurons + Always Double Chroma, 16 neurons (*)

Scaling Algorithms: 720p<=1080p
-- image upscaling: DXVA2
-- chroma upscaling: NNEDI3, 16 neurons
-- image doubling: (None)

* Note: AMD interop hack doesn't seem to make a difference for my tests.

General Settings
- Delay playback start until render queue is full + delay playback start after seeking, too.
- Use OpenCL to process DXVA NV12 surfaces.
- Use separate device for DXVA processing.
- CPU/GPU queue size: 24

windowed mode settings:
- 16 frames in advance
- (rest are set to defaults)

trade quality for performance: ALL disabled

Smooth Motion
- Enable smooth motion frame rate conversion 
-- ...or if the display refresh rate is an exact multiple of the movie frame rate.

Dithering (< 720p): Ordered Dithering
Dithering (>= 720p): Error Diffusion #2

Monitor
HP LP2465 (1920x1200 S-PVA panel)
- Properties: PC Levels (0-255), 8-bit (or higher)
- Calibration: Disabled + Disable GPU gamma ramps.
- Display Modes: (None)
- Color & Gamma: 0/disabled
AMD Catalyst Configuration
- Enable AMD Video Quality features in selected video player applications: UNCHECKED (disabled)
- Enforce Smooth Video Playback: UNCHECKED (disabled)

720p Hi10P Average Stats:
- Rendering (madVR): 28ms
- Interop (madVR): 10ms
- Present (madVR): 0.10ms
- GPU Utilization (HWiNFO): 58% (*)
- D3D Usage (HWiNFO): 23% (*)
- Time Spent with very high (>90%) GPU Usage: 28% (*)
Note: No dropped frames over this report.

(*) I have a super-fancy spreadsheet I made to calculate all of this.

I have tried a large number of different settings from suggestions online and in this thread, and so far these have shown to be the best -- however there are plenty of different source material (I'm mostly testing on anime) that trips it up. Here's some especially weird stuff:

* My settings don't seem to like ReClock set to 24 FPS (for ~24 FPS source), causing more to significantly more dropped frames. I have two monitors connected in an "Extended" desktop: 24" 1200p S-PVA workstation monitor and a crappy 32" 1080p TN HDTV. Both can support 24Hz natively, especially the 1080p, though I must use CRU to add 24Hz for the 1200p, however, even the 1080p set to 24Hz causes significantly more dropped frames (same with 48Hz). Just to check if it was the case of using Windowed and two monitors running different resolutions, I set both monitors to 1080p@24 and the same problem occurred. But I'm guessing the reason it's totally unplayable if Monitor #2 (1080p, Secondary) is set to 1080p@24 and Monitor #1 (1200p, Focus) is still set to 1200@60 is how Windows handles refresh rate differences like that.

* Full-Screen Exclusive Mode gives more to significantly more dropped frames for me, and can introduce artifact errors. Again, note that I can't get EDID for Monitor #2 (1080p), and it's using some generic PnP driver, and Monitor #1 is a 1200p workstation monitor that doesn't support 24Hz (or 48Hz) without hackery.

Hence I've settled on ReClock with 30 FPS or Refresh Rate / 2, which requires Smooth Motion enabled or else I'll get significant judder on anime pan & scan.

Note on Pan & Scan in Anime: I've found certain sources -- say, HorribleSubs -- often have low bitrate sources that will have problems on pan&scan no matter what you do; only outright frame-doubling really helps here (SVP, CUVID, etc.).

On Windows Power Profile: I'd like to stress that you should be using "High Performance" if you're having any sort of trouble, NOT just changing settings under "Balanced". Process Lasso is an example of a program that will set the power profile for you based on what programs are running.

Last edited by generalmx; 8th July 2014 at 04:40. Reason: Formatting.
generalmx is offline   Reply With Quote