DCV setup

I am running DCV now on a testbox with a 3090, flame works too, but it took me some trial and error to do so - so I would like to compile a sort of reference guide on implementing DCV on flame linux boxes (bare metal) with nvidia gpus for myself and for everyone else. (headless in my case)

I am sure some people are way ahead of me, but i just want to get this discussion started so on my future attempt #2 i can do it more correctly next time and write it all down step by step

#1) Installing it was the first challenge, what components do I need from where, there are like different install scripts - agent, server , web, broker.., but what do we really need to install?

#2) sessions, i need to manually start a session , –virtual sessions tripped me up as they “work” but the nvidia gpu doesnt see a connected display and then flame refuses to launch. So we need a “console” session - i guess there should be a way to just keep one session open the whole time? not sure . We only use local accounts on these boxes.

#3) XORG, as always virtual displays if running headless are annyoing / but thanks to this post here i sorted it pretty quickly, i just wonder is there a nvidia-xconfig command we can run to set this up? I remeber this from the HPZ days, same thing.

#4) next up would be actually sorting the broker service, anyone using this for remote connections?

Id like to hear anything about DCV you got up your sleeves to learn more about it - like what client hardware I need - should I install dcv first then flame for wacom drivers?

1 Like

Why are you choosing DCV over Teradici? In my experience the performance of DCV was kind of terrible. The only advantage with DCV is it still uses the normal window manager so hybrid WFH/RTO was a non-issue, unlike with Teradici where you have to enable/disable.

It’s hard to beat free for a lot of people.

1 Like

word on the street is that its better than anyware and i didnt feel like dealing with HP :joy:

thats really all , i dont get it for free as it doesnt run on aws.

1 Like

I find Teradici to be easier to setup nowadays. You can purchase it right on their website. But it is more expensive than DCV. Anyway check the stuff I sent you and see if it helps. If you want any recommends for setting up Teradici happy to help there too.

I’ve been thinking of making a You’ve Been episode going over how we use Teradici, and the clever way in which we made our own “Broker”, to get around the single IP issue.

2 Likes

Also you should set this properly so that DCV uses the native resolution of the client, and not the resolution of the host, which is what all that EDID shit was about.

enable-console-scaling true or false - DWORD (32-bit) session Linux: false - Windows: 0 Enable scaling the framebuffer to support arbitrary resolutions (Linux console sessions on Xorg only) — Permits arbitrary resolutions on console sessions by setting the XRandR transform from the framebuffer to the scan-out buffer accordingly. If set to ‘false’ (which is the default) the legacy behavior is to be expected (only resolutions directly supported by the locally plugged-in displays are permitted). If set to ‘true’ the client can request arbitrary resolutions on the server irrespective of whether the physically connected displays support them or not. — Available since version 2024.0-17979.

I’d love to see that.

We had a similar experience with DCV and went back to HP Anyware after a month of testing.

actually disabled this as flame dies when you change the resolution mid session and dragging the remote window around causes that lol

yea i should evaluate both again, just got word from a large company that did the switch to dcv and they where super happy, funny to hear the absolute opposite here !

why would you not have DCV full-screen always?

are they windows based? Performance might be alot better for DCV on that.

No linux based mostly.

hmm been getting weird blue flashing lines with dcv , very distracting… maybe i do need to go anyware :frowning:

It used to be anywhere but Anyware. And now it is Nice, not so nice.

Teradici has gotten a lot better an there are a few configuration settings that I found totally changes my experience, where I’m contemplating even going Teradici within the office.

What’s your favorite config? Been using this for a bit. haven’t looked at tweaks in years.

` sudo sh -c 'cat << EOF >> /etc/pcoip-agent/pcoip-agent.conf

pcoip.desktop_session = gnome

pcoip.maximum_frame_rate = 60

pcoip.max_link_rate = 750000

pcoip.device_bandwidth_floor = 5000

pcoip.ultra = 1

pcoip.enable_build_to_lossless = 1

pcoip.server_clipboard_state = 1

pcoip.use_host_autorepeat = 2

pcoip.enable_collaboration = 1

pcoip.max_collaborators = 5

pcoip.enable_collaboration_input_control = 1

EOF’ `

2 Likes
[desktop]

pcoip.desktop_session = gnome


[ultra]

pcoip.ultra = 1


[lossless]

pcoip.enable_build_to_lossless = 1


[quality]

pcoip.minimum_image_quality = 55

pcoip.maximum_initial_image_quality = 85

pcoip.yuv_chroma_subsampling = 0

#pcoip.frame_rate_vs_quality_factor = 05


[clipboard]

pcoip.server_clipboard_state = 2


[bandwidth]

pcoip.max_link_rate = 100000

pcoip.device_bandwidth_floor = 85000


[keyboard]

pcoip.use_host_autorepeat = 1


[framerate]

pcoip.maximum_frame_rate = 60


[collaboration]

#pcoip.enable_collaboration = 0

#pcoip.max_collaborators = 1
3 Likes

It is so counter intuitive that setting Ultra to GPU and hence Auto, totally sucks (frame rate is terrible) and is un-usable. CPU is the only option here, although on Mac, we use Auto and it is fine.

The key settings that really changed my experience are the max_link_rateand device_bandwidth_floor. Setting a high floor value, allows Teradici to just spit out signal, without the hesitation of it trying to figure out how much bandwidth is available and the “ramp up”. Also for us, 4:2:0 color fidelity is not acceptable, so we force 4:4:4. When Ultra is set to CPU, this will be in RGB, when GPU it is YUV, and when set to Auto, and it switches on the fly between GPU/CPU, you get visual annoying RGB ←→ YUV flipping which sucks.

1 Like

also…. everyone running Teradici should be aware of the Quality Slider I made for it. Quite useful.

3 Likes

So you are using CPU decode and encode with ultra to get a nice RGB 4:4:4? hows that performance wise - what do you need for the clients? I suppose a macbook air m3 or whatever cant handle 2x UHD 60 fps 4:4:4 in software ?

When I hold spacebar + ctrl , then release ctrl but keep pressing spacebar on the client, the spacbar is not beign pressed anymore on the host, which makes navigating Flames ui very difficult.

is there a workaround for these multi-key-hotkeys to work better with DCV?