mrstorey303
Enthusiast
Enthusiast

Acceptable Horizon Desktop Logon Time?

Hi,

What, in your opinion, is an acceptable logon time for a horizon pool with this config? :

- Windows 10 Enterprise

- Horizon 7.2

- Instant Clone, Floating pool

- User Environment Manager 9.2

- Small Mandatory Profile (~3MB)

- Dedicated UCS + Pure Storage Flash Array hardware

I can't seem to get logon time much below 30secs.  I know the answer to a lot of this is 'it depends’.  Depends on how tolerant the user is, depends on what and how many GPOs are applied, depends on the hardware backing the VDI environment etc.

To me though, 30secs is a bit disappointing.  A user can typically logon to their personal Win10 laptop in less than 5 seconds - I know this is an unfair benchmark to draw comparison, but it’s these kind of comparisons a user will make - users don’t care about the complexities behind delivering non-persistent desktops vs having a pre-built profile sat on a local SSD - one just is ‘faster’ than the other.

For those of you using non persistent View pools, what logon times are you achieving?

Thanks.

Tags (1)
41 Replies
Jasper_Glasberg
Enthusiast
Enthusiast

Hi,

I think your are quite fortunate with such logon times. We have Windows 10 Ent 1607, Horizon 7.2, Floating pool with refresh, UEM 9.2 and mandatory profiles on a Hyperflex platform and get logon times which exceeds 90 seconds. Usually the logon seems to 'wait' on the User Profile Service and/or applying VMWare  UEM FlexEngine policy. I would be very happy (and so would be the users) when the logon only takes 30 seconds!

Regards,
Jasper

mrstorey303
Enthusiast
Enthusiast

OK cool - this is helpful.

I'm drawing (perhaps unfair) comparisons to physical desktop logons, because if even if i don't, our users will.

I guess that's the question - in terms of logon speed, what overhead would you expect a floating VDI pool + UEM + Mandatory profile config to introduce?

If the answer is 3 - 10x, then would seriously consider a different design - but I suspect there's some good general optimisations I'm missing somewhere.

0 Kudos
ArnoM
Enthusiast
Enthusiast

Most of it can be attributed to Modern Apps. Each Modern App also has a database sitting behind it, this will get recreated every time in non-persistent desktops.

The creation of the Start Tiles, which is also controlled by a database, further increases login time.

You might consider the following when using Windows 10 as a VDI OS, if you didn't done this already.

- Windows 10 LTSB (No new feature updates, only security, No Cortana, Store, Edge and Store Apps)

- When using UEM for profile management, use direct flex as much as possible to reduce logon times.

- Use VMware OS Optimization Tool like already mentioned in other replies. There is also a public template coming from LoginVSI with #VDILIKEAPRO https://labs.vmware.com/flings/vmware-os-optimization-tool

- Maybe you can try the Start Menu and Profile options listed here: https://4sysops.com/archives/improving-windows-10-logon-time/

- Remove OneDrive setup

The OneDrive setup executable is in the default user registry key, so this will always be automatically installed with each logon. (Thanks Microsoft)

This applies also for Windows 10 LTSB.

See: How to prevent OneDrive Setup prompt after first Log-In

- Check registry for RUN and Active Setup items

Good luck!

Blog: https://arnomeijroos.com/ Twitter: @ACMeijroos
techguy129
Expert
Expert

With linked clones with UEM + mandatory profiles running Win10 1607 (4cpu, 4GB), we are seeing between 35-45 seconds.  With writable volumes with profile management, we see 25-30 seconds.

0 Kudos
mrstorey303
Enthusiast
Enthusiast

Reviving this thread after recently discovering the now-bundled fling 'Logon Monitor' - and thought the detail, and the accurately timed results it generates could facilitate some decent discussion.

I guess I'm wishfully thinking that one of you will post a sub 15 second result for a windows 10 non-persistent desktop pool, and you could share how you got there.

Here's mine:

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] ****************** Session Summary (User: <username>, Session: 1) *****************

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] Logon Time: 43.88 seconds

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] Logon Start To Hive Loaded Time: 15.07 seconds

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] Logon Start To Classes Hive Loaded Time: 15.30 seconds

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] Profile Sync Time: 0.00 seconds

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] Windows Folder Redirection Apply Time: 0.00 seconds

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] Shell Load Time: 18.77 seconds

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] Total Logon Script Time: 0.00 seconds

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] User Policy Apply Time: 5 seconds

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] Machine Policy Apply Time: 0 seconds

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] Group Policy Software Install Time: 0.08 seconds

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] Free Disk Space Available To User: 21 GB

