HQ Player 4 EC modulators and CUDA

Thank you Jussi, I see.
The point for me is I not sure which one of a GTX 1060 (CUDA capability level 6.1) or RTX (CUDA capability level 7.x) will allow me to reach DSD256 oversampling with my Ryzen 3700X CPU.
Today I do not use GPU help and I miss power to reach DSD256 oversampling (even with poly-sync-xxx-2s)…

Which modulator are you trying to use? It certainly should work with the -2s filters, so the filters are likely not the problem. But instead the modulator gets too heavy, and on that GPU cannot help much.

I’m mainly use the heavy ASDM7EC and poly-sync-short-lp with DSD128 upsampling, but my bad^^

DSD512 upsampling:

  • 7EC modulators not usable.
  • xtr filters not usable whatever most of the modulators.

DSD256 upsampling:

  • ASDM7EC modulator cause some drop out whatever the filters (close to get it but…no)
  • With other modulators, any filter can be used (even xtr)

I’m sorry for the mistake, a Ryzen 3700X without GPU (actually, I have a minimal one GT 710 CUDA 2.1) can perform upsampling to DSD512 if you avoid 7EC modulator and xtr filters.(Edit: it is touchy to get an unfaulty listening experience)

DSD256 with 7EC modulator miss a little bit of juice to be really usable, it’s a pity. And you seem to say that a GPU could not change this result.

Hi Pat

I am also using an AMD 7 3700X processor without GPU.

I am upsampling to DSD256 with poly-sinc-xtr-lp without any hickups.
I also can upsample to DSD512 with poly-sinc-ext2 or poly-sinc-xtr-lp-2s.

Please note that I am using a dedicated streamer running Audiolinux, with Roon and HQPlayerEmbedded
Dirk

Hi Dirk, I didn’t know Audiolinux, interesting…
Thanks

You have ASDM7 modulator there, it certainly works on lot of hardware without too much effort. Changing it to ASDM7EC is different thing, because it increases the modulator’s CPU load by roughly 3x.

2 Likes

That is absolutely right, so that’s the reason I stick with ASDM7.
Any chance you are developping a modulator in between, a EC-ligth version maybe?

Dirk

That is pretty difficult to do, it is largely either or thing.

But hopefully you have success with the new AMD optimized build of Embedded.

Hi Jussi, did you add this AMD optimized build also in HQP Desktop release ?

Yes, there’s an equivalent version of HQPlayer Desktop build for Ubuntu Focal.

@Kurt_Niu
It also depends on the type of CPU and its power / power.
The higher the TDP, the more calories the machine produces.
This is what an i5-8400 TDP 65w gives on a fanless machine (6 core no hyperthreading).
After one hour of listening in DSD256 ASDM7EC (Win10 LTSC / 40 process / CPU 55%)

1 Like

Sorry to bring up an old topic but i’m really having trouble making CUDA work with my machine. I have an i5 6600 3.3GHZ w/ 20 gb ram and Ubuntu 22.04 installed.
Am running Hqplayer 4 via Roon. I decided to try cuda with my GTX970, but each time I start playing any track, it quickly occupies the 4GB of the Used Dedicated Memory on the graphic card and crashes HQPlayer, nothing I can do seems to make HQplayer want to work with cuda on my machine at all. Please let me know if there are any specific details I need to upload to help me with the trouble shooting.

Do you have the latest NVIDIA driver installed for your GPU ?

Are you ticking or greying the CUDA selection box at the bottom of the HQ Player settings ? If ticking, try greying.

1 Like

Hi Bob, thanks for the quick response. yes, I have nvidia-driver-530 installed. Greying or Ticking Cuda both results in crashing the software upon start up.

Let’s flag @jussi_laako and see if he has any suggestions.

Thanks Bob, Fingers crossed it’s solvable. I’ve tried various ways to get around it crashing, but it seems the lead up to the crash is always the same… the dedicated memory used on the GPU starts ramping up until 100% then crash. HQplayer uses from 5GB to 14GB of ram. So there is ample ram space available.

