optimisation tse

53
Terminal Server & XenApp Tuning Tips By Pierre Marmignon @ 7:46 PM :: 19478 Views :: 8 Comments :: :: XenApp , Tuning , Terminal Server , Tech Tips Working in SBC environments for some years now I've used some best practices documents like the well known Methodology In a Box (MIAB) from Douglas Brown or the MF Tuning Tips from Rick Delingher . These documents, although really pertinent, are now quite outdated and do not include the latest OS and XenApp releases. The purpose of this article is an attempt to summarize all Tuning Tips I've found (and also that I'm using) and describe the target operating system / XenApp version(s) they're working for. Do not hesitate to give us your comments for this Article to be updated with your experience and feedback. Please note that these informations are provided "as is" and that using these tips is at your own risks. Please also Note that all REG_DWORD values are provided in decimal format. All Registry Hives are provided for x86 platforms. For x64 Platforms, do not forget to add "WoW6432Node" if hive is in HKLM\Software. Operating System Tuning for XenApp / Terminal Services Registry Hive Value Typ e Data Pur pos e(s ) Plat form (s) HKLM\SYSTEM\ CurrentControl Disabl eDHCPMe RE G_D 1 Dis abl W2K / W2

Transcript of optimisation tse

Page 1: optimisation tse

Terminal Server & XenApp Tuning TipsBy Pierre Marmignon @ 7:46 PM :: 19478 Views :: 8 Comments :: :: XenApp, Tuning, Terminal Server, Tech Tips

Working in SBC environments for some years now I've used some best practices documents like the well known Methodology In a Box (MIAB) from Douglas Brown or the MF Tuning Tips from Rick Delingher.

These documents, although really pertinent, are now quite outdated and do not include the latest OS and XenApp releases.

The purpose of this article is an attempt to summarize all Tuning Tips I've found (and also that I'm using) and describe the target operating system / XenApp version(s) they're working for.

Do not hesitate to give us your comments for this Article to be updated with your experience and feedback.

Please note that these informations are provided "as is" and that using these tips is at your own risks.

Please also Note that all REG_DWORD values are provided in decimal format.

All Registry Hives are provided for x86 platforms. For x64 Platforms, do not forget to add "WoW6432Node" if hive is in HKLM\Software.

Operating System Tuning for XenApp / Terminal Services

Registry Hive ValueTyp

eData

Purpose(s

)

Platform(s)

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\parameters

 DisableDHCPMediaSense

 REG_DWORD

 1

Disables Windows AutoSense

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\parameters

 KeepAliveTime

 REG_DWORD

 60000

Determines how often TCP sends keep-alive trans

 W2K / W2K3 / W2K8

Page 2: optimisation tse

missions

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\parameters

 KeepAliveInterval

 REG_DWORD

 100

Determines how often TCP repeats keep-alive transmissions when no response is received

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\parameters

 TcpMaxDataRetransmissions

 REG_DWORD

 10

Determines how many times TCP retransmits an unacknowledged data segment on an existing connection

 W2K / W2K3 / W2K8

HKLM\SOFTWARE\microsoft\Windows NT\CurrentVersion\Winlogon

 WaitForNetwork

 REG_DWORD

 1 Enables Netlogon to wait for

 W2K3 / W2K8

Page 3: optimisation tse

the Network to be active

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug

 Debugger REG_SZ

 Nothing ("")

Disables Dr Watson

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\wuauserv

 Start

 REG_DWORD

 4

Disables Windows Update Service

 W2K / W2K3 / W2K8

HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects

 VisualFXSetting

 REG_DWORD

 2

Sets Visual effects to "Optimize for Best Performances"

 W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Print\Providers

 EventLog

 REG_DWORD

 0

Disables Logging of Print Events

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\Spooler

 ErrorControl

 REG_DWORD

 2 Disable Spooler errors from being displayed on

 W2K / W2K3 / W2K8

Page 4: optimisation tse

the server console

HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System

 DontDisplayLastUserName

 REG_DWORD

 1

Removes Display of Last Username

 W2K / W2K3 / W2K8

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

 DeleteRoamingCache

 REG_DWORD

 1

Deletes the Roaming Profiles cache after Logoff

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Windows

 ErrorMode

 REG_DWORD

 2

Disables Console error Messages

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Application

 MaxSize

 REG_DWORD

 2097152

Sets Application Event's Log maximum size to 2048

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Application

 Retention

 REG_DWORD

 0