2017-08-07T17:31:19.500 INFO (0a74-0310) [LogonMonitor::LogSummary] **************************************************************************************

I've worked through various blogs to try and get logon time down - James Rankin has numerous posts relating to referencing a sanitised, 'pre-built' profile (as opposed to making the machine generate a new profile, which would occur during every logon in a non-persistent instant clone pool) - but personally I've not been able to achieve anything below 30 seconds following these guides, and in most cases it's caused issues like breaking the start menu / tile arrangement.  This isn't to discredit the great work he's done, it's just I've not had great success with it.

It also seems that MS understandably don't support the use of profiles that have been hacked around having stuff removed from the user registry and file system...

I should also point out this environment is backed by a brand new, dedicated UCS environment and all-flash Pure Storage array - (40Gbe chassis connectivity + 16Gb FC).  So I don't think hardware is the bottleneck here.

I think I'm either approaching this the wrong way, or it's simply not possible to achieve quick, 10-15 second logon times with WIndows 10 1607 in non-persistent VDI environments.

Hoping that one of you will prove me wrong, and we can all learn from it.

JohnTwilley
Hot Shot
Hot Shot

Win10 LTSB - Tweaked out using everything I could find on the web, and these forums...still twice as long as my Win7 desktop logins.  ;-(

Storage: ExtremeIO SAN (SSDs)

*************************************************************************************

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary] Logon Time: 35.20 seconds

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary] Logon Start To Hive Loaded Time: 4.47 seconds

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary] Logon Start To Classes Hive Loaded Time: 4.86 seconds

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary] Profile Sync Time: 0.00 seconds

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary] Windows Folder Redirection Apply Time: 0.00 seconds

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary] Shell Load Time: 20.17 seconds

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary] Total Logon Script Time: 14.39 seconds

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary] User Policy Apply Time: 7 seconds

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary] Machine Policy Apply Time: 0 seconds

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary] Group Policy Software Install Time: 0.13 seconds

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary] Free Disk Space Available To User: 20 GB

2017-08-17T08:34:01.802 INFO (0cb8-1dcc) [LogonMonitor::LogSummary]

**************************************************************************************

0 Kudos
DEMdev
VMware Employee
VMware Employee

JohnTwilley​, mrstorey303,

Have you considered using UEM's ADMX-based settings instead of GPO user policies? Depending on the number of GPOs, that might be a bit faster.

Also, John: are you really using a logon script, or is that an, umm, "feature" of VMLM?

0 Kudos
JohnTwilley
Hot Shot
Hot Shot

Grrrr.  You found my sore spot.  LOL.

Yes, Server Team has a 'crazy' Kixtart script, just for mapping drives for users...but it is the most complicated one you've ever seen.  (Hospitals)

It's on my to do list. 

I use the UEM ADMX, to replace the slower Group Policy User ADMX policies.

Win10 LTSB: Test User, without many Groups to trigger script slowdowns...still could trim the scripts down.

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] ****************** Session Summary (User: t121896, Session: 1) *****************

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] Logon Time: 23.71 seconds

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] Logon Start To Hive Loaded Time: 5.05 seconds

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] Logon Start To Classes Hive Loaded Time: 5.44 seconds

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] Profile Sync Time: 0.00 seconds

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] Windows Folder Redirection Apply Time: 0.00 seconds

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] Shell Load Time: 10.14 seconds

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] Total Logon Script Time: 9.04 seconds

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] User Policy Apply Time: 6 seconds

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] Machine Policy Apply Time: 0 seconds

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] Group Policy Software Install Time: 0.13 seconds

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] Free Disk Space Available To User: 20 GB

2017-08-17T14:59:13.000 INFO (0cb4-2044) [LogonMonitor::LogSummary] *************************************************************************************

0 Kudos
DEMdev
VMware Employee
VMware Employee

Grrrr.  You found my sore spot.  LOL.

Sorry 🙂

Yes, Server Team has a 'crazy' Kixtart script, just for mapping drives for users...but it is the most complicated one you've ever seen.  (Hospitals)

It's on my to do list.

Any conditions you're missing in UEM that might make it easier to convert some of that craziness to UEM drive mappings?

I use the UEM ADMX, to replace the slower Group Policy User ADMX policies.

Any idea what's going on during User Policy Apply Time: 6 seconds? Or do you have some remaining GPOs for things that UEM does not support?

0 Kudos
Sravan_k
Expert
Expert

It was interesting, where we can collect below log's?

is it from UEM log file?

0 Kudos
JohnTwilley
Hot Shot
Hot Shot