Hi Jussi,
I’ve attached a log file of the crash below for your reference.

 2023/05/10 01:40:18 Starting...
  2023/05/10 01:40:18 Signalyst HQPlayer 4 Desktop v4.22.0
  2023/05/10 01:40:18 Engine selected: 
  2023/05/10 01:40:22 Restore GUI state
  2023/05/10 01:40:22 CUDA convolution offload requested
  2023/05/10 01:40:22 MP3 decoders:
  2023/05/10 01:40:22 	AVX
  2023/05/10 01:40:22 	x86-64
  2023/05/10 01:40:22 	generic
  2023/05/10 01:40:22 	generic_dither
  2023/05/10 01:40:22 Supported MP3 decoders:
  2023/05/10 01:40:22 	AVX
  2023/05/10 01:40:22 	x86-64
  2023/05/10 01:40:22 	generic
  2023/05/10 01:40:22 	generic_dither
  2023/05/10 01:40:22 Current MP3 decoder: generic_dither
  2023/05/10 01:40:22 libDSP version 29.6.0
  2023/05/10 01:40:22 HQPlayer Engine version 4.62.2
  2023/05/10 01:40:22 CUDA offload: convolution
  2023/05/10 01:40:22 Processors physical=4 logical=4 performance=4 efficiency=0 groups=1 packages=1 nodes=1
  2023/05/10 01:40:22 Processor caches:
  2023/05/10 01:40:22 	level=1 group=0 size=32kB
  2023/05/10 01:40:22 	level=2 group=0 size=256kB
  2023/05/10 01:40:22 	level=3 group=0 size=6144kB
  2023/05/10 01:40:22 Small cache, using small block size
  2023/05/10 01:40:22 	level=1 group=0 size=32kB
  2023/05/10 01:40:22 	level=2 group=0 size=256kB
  2023/05/10 01:40:22 	level=1 group=0 size=32kB
  2023/05/10 01:40:22 	level=2 group=0 size=256kB
  2023/05/10 01:40:22 	level=1 group=0 size=32kB
  2023/05/10 01:40:22 	level=2 group=0 size=256kB
  2023/05/10 01:40:22 Number of processor cores: 4
  2023/05/10 01:40:22 Number of performance core groups: 1
  2023/05/10 01:40:22 Core mask: 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111
  2023/05/10 01:40:22 CPU brand name: GenuineIntel
  2023/05/10 01:40:22 Core pinning enabled
  2023/05/10 01:40:22 Pool threads: 4
  2023/05/10 01:40:22 Initial parallel threads: 4
  2023/05/10 01:40:22 Number of logical cores: 4
  2023/05/10 01:40:22 Core pinning:
  2023/05/10 01:40:22 	0: [0:0] 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011
  2023/05/10 01:40:22 	0m: [0:0] 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001
  2023/05/10 01:40:22 	1: [0:0] 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001100
  2023/05/10 01:40:22 	1m: [0:0] 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100
  2023/05/10 01:40:22 DSP thread pools disabled
  2023/05/10 01:40:22 DSP pipelines enabled
  2023/05/10 01:40:22 Pipelined engine enabled
  2023/05/10 01:40:22 DirectSDM disabled
  2023/05/10 01:40:22 Audio engine: alsa
  2023/05/10 01:40:22 Output set channels: 2 (2)
  2023/05/10 01:40:22 Output DAC bits: 20
  2023/05/10 01:40:22 Output supports DSD with any base rate
  2023/05/10 01:40:22 asoundlib version: 1.2.6.1
  2023/05/10 01:40:22 ALSA output device: hw:CARD=Audi,DEV=0
  2023/05/10 01:40:22 ALSA output control element: Clock Source 41 Validity
  2023/05/10 01:40:22 ALSA output control element: PCM Playback Switch
  2023/05/10 01:40:22 ALSA output control element: PCM Playback Volume
  2023/05/10 01:40:22 ALSA output control element: Playback Channel Map
  2023/05/10 01:40:22 ALSA output mixer element: PCM
  2023/05/10 01:40:22 ALSA output access mode: RW_INTERLEAVED
  2023/05/10 01:40:22 ALSA output PCM format: S32_LE
  2023/05/10 01:40:22 ALSA output PCM bits: 32
  2023/05/10 01:40:22 ALSA output PCM physical width: 32
  2023/05/10 01:40:22 ALSA output PCM rates: 44100 - 1536000
  2023/05/10 01:40:22 ALSA output rate available: 44100
  2023/05/10 01:40:22 ALSA output rate available: 48000
  2023/05/10 01:40:22 ALSA output rate available: 88200
  2023/05/10 01:40:22 ALSA output rate available: 96000
  2023/05/10 01:40:22 ALSA output rate available: 176400
  2023/05/10 01:40:22 ALSA output rate available: 192000
  2023/05/10 01:40:22 ALSA output rate available: 352800
  2023/05/10 01:40:22 ALSA output rate available: 384000
  2023/05/10 01:40:22 ALSA output rate available: 705600
  2023/05/10 01:40:22 ALSA output rate available: 768000
  2023/05/10 01:40:22 ALSA output rate available: 1536000
  2023/05/10 01:40:22 ALSA output DSD format: DSD_U32_BE
  2023/05/10 01:40:22 ALSA output DSD bits: 32
  2023/05/10 01:40:22 ALSA output DSD physical width: 32
  2023/05/10 01:40:22 ALSA output DSD rates: 1411200 - 49152000
  2023/05/10 01:40:22 ALSA output rate available: 2822400
  2023/05/10 01:40:22 ALSA output rate available: 3072000
  2023/05/10 01:40:22 ALSA output rate available: 5644800
  2023/05/10 01:40:22 ALSA output rate available: 6144000
  2023/05/10 01:40:22 ALSA output rate available: 11289600
  2023/05/10 01:40:22 ALSA output rate available: 12288000
  2023/05/10 01:40:22 ALSA output rate available: 22579200
  2023/05/10 01:40:22 ALSA output rate available: 24576000
  2023/05/10 01:40:22 ALSA output rate available: 45158400
  2023/05/10 01:40:22 ALSA output rate available: 49152000
+ 2023/05/10 01:40:22 ALSA output backend initialized
  2023/05/10 01:40:22 Output set channels: 2 (2)
  2023/05/10 01:40:22 Normal buffers
  2023/05/10 01:40:22 Volume max: -3
  2023/05/10 01:40:22 Volume min: -12
  2023/05/10 01:40:22 PCM gain compensation: 0.691831 (-3.2000000000000002 dB)
  2023/05/10 01:40:22 Set volume: -12 +
  2023/05/10 01:40:22 Automatic rate family enabled
  2023/05/10 01:40:22 Full pause processing

I suspect you have something rather big and heavy selected for example in the DSD Source Settings dialog.

Hi Jussi,
Please see attached settings for my selection. Please advice on what I could ammend, at the moment, with these settings, i get no stutter or drop outs.

Screenshot from 2023-05-10 12-04-39

Possibly unrelated issue, but I see you have ticked 48k DSD and selected a bit rate/limit of 48k x 256.

What type of DAC are you using ? Are you sure it has 48k DSD capability ?