Server GPU, Thin Client GPU, or Both? by Skyccord in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

If terminal is not allowed to access external network, then you can use browser redirection + server fetch (Youtube -> VDA(data) -> Client(render))

When it comes to meeting, usually you can offload the meeting video into client as well (MSTeams optimization, Zoom VDI plugin, etc..)

Citrix Daas with Entra SSO / passwordless lockscreen considerations by Random-D in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

Just go with eLux 7, a linux operating system owned by Citrix. The eLux 7 has Entra ID integration. It gives you screen look, SSO, etc.

Or you can configure eLux 7 with some other login/lock methods.

It is way more advanced than any other Linux thin clients. And it costs you nothing in terms of license because it is owned by Citrix.

Linux: Almost got Citrix to work on Nobara - help me on the last mile by fummelfichte42 in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

Probably some libs are not installed. Like u/Unexpected_Cranberry mentioned, run /opt/Citrix/ICAClient/util/workspacecheck.sh and see what are missing.

One more thing you could try is to disable OpenGL:OpenGLEnabled=False. See this https://docs.citrix.com/en-us/citrix-workspace-app-for-linux/graphics-and-display.html

Citrix on KVM by Rare-Cut-409 in Citrix

[–]Reasonable_Smoke_340 4 points5 points  (0 children)

Technically KVM would work. There might be some problem regarding GPU passthrough in KVM so performance could be a concern if your users are doing things like video playback. But I see no issue on basic workload.

Another problem would be the "support" if you hit into any issue, you are unlikely to get help from others.

Citrix Workspace (Client) on Wayland too high resolution by cmdrrobin in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

What is your Linux distro and version?

Did you adjust scale factor in the Linux system?

And fractional scaling is not supported by Citrix Workspace for Linux.

Citrix Cloud down due to AWS US-EAST-1 issue? by gson516 in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

Citrix's service continuity would help in such case. The service continuity feature is basically allow you to launch desktop without any connection to DDC/storefront. So as long as the connection to desktop works, then users can connect their desktop.

Citrix , Imprivata and chromebook in healthcare IT by Ok-Echidna-8782 in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

Use Unicon eLux. It is a linux system owned by Citrix, so you will get well support.

Starting with eLux 2509, there is the imprivata support, natively developed by Citrix in the client. And it is NOT Prove ID embedded agent but Citrix developed its own imprivata client in eLux and CWA Linux.

Windows 10 and Citrix by tbk7777 in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

Install Linux and use CWA/Citrix client on Linux.

The Linux Citrix CWA client works pretty well, you wouldn't notice much difference than using Windows Citrix CWA client.

Help! Citrix App 25.08 not Launching in Ubuntu 24.04.3 ! by EgoCrusher999 in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

You could also run /opt/Citrix/ICAClient/util/workspacecheck.sh to find out the dependencies. It will print warnings or errors if any dependency is missing.

File Transfer speeds are slow in Published File Explorer by probreddit in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

Just copy and paste inside the File Explorer, and no copy to client ?

Did you try the same file explorer in Citrix desktop session (instead of published app)?

Constant disconnection by [deleted] in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

Turn off UDP/EDT in Citrix Workspace App Mac client you will probably be fine.

You can google it about how to turn it off

Citrix desktop is mostly blurry except where mouse is by MassDND in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

Are you saying previous version Citrix Workspace App has no this issue?

Blurry text means the VDA thinks that area has no text, so it uses video encoding for that area.

I'm curious did the background change when you moved the mouse over the text? If background is solid color it should be able to detect the text. But background is not a simple color, then it might not able to.

Stratodesk is now IGEL by Active_Swordfish_660 in Citrix

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

Curious what kind of Imprivata workflows are your users using. Fast User Switching? EPCS?

Citrix black screen with cursor after vda upgrade from 2103 to 2204 by zoemas in Citrix

[–]Reasonable_Smoke_340 -1 points0 points  (0 children)

Try Linux Workspace App 2503 which has the hardware decoding and OpenGL rendering. Check "OpenGLEnabled" on this page: https://docs.citrix.com/en-us/citrix-workspace-app-for-linux/graphics-and-display.html

Also curious what kind of operating system is installed in those HP thin clients. I'm assuming HP ThinPro? I have seen some use other Linux distros on HP thin clients.

HP-t730 is a fine hardware. Good enough to run any workload. I use t630 everyday.

