Audio interview with Kevin Goodman, architect of Citrix's virtual memory optimization technology - Brian Madden Live - BrianMadden.com
Brian Madden Logo
Your independent source for desktop virtualization, consumerization, and enterprise mobility management.

Audio interview with Kevin Goodman, architect of Citrix's virtual memory optimization technology

Written on Aug 18 2005 15,345 views, 12 comments

New! Listen to this post in our daily podcast. iTunes Podcast Podcast RSS Feed

by Brian Madden

One of the new features of Citrix Presentation Server 4.0 is virtual memory optimization management. This feature lets you put more users on a server and generally enables applications to load faster.

Virtual memory optimization technology is not new to the server-based computing world. It’s been around for years in RTO’s TScale product. (Some people might also know it as “DLL memory address rebasing.”) Citrix licensed the TScale technology from RTO when they created Presentation Server 4.0.

All most people know about this technology is that it “does something” to the DLLs to change the way they use virtual memory.

In this show, Brian Madden has a conversation with Kevin Goodman, the architect and patent-holder of this virtual memory optimization technology. Kevin will provide very detailed description of how this technology works, how you and test and manage it, and when it should and shouldn’t be used.

Utilities Mentioned in the show

Streams is a utility that lets you see when TScale / Citrix memory optimization management is causing a DLL or EXE to read it's data from an alternate stream. (i.e. this thing lets you see this technology in action!)

GUI Utility from RTO for modifying Citrix Presentation Server 4.0 Memory Optimization Management Features. (available soon...)

 
 





Comments

Mark Schill wrote Podcast
on Thu, Aug 18 2005 10:43 PM Link To This Comment
Very nice. I was wondering when someone was going to do a Citrix podcast.
Josh Holst wrote Very Cool
on Fri, Aug 19 2005 9:06 AM Link To This Comment
I was wondering where Brian has been but, looks like he's been hard at work coming up with new ways to get information to us.

Oh yea the interview good also.
Brian Madden wrote Re: Very Cool
on Fri, Aug 19 2005 9:24 AM Link To This Comment
I've been on a mental holiday this summer. Not too much working. No IM... just relaxing. But now I'm starting up again.. Look for a lot of cool stuff and tons of new articles in Sept and Oct.

Brian
Josh Holst wrote Re: Re: Very Cool
on Fri, Aug 19 2005 10:04 AM Link To This Comment
Don't blame you. Are you giving any presentations at iForm in Vegas this year? Maybe the Hard Rock will be as nice as it was in March.
Katie Koepke wrote Awesome
on Fri, Aug 19 2005 7:00 PM Link To This Comment
What a great way to share information. I had no idea T Scale was part of PS 4 and the extent to what was going on behind the scenes with the simple memory optimization check box! That’s pretty sweet that RTO is making the expanded tools available for free too.

Congrats Brian! Thanks Kevin, for the great information!
Guest wrote Microsoft Rebase
on Sat, Aug 20 2005 2:40 PM Link To This Comment
The rebase tool Kevin mentions is available in the Windows Server 2003 Platform SDK available at:
http://www.microsoft.com/downloads/details.aspx?FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en

More information about it is at:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/tools/tools/rebase.asp

I was going to do this years ago with Thin Radio but had no time.
Good Job Brian!
Jim Kenzig
http://thethin.net
Rene Vester wrote great podcast
on Wed, Aug 24 2005 6:14 AM Link To This Comment
Was i right to understand that Tscale as it was known before is now close to 'fully integrated' under the 'memory optimization'-cover in CPS 4.0 and with the free download from the RTO site we can do almost the things you could with Tscale before? this is great and the oppportunity to download the tool for exclusions and the likes is great!

Nice work on the interview, thank you Kevin for the information, even I understand whats in the Voodoo-box of memory optimization now :)

Great Idea Brian, hope to see and hear many new streams :)

/Rene
Rene Berendsen wrote RE: great podcast
on Thu, Aug 25 2005 6:48 AM Link To This Comment
Absolutely interessting pod cast !!

Hope the next one will come online soon !
Kevin Goodman wrote Re: Awesome
on Fri, Aug 26 2005 5:48 PM Link To This Comment


Here is the link to sign up for the Optimization Console Beta:

http://www.rtosoft.com/enter.asp?ID=369


Kevin Goodman wrote Re: Microsoft Rebase
on Fri, Aug 26 2005 5:51 PM Link To This Comment
Jim,

Thanks for the post. I've added some info about the other tools we talked about.

Process Explorer:

Process Explorer is another SysInternals utility that you can use to determine if a running application has relocations. Once installed, choose Options|"Configure Highlighting" then click "Relocated DLLs". Then choose View|"Lower Pane View" and select "DLLs". Then select the application from the "Process" list. If the application has relocations, the Dlls will show up highlighted in the bottom pane.

http://www.sysinternals.com/Utilities/ProcessExplorer.html



Dumpbin:
Dumpbin is command line utility that ships with the Platform SDK or Visual Studio .NET. Dumpbin is useful for determining a .DLLs existing base address.
http://msdn.microsoft.com/library/en-us/vccore/html/_core_dumpbin_reference.asp

For example the base address of kernel32.dll is (hex) 7C800000

Here is the output of dumpbin:

C:\WINDOWS\system32>dumpbin -headers kernel32.dll

Dump of file kernel32.dll

PE signature found

File Type: DLL

FILE HEADER VALUES

OPTIONAL HEADER VALUES
10B magic # (PE32)
7.10 linker version
81E00 size of code
6FE00 size of initialized data
0 size of uninitialized data
B436 entry point (7C80B436)
1000 base of code
7F000 base of data
7C800000 image base (7C800000 to 7C8F3FFF)



Forcing debug output in TScale or CPS 4.0

In the registry key: HKLM\SYSTEM\CurrentControlSet\Services\ctxaltstr for CPS 4.0 or HKLM\SYSTEM\CurrentControlSet\Services\tsaltstr for TScale

Create a DWORD value: DebugFlags


Set the value to any combination of the following flags:

Trace Errors 0x00000002
Trace Redirections 0x00002000
Trace Exclusions 0x00008000
Trace System protected file optimizations 0x00020000

For example, to trace redirections and exclusions set the value to 0xA000.

This will trace exclusions to a debugger or a tool like DebugView from SysInternals.

www.sysinternals.com/files/debugviewNt.zip


Kevin Goodman wrote Re: great podcast
on Fri, Aug 26 2005 5:56 PM Link To This Comment
CPS 4.0 contains just the virtual memory opts from TScale it doesn't have the shaping or registry optimizations.

BTW, If you want to see what we have up our sleeve for an encore, sign up for the TScale Advanced Beta:

http://www.rtosoft.com/enter.asp?ID=369
Guest wrote broken link?
on Fri, Aug 22 2008 10:14 PM Link To This Comment

Error : Could not find file 'C:\Inetpub\BrianMaddenWebic\upload\download\downloadfile\Brian%20Madden%20Live%20-%20Kevin%20Goodman.mp3'.

(Note: You must be logged in to post a comment.)

If you log in and nothing happens, delete your cookies from BrianMadden.com and try again. Sorry about that, but we had to make a one-time change to the cookie path when we migrated web servers.