Sets Circular Events logging

 W2K / W2K3 / W2K8

Page 5: optimisation tse

HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Security

 MaxSize

 REG_DWORD

  2097152

Sets Security Event's Log maximum size to 2048

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Security

 Retention

 REG_DWORD

 0

Sets Circular Events logging

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\EventLog\System

 MaxSize

 REG_DWORD

  2097152

Sets System Event's Log maximum size to 2048

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\EventLog\System

 Retention

 REG_DWORD

 0

Sets Circular Events logging

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

 fDisableCpm

 REG_DWORD

 1 Disables Terminal Server Client Printers Mapping.

 W2K / W2K3 / W2K8

Page 6: optimisation tse

This ensures that admin won't upload print drivers when connecting to any server for Administration purposes

HKLM\SYSTEM\CurrentControlSet\Services\CiSvc

 Start

 REG_DWORD

 4

Disables the Indexing Service

 W2K / W2K3

HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon

 BufferPolicyReads

 REG_DWORD

 1

Optimizes GPO Execution when Opportunistic Locks are Disabled

 W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server

 IdleWinStationPoolCount

 REG_DWORD

 4 Raises the Number of ICA / 

 W2K

Page 7: optimisation tse

RDP Listeners

HKLM\System\CurrentControlSet\Control\Keyboard Layout

 IgnoreRemoteKeyboardLayout

 REG_DWORD

 0

Disabled the Ignore of remote keyboards layouts

 W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\FileSystem

 NtfsDisableLastAccessUpdate

 REG_DWORD

 1

Sets NTFS not to update the last-access timestamp on each directory when it lists the directories on an NTFS volume

 W2K / W2K3 / W2K8

 HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl

 Win32PrioritySeparation

 REG_DWORD

 38 Foreground application more reponsive than

 W2K / W2K3 / W2K8

Page 8: optimisation tse

background

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management

 LargeSystemCache

 REG_DWORD

 1

Provides a large virtual address space for the cache.

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management

 IoPageLockLimit

 REG_DWORD

 65536

Specifies the maximum number of bytes that can be locked for I/O operations

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management

 DisablePagingExecutive

 REG_DWORD

 1

Drivers and the kernel must remain in physical memory

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\

 AutoEndTasks

 REG_SZ

 1 Determines whet

 W2K / W2K3 / W2K8

Page 9: optimisation tse

RDP-Tcp\UserOverride\Control Panel\Desktop

her user processes end automatically when the user either logs off.

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\UserOverride\Control Panel\Desktop

 WaitToKillAppTimeout

 REG_SZ

 20000

Determines how long the system waits for user processes to end after the user attempts to log off

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\UserOverride\Control Panel\Desktop

 MenuShowDelay

 REG_SZ

 10

Changes the Start menu display interval

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\

 CursorBlinkRate

 REG_SZ

 -1 Specifies how much time

 W2K / W2K3 / W2K8

Page 10: optimisation tse

UserOverride\Control Panel\Desktop

elapses between each blink of the selection cursor

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\UserOverride\Control Panel\Desktop

 DisableCursorBlink

 REG_DWORD

 1

Enables / Disables Cursor BLink

 W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\UserOverride\Control Panel\Desktop

 DragFullWindows

 REG_SZ

 0

Specifies what appears on the screen while a user drags a window / Only the outline of the window moves

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\UserOverride\Control Panel\Desktop

 SmoothScroll

 REG_DWORD

 0

Scrolls using smooth scrolling

 W2K / W2K3 / W2K8

Page 11: optimisation tse

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\UserOverride\Control Panel\Desktop

 Wallpaper

 REG_SZ

 (none)

Sets Wallpaper to "None"

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\UserOverride\Control Panel\Desktop\WindowsMetrics

 MinAnimate

 REG_SZ

 0

Disabled. Window does not animate while being resized

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\UserOverride\Control Panel\Desktop

 InteractiveDelay

 REG_DWORD

 40

Optimizes Explorer and Start Menu responses Times

 W2K / W2K3 / W2K8

HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters

 MaxWorkItems

 REG_DWORD

 512

Server Service Optimization

 W2K / W2K3 / W2K8

HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters

 MaxMpxCt

 REG_DWORD

 2048

Server Service Optimization

 W2K / W2K3 / W2K8