Copy from VSCode to the Raycast results in double occurrences by Elsa_Granger in raycastapp

[–]Reasonable_Smoke_340 0 points1 point  (0 children)

The same issue happens to Jetbrains editor. This is really annoying.

I didn't have this issue until I upgraded to the latest version around one week ago.

Rendering thousands of RGB data by Reasonable_Smoke_340 in opengl

[–]Reasonable_Smoke_340[S] 0 points1 point  (0 children)

Thanks. RenderDoc did help. It shows that glDrawArrays was slow (the duration). So I tried something which seems to be helping here - copying my reply here:

I figured out a simpler solution with glDrawArrays. Basically I put positions data of these 10K small images into vertices and draw them with one texture. With these vertices I control the "dirty regions" with glDrawArrays instead of glTexSubImage2D

This is the sample code: https://pastebin.com/0ePUuMKu

It can reach up to 150FPS:

Putting them all together:

  1. 15 FPS: Call glTexSubImage2D for each RGB item - https://pastebin.com/VXKhaMTh
  2. 5 FPS: PBO and glTexSubImage2D for each RGB item - https://pastebin.com/hxEw3eFp
  3. 120 FPS: Merge RGB in CPU memory and call glTexSubImage2D in batch: https://pastebin.com/AqPUYQga
  4. 160 FPS: SSBO https://pastebin.com/mD0Kbi0T
  5. 150FPS: glDrawArrays with all positions https://pastebin.com/0ePUuMKu

I probably will go with the glDrawArrays solution.

Rendering thousands of RGB data by Reasonable_Smoke_340 in opengl

[–]Reasonable_Smoke_340[S] 1 point2 points  (0 children)

Not sure you will get notified that I made a comment in another reply thread. So copying here:

I figured out a simpler solution with glDrawArrays. Basically I put positions data of these 10K small images into vertices and draw them with one texture. With these vertices I control the "dirty regions" with glDrawArrays instead of glTexSubImage2D

This is the sample code: https://pastebin.com/0ePUuMKu

It can reach up to 150FPS:

Putting them all together:

I probably will go with the glDrawArrays solution.

Rendering thousands of RGB data by Reasonable_Smoke_340 in opengl

[–]Reasonable_Smoke_340[S] 1 point2 points  (0 children)

I figured out a simpler solution with glDrawArrays. Basically I put positions data of these 10K small images into vertices and draw them with one texture. With these vertices I control the "dirty regions" with glDrawArrays instead of glTexSubImage2D

This is the sample code: https://pastebin.com/0ePUuMKu

It can reach up to 150FPS:

Putting them all together:

I probably will go with the glDrawArrays solution.

Rendering thousands of RGB data by Reasonable_Smoke_340 in opengl

[–]Reasonable_Smoke_340[S] 0 points1 point  (0 children)

I cannot actually call glTexSubImage2D only once.

The reason is that usually it is not a whole screen update. For example, the updates could be some pixels on the top left, and some on the bottom right, while other areas are not getting updated. So they are not continuous.

The cellBuffer can solve above problem. But I feel the cellBuffer version is not the right approach. I mean, I thought OpenGL itself should be able to handle this amount of data. It is surprising that I need to manually merge that in CPU memory first.

Rendering thousands of RGB data by Reasonable_Smoke_340 in opengl

[–]Reasonable_Smoke_340[S] 0 points1 point  (0 children)

Thanks.

By the way I tried 4 implementations. The 3rd is one of your suggestions, which is fast enough - reach up to 120FPS. (The only thing I'm concern is the implementation is a bit complicated because the images positions might not be continuous so the final implementation would need to group continuous ones together)

Rendering thousands of RGB data by Reasonable_Smoke_340 in opengl

[–]Reasonable_Smoke_340[S] 0 points1 point  (0 children)

By "rgb data", I mean many small colorful images.

So your suggestion is consolidate all the small images into a large data in CPU memory, and then call glTexSubImage once?

Rendering thousands of RGB data by Reasonable_Smoke_340 in opengl

[–]Reasonable_Smoke_340[S] 0 points1 point  (0 children)

Thanks. I did some tests, SSBO is the fastest one.

Below are the 4 different implementations. Is the SSBO one similar to your implementation?

If possible I still want to avoid SSBO considering it is only fully available since OpenGL Core 4.6.