Pre-Horizon 7.1 Users can add the following to their windows desktops: VMware Logon Monitor .

Please see the VMware Logon Monitor Configuration PDF for more information on setup and log location..

lansti
Enthusiast
Enthusiast

I also need to find out this, i had a look in mye UEM log files, but do not see any [LogonMonitor::LogSummary] ... i'm running DEBUG on my log files...

0 Kudos
sjesse
Leadership
Leadership

What are the logon times you guys are seeing without the vdi agents installed and working. For windows 7 the quickest I get is 7 seconds, I'm still working on our windows 10 image so I would love to see the fastest pure windows logon time we should strive for.

0 Kudos
lansti
Enthusiast
Enthusiast

We have logontimes from 25 seconds to 90 seconds...

There is something with "preparing windows" that i need to figure out.

0 Kudos
Markansas
Contributor
Contributor

We are currently getting the following logon times for different desktop configurations:

- Windows 10 LTSB 1607 (non-GPU accelerated): 10-11 seconds

- Windows 10 LTSB 1607 (nVidia M10 GPU accererated): 14-16 seconds

- Windows 10 LTSB 1607 (nVidia M10 GPU accererated) with full application suite (Adobe CC, Office, Statistics, etc): 26-28 seconds

Our environment is similar to yours (Horizon 7.2; UEM 9.2; App Volumes 2.12). GPU drivers have some per-user setup that adds a few seconds no matter what, but we feel this is as good as it is going to get.

We've done the following to achieve this logon time:

  1. Use W10 LTSB - much of the W10 fluff is stripped out
  2. VMware OSOT
  3. Disable as much user experience stuff as you can via Group Policy.
  4. Disable OneDrive and Defender (local group policy is the only way for OneDrive)
  5. Disable as many scheduled tasks as possible (there are tons and tons set to "at user logon")
  6. Use QuickPrep or Instant Clones
  7. Disable scanner redirection and unneeded Horizon client features.

Mark

JohnTwilley
Hot Shot
Hot Shot

That pesky "Welcome Screen" !!

One of my favorite tweaks is DelayedDesktopSwitchTimeout

This is a nice setting to play around with, to show the User Desktop is little sooner than normal.

Some people set it to 0.  I liked setting it to 2.  See what works best for you...

     Ref:  https://support.microsoft.com/en-us/help/940452/the-welcome-screen-may-be-displayed-for-30-seconds--...

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]

"DelayedDesktopSwitchTimeout"=dword:00000002

Markansas
Contributor
Contributor

Ohhh... wow. This shaved a couple seconds off the desktop appearance! That's when our bosses stop the timer.

I set the value to 2, and our generic Win10 images (LTSB 1607 / Office 365 / browsers) is now at 6-7 seconds!

This is nice, thank you JohnTwilley​ !!

-Markansas

0 Kudos
ArnoM
Enthusiast
Enthusiast

Seemed to work for me as well JohnTwilley

Now my logon times are 12-15 seconds instead of 30 on avarage.

Nice one!

Blog: https://arnomeijroos.com/ Twitter: @ACMeijroos
0 Kudos
lansti
Enthusiast
Enthusiast

Its workting, or lets say that we are fooling the user so they think its is fast..

I have set the registry file to 5 seconds, and users see "preparing wondwos" for just 5 seconds, even total logon time is almost 30 seconds.

From the log file:

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] ****************** Session Summary (User: Domain\USER, Session: 1) *****************

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] Logon Time: 27.56 seconds

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] Logon Start To Hive Loaded Time: 0.00 seconds

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] Logon Start To Classes Hive Loaded Time: 3.52 seconds

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] Profile Sync Time: 0.23 seconds

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] Windows Folder Redirection Apply Time: 0.00 seconds

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] Shell Load Time: 9.05 seconds

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] Total Logon Script Time: 1.04 seconds

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] User Policy Apply Time: 12 seconds

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] Machine Policy Apply Time: 0 seconds

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] Group Policy Software Install Time: 0.80 seconds

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] Free Disk Space Available To User: 18 GB

2017-08-22T21:15:14.774 INFO (0cf0-0d8c) [LogonMonitor::LogSummary] ******************************************************************************************

If i remove this registry setting, it will take almost 30 seconds to log in, but it will display "preparing windows"....

But it is great, since users can see that things are happening, and that they are loged on to windows pretty fast.

i have also added some registry keys to turn off visual effects witing UEM, beter performance with a fast startmenu :

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects]

"VisualFXSetting"=dword:00000002

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Serialize]

"StartupDelayInMSec"=dword:00000000

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize]

"EnableTransparency"=dword:00000000

0 Kudos