HKLM\System\CurrentControlSet\Services\LanmanServer\

 MaxFreeConnections

 REG_DWOR

 100 Server Service

 W2K / W2K3 / W2K8

Page 12: optimisation tse

Parameters DOptimization

HKLM\System\CurrentControlSet\Services\LanmanServer\Parameters

 MinFreeConnections

 REG_DWORD

 32

Server Service Optimization

 W2K / W2K3 / W2K8

HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters

 MaxCmds

 REG_DWORD

 2048

Increases Network capacity

 W2K / W2K3 / W2K8

HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters

 UtilizeNTCaching

 REG_DWORD

 0

Disable Caching

 W2K / W2K3 / W2K8

HKLM\System\CurrentControlSet\Services\LanmanWorkstation\Parameters

 MaxThreads

 REG_DWORD

 17

Maximum Concurrent Threads

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\MRXSmb\Parameters

 OplocksDisabled

 REG_DWORD

 1

Disables Opportunistic Locking

 W2K / W2K3 / W2K8

HLM\SYSTEM\CurrentControlSet\Services\Lanmanworkstation\Parameters

 UseOpportunisticLocking

 REG_DWORD

 0

Disables Opportunistic Locking

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters

 EnableOplocks

 REG_DWORD

 0 Disables Opportunistic Locki

 W2K / W2K3 / W2K8

Page 13: optimisation tse

ng

HKLM\SYSTEM\CurrentControlSet\Services\lanmanserver\Parameters

 Size

 REG_DWORD

 3

Optimizes Network Performances for Applications (Along with LargeSystemCache)

 W2K / W2K3 / W2K8

HKLM\System\CurrentControlSet\Control\Session Manager

 RegistryLazyFlushInterval

 REG_DWORD

 30

Registry Flush Interval

 W2K / W2K3 / W2K8

HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components\{44BBA840-CC51-11CF-AAFA-00AA00B6015C}

 StubPath REG_SZ

 ""

Disable Outlook Express Icon Creation

 W2K / W2K3

HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components\{7790769C-0471-11d2-AF11-00C04FA35D02}

 StubPath  REG_SZ

 ""

Disable Windows Address Book Icon Creation

 W2K / W2K3

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

 DefaultDomainName

 REG_SZ

 YourDefaultDomain

Sets Default Logon

 W2K / W2K3 / W2K8

Page 14: optimisation tse

Domain

HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services

 WFDontAppendUserNameToProfile

 REG_DWORD

 1

Allow Mandatory Profiles Configuration via GPO.  This Setting needs KB908011 or W2K3 SP2 to be installed on each Server

 W2K3

HKLM\SOFTWARE\Policies\Microsoft\Internet Explorer\Restrictions

 RestGoMenu

 REG_DWORD

 1

Disable 'Mail and News' Menu from Internet Explorer

 W2K / W2K3 / W2K8

HKLM\SYSTEM\CurrentControlSet\Services\BNNS\Parameters

 EnableOffload

 REG_DWORD

 0 Recommend Performance Best Practi

Page 15: optimisation tse

ce when Your XenApp Servers are Deployed via Provisioning Server

Along with these registry settings, do not forget to install UPHClean (W2K / W2K3) to manage profiles at logoff and ensure no lock will remain leading to profiles corruption and long logoff times.

UPHClean is natively embedded into Windows 2008 and later (User Profile Service).

 Also, as a Best Practice, it is recommended to Disable Data Execution Prevention on Windows 2003 and Windows 2008.

To do so, you have to modify the boot.ini file or use one of the following command line(s)

For Windows 2003 : bootcfg.exe /raw /fastdetect /noexecute=AlwaysOff /ID 1 For Windows 2008 : bcdedit.exe /set {current} nx AlwaysOff

Additional Windows Explorer Tuning

The following Tuning Values are an extract from an Helge Klein blog post and were added on June, 1rst 2009 (Thanks to Laurent Falguiere for pointing these settings in his comment)

Registry Hive ValueTyp

e

Data

Purpose(s)Platfor

m(s)

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\

 UseDesktopIniCache

 REG_DWOR

 1 http://support.microsoft.com/kb/840309/

 W2K3 / W2K8

Page 16: optimisation tse

Policies\Explorer D EN-US

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer

 NoRemoteRecursiveEvents

 REG_DWORD

 1

http://support.microsoft.com/?scid=kb%3Ben-us%3B330929&x=9&y=10

 W2K3 / W2K8

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer

 NoRemoteChangeNotify

 REG_DWORD

 1

