Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Slow perfomance with Windows XP 1

Status
Not open for further replies.

crossface

Programmer
Nov 30, 2002
81
0
0
US
We have a software product that is developed in Clarion. It is mature product that runs on Windows 95 and higher.

One process when running this application (disk intensive process creating files) takes about 15-20 minutes on Windows XP instead of less than minute when using Windows ME or Windows 98

We have lots of users of the software. It primarily happens on Windows XP although on one occasion one of our users indicated it took this performance hit on Windows 2000
I have some users who are using Windows XP who are not having problems but most are.

What could the issue be?

Our end users are very frustrated.

Is there a registry entry that we need to chang.

Kevin Cotter
PES
 
I'm not clear on this:
Your company actually codes it...and sells it?
 
Yes

The program we market is developed in Clarion
 
Believe it or not, my company too markets a program written in Clarion which displays the same problems you mentioned. However, the problem seems to be related to the processor speed rather than the OS. On processors greater than 850 MHz, you will probably notice the slow behavior with DOS based programs, although ironically enough, the program is actually running too fast, thereby hogging all the processor resources.
There is a Windows compatibility Wizard you can run that can create a .pif file to run the program in a Win9x mode that may solve your problem, provided the .exe file is local to the machine. If you run the program over a network you may need another solution. This is the problem I'm trying to solve. If I find a solution to this, I will post it here.
Another, less elegant solution is a DOS based utility called Moslo. This program actually slows down the processor speed allowing your program to run properly. It is avaiable at hth & good luck.
 
The program is not a DOS program

Kevin Cotter
PES
 
How much memory do you have in the machines? XP uses alot more memory than ME or 98, so does Win2k. I would bet you have 128megs or less in the machines. If you were to upgrade to 256M then that would help. XP loves more memory. Degg
Network Administrator
 
Is this program running in the foreground when it exhibits this behavior?
 
Yes it is

Memory does not seem to be an issue Some suers who are experiencing this problem have 256 and 512 Mb RAM
 
The test machhine that took 8 minutes to complete the process has

1 GHz P-III
10K RPM SCSI HDD
512 MB RAM
 
Perhaps bringing up Windows Task Manager may pinpoint what process is slowing things down?
 
All very interesting, gentlemen, but I'm getting confused as to who's who here?!

bmunds, you are also crossface or you know crossface?
 
These are suggestions from the techbargains.com site:

Hard Drive Port

Make sure your hard drive is not connected to the same IDE port as your CD/DVD-ROM. Each IDE port is programmed to operate at the slower of the two devices on the port, so you could be slowing down access to your primary hard drive by leaving a CD-ROM on the same channel. Put your CD/DVD-ROM on the Secondary IDE port.


Intel Application accelerator lets you independently set tranfer rates for devices on the same cable.
IDE DMA

Windows does not automatically utilize faster DMA IDE data transfer modes on IDE slave drives. Programmed I/O mode is the default setting.


1)) Right click on "My Computer", select the Hardware tab, and Select Device Manager.
2) Expand "IDE ATA/ATAPI Controller" and double-click on "Primary IDE Channel"
3) Under "Advanced Settings" tab, check the "Device 1" setting. Set it to "DMA if available"
4) Repeat the step for the "Secondary IDE Channel" if devices are present there.

SCSI Write Cache

Many SCSI drives do not have their write caches enabled. Use a Mode Page Editor such as the one built into EZ-SCSI to enable Write Caching on all your hard drives. Windows XP allows you to enable Write Caching in the Properties page of a SCSI Drive.

Minimize Background Applications and Services

Press CTRL-ALT-DEL while in Windows and bring up the Task Manager. Notice how many programs are running in the background. Each program steals memory and CPU cycles. Offenders include: Fast Find, Office Startup, System Agent, Real Player, Norton. To stop programs from automatically starting, remove the file from the Programs - Startup folder, left click on the icons in the System tray and turnoff automatic loading, or consult the help file of each program to turn it off. Disable File and Print, Web, database, Computer Browser, and terminal services if they are not being used. Configure Virus scanning to only scan incoming files. Run MSCONFIG to get a list of programs that run on startup and remove unnecessary ones.

Removed Unused Programs, Protocols, and Fonts

Uninstall any Programs that you do not use. Also remove any Fonts that are not used. This will free up disk space and make the machine boot faster. You should also remove any temporary files located in the C:\TEMP, C:\WINDOWS\TEMPORARY INTERNET FILES, or C:\WINNT\TEMP directories. Also remove any unused Network Protocols such as NetBEUI or IPX.

Virtual Memory

Windows uses your Hard Drive as swap memory but its default configuration can cause a major loss of performance with the memory swap file getting moved around.


Select System icon from the Control Panel - Performance and Maintenance, select Advanced Tab, select Performance areas, and click on Settings Under virtual Memory click Change. The Initial and Maximum size should be equal otherwise Windows will keep resizing the file. The optimal memory setting for users with 128 MB+ is approximately 1.5 times the RAM size, users with 64 MB should use a 2 times multiple. You should also locate Virtual Memory on your fastest drive or striped RAID volume, placing it on the non-boot drive, can help increase performance. Defragment after setting this to minimize fragmentation and force the swap file to get located on the fastest part of your disk. Third party defragmentaters can optimize the swap file.


Always make sure your system has enough RAM. 128MB is the absolute minimum. You can bring up the Performance Tab of the Task Manager to ensure that Total Commit Charge is lower than your Total Physical Memory. If not, add ram.
Memory Tweaks

There are 3 tweaks you can make to change how XP uses memory.
Open Regedit and Find HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory Management

Disable Paging Executive:
XP pages data from RAM memory to the hard drive. We can stop this happening and keep more data in RAM, resulting in better performance. Users with a large amount of RAM (256MB+) should use this setting. The setting we change to disable the ’Paging Executive’, is DisablePagingExecutive. Changing the value of this key from 0 to 1 will de-activate memory paging.


System Cache Boost:
Changing the value of the key LargeSystemCache from 0 to 1 will tell XP to allocate all but 4MB of system memory to the file system cache, allowing the XP Kernel to run in memory. The 4MB of memory left is used for disk caching, if more is needed, XP allocates more. Generally, this tweak improves performance by a fair bit but can, in some intensive applications, degrade performance. As with the previous tweak, you should have at least 256MB of RAM before attempting to enable LargeSystemCache.

Input/Output Performance:
This improves performance of large file transfers. By default, a value does not appear in the registry, so you will have to create a REG_DWORD value called IOPageLockLimit. The data for this value is in bytes, and defaults to 512KB on machines that have the value. Most people using this tweak have found maximum performance in the 8 to 16 megabyte range, so you will have to play around with the value to find the best performance. The value is measured in bytes, so if you want, 12MB allocated, it’s 12 * 1024 * 1024, or 12582912. As with all these memory tweaks, you should only use this if you have 256MB or more of RAM.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top