http://support.microsoft.com/?scid=kb%3Ben-us%3B812669&x=14&y=12

 W2K3 / W2K8

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer

 StartRunNoHOMEPATH

 REG_DWORD

 1

http://support.microsoft.com/?scid=kb%3Ben-us%3B264061&x=18&y=9

 W2K3 / W2K8

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer

 NoRecentDocsNetHood

 REG_DWORD

 1

http://support.microsoft.com/?scid=kb%3Ben-us%3B264061&x=18&y=9

 W2K3 / W2K8

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer

 NoDetailsThumbnailOnNetwork

 REG_DWORD

 1

http://support.microsoft.com/?scid=kb%3Ben-us%3B830903&x=17&y=18

 W2K3 / W2K8

HKLM\System\CurrentControlSet\Services\MRXSmb\Parameters

 InfoCacheLevel

 REG_DWORD

 16

http://support.microsoft.com/kb/834350/EN-US

 W2K3 / W2K8

HKCR\*\shellex\PropertySheetHandlers\CryptoSignMenu

 SuppressionPolicy

 REG_DWORD

 65536

http://support.microsoft.com/kb/829700/EN-US

 W2K3 / W2K8

Page 17: optimisation tse

HKCR\*\shellex\PropertySheetHandlers\{3EA48300-8CF6-101B-84FB-666CCB9BCD32}

 SuppressionPolicy

 REG_DWORD

 65536

http://support.microsoft.com/kb/829700/EN-US

 W2K3 / W2K8

HKCR\*\shellex\PropertySheetHandlers\{883373C3-BF89-11D1-BE35-080036B11A03}

 SuppressionPolicy

 REG_DWORD

 65536

http://support.microsoft.com/kb/829700/EN-US

 W2K3 / W2K8

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\SCAPI

 Flags

 REG_DWORD

 1051650

http://support.microsoft.com/kb/829700/EN-US

 W2K3 / W2K8

HKLM\\SYSTEM\CurrentControlSet\Control\Session Manager

 SafeDllSearchMode

 REG_DWORD

 1

http://support.microsoft.com/kb/306850/EN-US

 W2K

HKLM\\SYSTEM\CurrentControlSet\Control\Session Manager

 SafeProcessSearchMode

 REG_DWORD

 1

http://support.microsoft.com/?scid=kb%3Ben-us%3B905890&x=13&y=9

 W2K3 / W2K8

XenApp Tuning

Registry Hive Value TypeDat

aPurpose(s)

Platfor

m(s)

HKLM\Software\Citrix\Print

 DefaultPrnFlags

 REG_DWORD

 134217728

Disables Logging of Print Events

 XenApp 4.X / 5.X

HKLM\Software\Citrix\Print

 DefaultPrnFlags

 REG_DWORD

 536870912

Ensures Autoc

 XenApp 4.X

Page 18: optimisation tse

reated printers ACL are always enforced

/ 5.X

HKLM\Software\Citrix\IMA\LMS

 EnableTranslation

 REG_DWORD

 1

Ensures IMA LMS will work on MUI Operating Systems

 XenApp 4.0

HKLM\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI

 LangBarDeminimizerFlags

 REG_DWORD

 1

Hides the Language bar if it is not needed

 XenApp 4.X / 5.X

HKLM\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI

 SeamlessFlags

 REG_DWORD

 524288

Won't Sync the WorkArea within Seamless Application : Application's Title Bar will be

 XenApp 4.X / 5.X

Page 19: optimisation tse

"normal" when accessed from clients using the Windows XP / Vista Themes

HKLM\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI

 LogoffCheckSysModules

 REG_SZ

 wistpis.exe

Specified modules will be forced to unload when the published application will be exited

 XenApp 4.X / 5.X

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ICA-Tcp\UserOverride\Control Panel\Desktop

 AutoEndTasks

 REG_SZ

 1  Determines whether user processes end automatically when the

 XenApp 4.X / 5.X

Page 20: optimisation tse

user either logs off.

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ICA-Tcp\UserOverride\Control Panel\Desktop

 WaitToKillAppTimeout

 REG_SZ

 20000

Determines how long the system waits for user processes to end after the user attempts to log off

 XenApp 4.X / 5.X

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ICA-Tcp\UserOverride\Control Panel\Desktop

 MenuShowDelay

 REG_SZ

 10

Changes the Start menu display interval

 XenApp 4.X / 5.X

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ICA-Tcp\UserOverride\Control Panel\Desktop

 CursorBlinkRate

 REG_SZ

 -1

Specifies how much time elapses between each blink of the selection cursor

 XenApp 4.X / 5.X

Page 21: optimisation tse

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ICA-Tcp\UserOverride\Control Panel\Desktop

DisableCursorBlink

REG_DWORD

 1

Enables / Disables Cursor Blink

XenApp 4.X / 5.X

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ICA-Tcp\UserOverride\Control Panel\Desktop

 DragFullWindows

 REG_SZ

 0

Specifies what appears on the screen while a user drags a window / Only the outline of the window moves

 XenApp 4.X / 5.X

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ICA-Tcp\UserOverride\Control Panel\Desktop

 SmoothScroll

 REG_DWORD

 0

Scrolls using smooth scrolling

 XenApp 4.X / 5.X

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ICA-Tcp\UserOverride\Control Panel\Desktop

 Wallpaper

 REG_SZ

 (none)

Sets Wallpaper to "None"

 XenApp 4.X / 5.X

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ICA-Tcp\UserOverride\

 MinAnimate

 REG_SZ

 0 Disabled. Window does

 XenApp 4.X / 5.X

Page 22: optimisation tse

Control Panel\Desktop\WindowsMetrics

not animate while being resized

HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\ICA-Tcp\UserOverride\Control Panel\Desktop

 InteractiveDelay

 REG_DWORD

 40

Optimizes Explorer and Start Menu responses Times

 XenApp 4.X / 5.X

HKLM\SYSTEM\CurrentControlSet\Services\CTXCPUREBal

 Start  REG_DWORD

 2 On Enterprise Servers Only, with Multiples CPU Only. Enables the "Citrix CPU Rebalancing Service" which is responsible for spreading non multi cpu

 XenApp 4.X / 5.X

Page 23: optimisation tse

applications loads to all CPUs.

User Profile Tuning

The following settings are designed to tune the Default user profile. I'm mainly using them within Mandatory Profiles or Template Profile for Citrix Portable Profiles.

Registry Hive Value TypeData

Purpose(s)

HKCU\Control Panel\Desktop AutoEndTasks

 REG_SZ

 1

 Determines whether user processes end automatically when the user either logs off.

HKCU\Control Panel\Desktop  WaitToKillAppTimeout

 REG_SZ

 20000

Determines how long the system waits for user processes to

Page 24: optimisation tse

end after the user attempts to log off

HKCU\Control Panel\Desktop MenuShowDelay

 REG_SZ

 10

Changes the Start menu display interval

HKCU\Control Panel\Desktop CursorBlinkRate

 REG_SZ

 -1

Specifies how much time elapses between each blink of the selection cursor

HKCU\Control Panel\Desktop DisableCursorBlink

 REG_DWORD

 1

Enables / Disables Cursor Blink

HKCU\Control Panel\Desktop  DragFullWindows

 REG_SZ

 0 Specifies what appears on the screen while a user drags

Page 25: optimisation tse

a window / Only the outline of the window moves

HKCU\Control Panel\Desktop SmoothScroll

 REG_DWORD

 0

Scrolls using smooth scrolling

HKCU\Control Panel\Desktop Wallpaper

 REG_SZ

 (none)

Sets Wallpaper to "None"

HKCU\Control Panel\WindowsMetrics

 MinAnimate

 REG_SZ

 0

Disabled. Window does not animate while being resized

HKCU\Control Panel\Desktop InteractiveDelay

 REG_DWORD

 40

Optimizes Explorer and Start Menu responses Times

HKCU\\Software\Microsoft\Windows\CurrentVersion\

 VisualFXSetting

 REG_DW

 2 Sets Visual

Page 26: optimisation tse

Explorer\VisualEffects ORD

effects to "Optimize for Best Performances"

HKCU\Software\Microsoft\Internet Explorer\Main

 Force Offscreen Composition

 REG_DWORD

 1

Force Internet Explore to use Offscreen Composition

HKCU\Software\Microsoft\CTF

 Disable Thread Input Manager

 REG_DWORD

 1

Disables Language Bar 1/4

HKCU\Software\Microsoft\CTF\LangBar

 ExtraIconsOnMinimized

 REG_DWORD

 0

Disables Language Bar 2/4

HKCU\Software\Microsoft\CTF\LangBar

 ShowStatus

 REG_DWORD

 2

Disables Language Bar 3/4

HKCU\Software\Microsoft\CTF\MSUTB

 ShowDeskBand

 REG_DWORD

 1

Disables Language Bar 4/4

Page 27: optimisation tse

XenApp Client Tuning

The following settings are designed to tune / debug the XenApp / XenDesktop ICA Client. These tips are extracted from an article originally published on Jim Moyle's Blog. I'd like to thank him for contacting me and asking me to add them to our existing tuning Article.

Description

Key Value Name Value

Automatically repair clipboard chainCTX112434

HKEY_LOCAL_MACHINE\SOFTWARE \Citrix\ICA Client\Engine\Configuration\Advanced \Modules\WFClient

CbChainInterval<value> 0-2000 valid

Prevent long logon script time breaking session sharingCTX114379

HKEY_LOCAL_MACHINE\SOFTWARE \Citrix\ICA Client\Engine\Configuration\Advanced \Modules\WFClient\

ucConnTimeout<string value> needs to be >20

Log the Launch.ica file to a Client Local FileCTX115304

HKEY_LOCAL_MACHINE\SOFTWARE \Citrix\ICA Client\Engine\Configuration\Advanced \Modules\Logging

LogFile=<path to file to log to that you want, use following format C:\ica\ica.log>

LogICAFile=true

Disable selected virtual channels from the client sideCTX116890

HKEY_LOCAL_MACHINE\SOFTWARE \Citrix\ICA Client\Engine\Configuration\Advanced \Modules\ICA 3.0

Remove relevant value

Revert to 9.x printing behaviour for a specific driver

HKEY_LOCAL_MACHINE\Software \Citrix\ICA Client

ReprocessEMFDriverList

<driver name>

Page 28: optimisation tse

CTX115553

Allow more than 20 client files open from a client mapped driveCTX117315

HKEY_LOCAL_MACHINE\ SOFTWARE\Citrix\ICA Client\Engine\Configuration\Advanced \Modules\ClientDrive

MaxOpenContext<value> eg 50

Prevent a seamless window from permanently hiding a minimized taskbarCTX821811

HKEY_LOCAL_MACHINE\ SOFTWARE\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Seamless Windows

TWIShrinkWorkAreaValue: 5

Allow Custom Virtual Channels in ICA after upgrading from an earlier clientCTX113279

HKEY_LOCAL_MACHINE\ SOFTWARE\Citrix\ICA Client\Engine\Lockdown Profiles\All Regions\Lockdown\Virtual Channels\Third Party\CustomVC

VirtualChannels

“”

How to use print screen in ICA sessionsCTX113344

HKEY_LOCAL_MACHINE\ SOFTWARE\Citrix\ICA Client\Engine\Configuration\Advanced \Modules\WFClient

ICAPrntScrnKey

<value> eg F12

Make a seamless window the focus as soon as it activatesCTX112499

HKEY_LOCAL_MACHINE\ Software\Citrix\ICA Client\Engine\Configuration\Advanced \Modules\WFClient

TWISeamlessFlag1

Page 29: optimisation tse

Microsoft Office Tuning

The following settings are designed to tune Microsoft Office Applications for Terminal services / XenApp Use.

To use with your Office Version, Replace the #OfficeVersion# token with :

9.0 for Microsoft Office 2000 10.0 for Microsoft Office XP 11.0 for Microsoft Office 2003 12.0 for Microsoft Office 2007

When a token is not specified that's because the Tip do not apply to all versions

Registry Hive Value Type

Data

Purpose(s)

HKLM\Software\Microsoft\Office\11.0\Excel\Options

 AlwaysSaveToCurrentPath

 REG_DWORD

 1

Always Save in Current Path(Even Remote Documents)

HKLM\Software\Policies\Microsoft\Office\#OfficeVersion#\Word\Options\vpref

 fSplBkg_99_1

 REG_DWORD

 0

Word : Disables Check Spelling as You Type

HKLM\Software\Policies\Microsoft\Office\#OfficeVersion#\Word\Options

 fGramBkg_535_1

 REG_DWORD

 0

Word : Disables Check Grammar as You Type

HKLM\Software\Policies\Microsoft\Office\#OfficeVersion#\Word\Options\Assist

 fCorrectTyping_16_1

 REG_DWORD

 0 Word : Disables Text Replacement As

Page 30: optimisation tse

You Type

HKLM\Software\Policies\Microsoft\Office\#OfficeVersion#\Excel\Options

 fAnimationsOK_129_1

 REG_DWORD

 0

Excel : Disables Provide a Feedback With Animation

HKLM\SYSTEM\Software\Policies\Microsoft\Office\#OfficeVersion#\PowerPoint\Options

 Background spell checking

 REG_DWORD

 0

Powerpoint : Disables Check Spelling as You Type

HKLM\Software\Microsoft\Office\11.0\Common\Open Find\Places\StandardPlaces\Desktop

 Show REG_DWORD

 0 or 1

 Manages the Display of the Desktop link Within Office Places Bar

HKLM\Software\Microsoft\Office\11.0\Common\Open Find\Places\StandardPlaces\MyComputer

 Show REG_DWORD

 0 or 1

 Manages the Display of the My Computer link Within Office Places Bar

HKLM\Software\Microsoft\Office\11.0\Common\Open Find\Places\StandardPlaces\MyDocuments

 Show  REG_DWORD

  0 or 1

 Manages the Display of the My Documents link Within Office

Page 31: optimisation tse

Places Bar

HKLM\Software\Microsoft\Office\11.0\Common\Open Find\Places\StandardPlaces\Publishing

 Show REG_DWORD

  0 or 1

 Manages the Display of the Network Locations link Within Office Places Bar

HKLM\Software\Microsoft\Office\11.0\Common\Open Find\Places\StandardPlaces\Recent

 Show REG_DWORD

  0 or 1

 Manages the Display of the Recent Documents link Within Office Places Bar

Share on Twitter

Retweet this Article

Comments

# bsorensonFriday, July 24, 2009 8:37 PMWe just saw an instance where a .NET application, Peachtree 2009 and 2010 would NOT load screens due to the CursorBlinkRate being changed. It took us over 100 hours of time with more then 40 hours on the phone with Peachtree to narrow it down and find it. Setting it breaks the Peachtree application and it's related to those screens being written in .NET.

Just posting this as many of our optimizations came from this site for our Terminal Server environment. Beware!

Thanks,Bill [email protected]

Page 32: optimisation tse

# Pierre MarmignonFriday, July 24, 2009 9:04 PMDear Bill,

Sorry for the side effects you've encountered.

I've never seen such a problem with the Cursor Blink Rate being modified in years of use.

Thanks for your feedback.

Best Regards,

Pierre

# SamWednesday, August 12, 2009 12:31 PMi remember that there was a guy who made an adm template with these settings so u can enforce them via gpo , is that still available ? and did he updated it ?

# Pierre MarmignonWednesday, August 12, 2009 12:37 PMHi,

Yes there is an adm with these settings. You can find it on The XenApp Blog

Pierre

# Pierre MarmignonThursday, August 20, 2009 11:47 AMAlexander Ervik has also released an admx template with these tuning settings.

The Admx file is available at Ervik.as

Page 33: optimisation tse

# FDTuesday, September 01, 2009 11:10 AMHi Pierre,I remeber from the old Methodology in a Box from DABCC that the HKLM\SYSTEM\CurrentControlSet\Control\PriorityControl Win32PrioritySeparation should be set to backgroung process (value of 24) rather than foregroung (value of 38) because of the way sessions are managed. would it be possible to investigate a little more on that settings? BTW it is possible to change that setting via Start -> Settings -> Control Panel -> System -> Advanced Tab -> Performance Options-> Set Application response to ‘Background services’

Regards,FD

# Pierre MarmignonTuesday, September 01, 2009 5:16 PMDear FD, Yes you're right !

I've always set it to optimize "For applications" (even if other articles were saying to set it to "Background Services") because even it's not a "ideal" setting for Terminal Server / XenApp Servers it boosts the CPU Scheduling.

However, for some XenApp requirements, you could have to set it back to "BackGround Services".

You can read this nice article about it from Jeremy Saunder's about it !

Best Regards,

Pierre

# vvuccinoTuesday, September 29, 2009 4:15 PMHi

Thanks for this post.

For me HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects

Page 34: optimisation tse

doesn't work.(option box doesnt changed in advanced settings)

But I try in HKCU, and here it works fine. (option box are well Displayed in advanced settongs)

Do you think it's just the display or settings are in HKCU ?

Bye

Vincent

Only registered users may post comments.