home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1993 #2
/
Image.iso
/
os2
/
os21tips.zip
/
WP21TUNE.DOC
< prev
next >
Wrap
Text File
|
1993-08-12
|
184KB
|
3,411 lines
──── Document: WP ────────────────────────────────
──── Page: i ────────────────────────────────
OS/2 2.1 Performance Tuning for End Users
May 7, 1993
──── Page: ii ────────────────────────────────
╕ Copyright International Business Machines Corporation 1993. All rights reserved.
Note to U.S. Government Users ═ Documentation related to restricted rights ═ Use, duplication
or disclosure is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corp.
──── Page: iii ────────────────────────────────
Preface
This Performance White Paper is designed to assist end users in improving the performance of
their OS/2 system by providing information on software and hardware. Items addressed include
software tuning and hardware upgrades. It was written by the OS/2 System Performance
Department members (IBM Boca Raton), with contributions from the OS/2 operating system
development community.
There are many questions on what to do to increase the overall performance of an OS/2 system.
This is a complicated question as various factors influence the performance of OS/2. This article
attempts to provide information, from various sources, that relates to the performance of OS/2
2.1. Other articles, press releases, product information guides and independent testing all con-
tributed to the information found here. Several of these documents are listed here.
The information in this paper deals directly with stand-alone systems. This is not to say that the
information will not prove useful to the networked system, but it does not deal with networked
systems or the hardware used for networking.
■ OS/2 2.1 Using the Operating System
■ The OS/2 V2.1 Update Redbook
■ OS/2 2.0 Installation & Tuning Guide
GG24-3948
■ OS/2 2.0 Information and Planning Guide
G326-0160
■ OS/2 Version 2.0 Technical Compendium
GGOF-2254
Volume 2: DOS and Windows Environment
GG24-3731
Volume 4: Application Development
GG24-3774
Volume 5: Print Subsystem
GG24-3775
Preface iii
──── Page: iv ────────────────────────────────
Trademarks referenced
The following products are referenced in the document:
■ OS/2, Personal Systems/2, PS/2 and Micro Channel are registered trademarks of the Interna-
tional Business Machines Corporation
■ Presentation Manager, WIN-OS/2 and SPM/2 are trademarks of the International Business
Machines Corporation
■ Microsoft and Microsoft Windows are registered trademarks of Microsoft Corporation
■ Intel is a registered trademark of Intel Corporation
■ Pentium is a trademark of Intel Corporation
■ R:Base is a trademark of Microrim, Inc.
■ Norton Disk Utitilies is a trademark of Symantec Corporation
■ Microsoft Word and Word for Windows are registered trademarks of Microsoft Corporation
■ WordPerfect is a trademark of Wordperfect Corporation
■ Performance 2.1 is a trademark of Clear and Simple, Inc.
■ Lotus and 1-2-3 are registered trademarks of Lotus Development Corp.
■ FoxPro is a trademark of Microsoft Corporation
■ Intel is a registered trademark of Intel Corporation
■ Video Seven is a trademark of Headland Technology Inc.
iv OS/2 Performance Tuning
──── Page: v ────────────────────────────────
Contents
Why OS/2 Version 2.X ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
What hardware do I need to run OS/2 ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
What hardware configurations run OS/2 2.0 & 2.1 ? . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
How much system memory is needed ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
What performance improvements were made in ver. 2.1 ? . . . . . . . . . . . . . . . . . . . . . . . . . 4
What should I know to install OS/2 2.1? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Boot Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Partitioning Your Hard Disk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
File System Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Default File System Cache Sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Formatting the Partition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Install Features Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Preselected Install . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Full Install . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Selectable Install . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Migrating Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Installation and WIN-OS/2 Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
What Else Can be Changed to Improve Performance? . . . . . . . . . . . . . . . . . . . . . . . . . . 18
General System Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Animation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Changing Display Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Minimize Applications and Folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Starting Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Use Startup Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Multitasking Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Swap File Tuning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
File Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Partition Size and File System Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
File System Caches and Lazy Writing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
The CONFIG.SYS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Customizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Changes for a DOS Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
The AUTOEXEC.BAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Customizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
How To Specify a Different AUTOEXEC.BAT File . . . . . . . . . . . . . . . . . . . . . . . . 33
Tuning for OS/2 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Tuning for Windows Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
WIN-OS/2 Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Tuning for DOS Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
DOS Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Improving Printing Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Improving COM Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Does the Hardware Impact Performance on OS/2 ? . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Contents v
──── Page: vi ────────────────────────────────
CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Displays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Hard Drives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Appendix A. Top Tips to Improve Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Appendix B. Application Performance Measurements . . . . . . . . . . . . . . . . . . . . . . . . . 56
Appendix C. Display Driver Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Appendix D. Removing Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Appendix E. Performance Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Appendix F. Files that can be Migrated to the Server . . . . . . . . . . . . . . . . . . . . . . . . . 65
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
vi OS/2 Performance Tuning
──── Page: vii ────────────────────────────────
Figures
1. Partitioning Example #1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2. Partitioning Example #2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3. File System Partition and File Size Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4. FAT Cluster Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5. Features Installed with PreSelected Install . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6. Selectable Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
7. Installation - System Configuration Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
8. OS/2 2.1 Display Driver Resolutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
9. OS/2 Supplied Fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
10. Software Configuration Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
11. Cache and Lazy Writing Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
12. Installed Cache Default Sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Figures vii
──── Page: viii ────────────────────────────────
viii OS/2 Performance Tuning
──── Page: 1 ────────────────────────────────
Why OS/2 Version 2.X ?
The general advantages of the 32-bit version of OS/2 are the flat memory model, exploitation of
new hardware, increased programming model support, multiple virtual DOS machine sessions,
and relief of some system limits.
The flat memory model is possible due to built in function on the 80386SX and higher processors.
This allows for a very large ( 4 Gigabyte ) single address space referred to as flat memory.
Call/return times are reduced by eliminating the need to switch segments. Internal calls are
handled with the 32-bit offset rather than the segment:offset used previously. The implementa-
tion of this model allows OS/2 2.x to have 32-bit APIs. While all previous 16-bit APIs are still
completely supported, many APIs are now 32-bit, thus improving performance and enhancing
function.
OS/2 2.x exploits hardware in several ways. The OS/2 2.x operating system exploits the Intel
80386 and 80486 microprocessor capabilities. OS/2 2.x utilizes native protected mode and virtual
8086 mode, memory virtualization via a flat memory model, and paging. Utilizing the 32-bit
native mode of the 80386 and 80486 facilitates the exploitation of 32-bit arithmetic and move
instructions. These hardware platforms provide additional segment registers and extend the
general registers to 32-bits. When applications are developed for this environment, proper design
decisions will result in superior performing programs.
OS/2 2.x also provides support for advanced disk hardware. It can use request lists to move data
to the disk, where the hardware supports scatter/gather, and simulates this for disk drives that do
not. This improves the performance of disk accesses.
OS/2 provides support for advanced parallel port hardware. If the machine supports Micro
Channel and uses Direct Memory Access (DMA) for its parallel port, then OS/2's Print Device
Driver significantly improves the speed data is sent to the printer (in excess of 100 kilobytes per
second). This support allows OS/2 to improve performance of applications since OS/2 can spend
more time running applications and less time handling interrupts.
OS/2 2.x releases support all existing 16-bit OS/2 applications (VIO or Presentation Manager),
32-bit OS/2 Presentation Manager applications and mixed model OS/2 applications in the OS/2
full screen or windowed sessions. OS/2 2.x also supports most DOS applications including those
applications that use EMS, XMS or DPMI memory in the VDM full screen or windowed ses-
sions. OS/2 2.0 supported most 2.x and 3.0 Windows applications in the WIN-OS/2 full screen
session and in the WIN-OS/2 seamless session on VGA systems. OS/2 2.01 provided the same
support as release 2.0, but added seamless support for the Tseng and IBM VGA 256c chip sets.
OS/2 2.1 supports the Windows 3.0 and 3.1 applications, and Windows 2.x applications that do
not require real mode, in WIN-OS/2 full screen and seamless sessions on VGA, XGA and SVGA
systems (8514 seamless support is not available in OS/2 2.1).
MVDM (Multiple Virtual DOS Machines) sessions allow for a more fully integrated system.
When the DOS sessions are virtualized, there can be multiple sessions concurrently. OS/2 2.x
supports up to 255 concurrent sessions, although hardware limitations generally prevent you
from reaching that total. DOS sessions can also be windowed. Utilizing the processor's native
virtual 8086 mode eliminated the need to switch from real to protect mode thus improving per-
formance. The virtual DOS sessions can execute in the background, without having to suspend
Why OS/2 Version 2.X ? 1
──── Page: 2 ────────────────────────────────
execution of the current application. This allows DOS applications access to the system clip-
board, allowing cut and paste functions between other windowed sessions.
The Virtual DOS Machine (VDM) sessions support several types of memory:
■ Extended Memory (XMS) to 16 Megabytes
■ Expanded Memory (EMS) to 32 Megabytes
■ DOS Protect Mode Interface (DPMI) Memory to 512 Megabytes
Generally, VDM sessions support the execution of most DOS applications. There are some
DOS applications and products that cannot be supported by DOS emulation due to the nature
of the emulation code and the multitasking and protection demands of OS/2 version 2.x.
Windows application support is included in OS/2 2.x to allow execution of Windows applications
along with OS/2 and DOS applications, providing a wide range of application support.
Windows application support has been enhanced in OS/2 2.1. Enhancements were provided in
OS/2 2.1 to support the Windows 3.1 environment for running Windows applications full screen
and seamlessly on the OS/2 Workplace Shell. The Adobe Type Manager support has moved to
version 2.5. The performance of WIN-OS/2 has also been substantially improved. A new mode
called Enhanced Compatibility Mode enables a number of Windows 3.1 enhanced mode applica-
tions to run. The Clipboard and DDE support have been redesigned for speed, and several
enhancements were made to display drivers. The 2.x versions of OS/2 also utilize the object
oriented Workplace Shell which provides a friendlier user interface (for example the drag/drop
function for direct manipulation of objects).
2 OS/2 Performance Tuning
──── Page: 3 ────────────────────────────────
What hardware do I need to run OS/2 ?
This section covers hardware and support requirements for the OS/2 2.x operating system. To
help you plan user configurations, worksheets are provided that include memory and hard disk
requirements for specific components and features.
What hardware configurations run OS/2 2.0 & 2.1 ?
OS/2 2.0 is designed for personal computers with the following minimum requirements:
■ Intel (or compatible) 80386SX microprocessor
■ 4MB of memory (6MB or more recommended)
■ 60MB hard disk with 15-30MB of free disk space (ver. 2.0 & 2.01)
or 20-40MB of free disk space (ver. 2.1)
■ 2-button mouse or other pointing device
Beginning in OS/2 version 2.1, you can install Windows support on a partition different from the
partition where OS/2 is installed. This will allow you to move some of the disk space require-
ment to another partition. While you will still need the same amount of disk space in total, this
feature allows flexibility when available space on the install partition is limited. Because of its
32-bit addressing power, the OS/2 2.x operating system requires a computer that has a system
unit equipped with an Intel (or compatible) 80386 (or higher) microprocessor. The 80386SX
microprocessor provides fair performance for those who work in lower-demand application envi-
ronments. In environments that demand multiple concurrent processes, the 80486 will provide
excellent performance. Also consider the 80486 series if you expect to switch frequently and
rapidly among a large number of concurrent tasks.
How much system memory is needed ?
Topics that follow discuss memory and disk storage information that you need to consider for
OS/2 2.0 and OS/2 2.1. Memory and disk storage are closely related because of the ability of the
operating system to manage the allocation of memory resources between real physical memory
and hard disk space.
The minimum memory requirement for OS/2 2.0 & 2.1 is 4MB. Some computers use up to
128KB for ROM-to-RAM (read-only memory to random-access memory) remapping; some use
more than 128KB for other hardware purposes. Therefore less than the minimum required
memory is available. On these systems, another 512KB to 1MB would satisfy the minimum
requirement. You can check such systems to see if there is a way to replace the memory so that
the minimum requirement is met.
In general, the OS/2 2.0 & 2.1 operating system, including its shell, requires 1 to 2 megabytes
more memory to give performance equivalent to OS/2 version 1.3. The memory requirement for
OS/2 2.1 is similar to the memory requirement for OS/2 2.0. It is recommended that systems have
a minimum of 6 megabytes of memory for good performance.
What hardware do I need to run OS/2 ? 3
──── Page: 4 ────────────────────────────────
What performance improvements were made in ver. 2.1 ?
The most significant performance improvements made between version 2.0 and 2.1 were in
WIN-OS/2. Additional improvements were made in the graphics sub-system, VDM support, and
printing.
A significant enhancement provided in OS/2 2.1 is the support of a Windows 3.1 environment to
run Windows applications seamlessly on the Workplace Shell. The performance of WIN-OS/2
has been substantially improved. A new mode called Enhanced Compatibility Mode enables a
number of Windows 3.1 enhanced mode applications to run. The Clipboard and DDE underwent
a major redesign, including virtual rendering of clipboard data. Several enhancements were made
to the WIN-OS/2 display drivers.
In OS/2 2.0, support was provided in WIN-OS/2 3.0 to enable Windows 3.0 applications to run
in Standard and Real modes. In OS/2 2.1, the support has been upgraded to include device
drivers written specifically to run in the Windows 3.1 environment, including XGA / XGA-2 and
SVGA support.
In OS/2 2.1, the graphics engine was rewritten (from assembler) using the 32-bit IBM C Set/2
compiler. In addition to being a fully 32-bit engine, many graphics operations were enhanced for
better performance. The 32-bit engine consumes more memory than the 16-bit version, so
efforts were made to optimize its memory usage for both the Workplace Shell and graphical
intensive application environments. Frequently used routines in the graphics engine were tuned
and linked together in such a way as to minimize the system working set. This process is
referred to as page tuning.
In addition to the graphics engine, the PM display drivers have changed significantly between
OS/2 version 2.0 and OS/2 version 2.1. The OS/2 2.1 PM XGA driver makes use of the new
hardware features of the latest XGA-2 display adapter. It provides non-interlace support, takes
advantage of external polling capabilities, and can display up to 64K colors in low resolution
modes (640 x 480, 640 x 400). The XGA PM display driver is 32-bit, and performance has
improved. There were no SVGA display drivers supplied in OS/2 2.0. In OS/2 2.1, several
SVGA chip sets are supported. The SVGA PM display drivers are all 32-bit and 256 colors.
Performance comparisons between OS/2 2.1 and OS/2 2.0 with generic 16-bit drivers from
vendors show that OS/2 2.1 SVGA performance is visibly faster. The OS/2 2.1 PM VGA driver
is 32-bit. From the viewpoint of performance, it has some improvement over the 16-bit version.
The 8514 PM display driver with OS/2 2.1 is now 32-bit. Since the graphics engine is also 32-bit,
performance has improved.
Dual-thread support was added to VDMs in release 2.1. OS/2 enhanced its multimedia support
by providing the dual-thread feature. Real time applications, such as multimedia and communi-
cations, need to handle interrupts while doing file I/O. System timer ticks are used to update the
screen and produce sound. In the first release of OS/2 2.0, each VDM executes as one thread. If
the thread is busy doing a file I/O operation, it does not receive an interrupt until the entire I/O
operation is complete. By introducing a second thread, OS/2 2.1 allows interrupts to be serviced
while waiting for the completion of the I/O operation. This improves the performance of multi-
media DOS applications, which need interrupt notification even when doing file I/O. DOS com-
munication programs that do file I/O may be helped by this feature.
4 OS/2 Performance Tuning
──── Page: 5 ────────────────────────────────
This version of OS/2 also contains some Pentium specific optimizations. The areas where this
enablement was added improved the performance in interrupt management for VDMs and
improved floating point performance in VDM and WIN-OS/2 sessions.
DPMI is a protected mode programming interface for DOS applications, allowing those applica-
tions to run on the 80x86 processors in protect mode, while utilizing the real mode services of
the operating system and device drivers. In OS/2 2.1 the DPMI support has been upgraded to
version 1.0.
OS/2 2.1 also performs better running DOS and Windows communication applications. OS/2 2.1
also supports more DOS communication applications.
Performance improvements were made for printing. OS/2 now ships a 32-bit PostScript printer
driver. For parallel ports LPT1 to LPT3, both parallel port device drivers, PRINT02.SYS for
Micro Channel machines and PRINT01.SYS for AT-Bus (ISA) and EISA machines, send data
faster in OS/2 2.1. This allows the print buffer found on most printers, to be filled quickly
reducing the overall print job time. There are also printer properties that improve performance
and the OS/2 spooler's print priority can be changed if needed.
On laptops that support the Advanced Power Management 1.0 Specification, there is an improve-
ment in battery life. Software support will automatically be installed on systems with the correct
hardware support. The object icon can be found in the System Setup folder. This object is used
to show the current status/state of your laptop's battery and allows you, if you wish, to turn the
advanced power management functions on and off.
What performance improvements were made in ver. 2.1 ? 5
──── Page: 6 ────────────────────────────────
What should I know to install OS/2 2.1?
The purpose of this document is to help you tune your OS/2 2.1 system. This section follows the
installation path to provide performance related information for the end user. You can use this
section for information relating to system performance as you complete your installation. Addi-
tional sections contain information for tuning installed systems that can be used after you com-
plete installation or on preinstalled systems.
The first screen that requires your input asks if you accept the partition selected by install for
your system installation. The choices are accept the partition or select another partition.
Accepting the default will install OS/2 on the C: Primary partition or the partition set installable
(having a partition set installable requires you to have run FDISK earlier). If you have a new
hard disk (not preinstalled), accepting the default creates one primary partition the total size of
your hard drive.
If you decide to select another partition, installation puts you in FDISK and you can make
changes as needed. There are several topics that interact here -- use of the Boot Manager, parti-
tion sizes and which file system to use. They are discussed here so that you may understand the
implications of your selections.
Boot Manager
You should consider the use of the Boot Manager facility that is provided with OS/2 2.0 and 2.1.
This facility allows you to have multiple operating systems installed on your computer system
and then select which one to make active and boot from. This is very helpful when migrating
from one operating system to another, such as DOS/Windows to OS/2, or when upgrading to
new versions of an operating system, such as OS/2 1.3 to OS/2 2.0 or 2.1. This allows you to test
the new system, while maintaining your old system.
In order to use this feature, you will require enough space on your disk for the multiple oper-
ating systems, as well as 1 MB for the Boot Manager facility itself. The 1 MB for the Boot
Manager must be space which is not allocated to any disk partition, and can be loaded at the
beginning or the end of the physical disk drive. It is recommended that you place the Boot
Manager partition at the end of the disk drive so that you will not have to seek over it all the
time. The Boot Manager partition is only used when you boot up your system, or when you
change the Boot Manager options, so there are no performance impacts by having it at the end
of the drive.
If you do not have the free space to use the Boot Manager, see the next section, "Partitioning
Your Hard Disk" for further information and some helpful suggestions.
To install the Boot manager, you must use the FDISK utility that is supplied with OS/2 2.0 or
2.1. This is located on Diskette 1 of the installation diskettes. It can be run either from an OS/2
1.3 system or an OS/2 2.X system. It will not run from a DOS session. When you start FDISK,
it will show you the partitions that are defined on the first disk. You can use the TAB key to go
to the top of the screen to select which disk you want to work with. Use the Tab key again to go
to the Partition Information portion of the screen. When you hit the Enter key for the partition
6 OS/2 Performance Tuning
──── Page: 7 ────────────────────────────────
that is highlighted, you are presented with a menu list. Consult the Installation Guide for infor-
mation on using FDISK, or refer to FDISK and SETBOOT options in the on line help facility.
Partitioning Your Hard Disk
Partitioning a system is truly individualistic. Just like background screen colors and bit-maps,
there are endless variations available when partitioning your hard drive. The size of the hard
drive and planned use of the system affects your decision. Lets use Jane and her systems at
home and at work as an example. Her system at work is connected to a LAN and a host
system. Her system at home is primarily stand-alone. Her system at work (400 MB hard disk) is
partitioned as:
The smaller partitions are formatted FAT, while the large partition (containing her OS/2 applica-
tions and swap file) is formatted HPFS for better performance. The C: partition has OS/2 2.0
installed and the D: partition has OS/2 2.1 installed. Having C: and D: contain two versions of
OS/2 allows her to boot between them as needed for development and testing.
Another example is her system at home (400 MB hard drive). It is partitioned as:
Again, the smaller partitions are formatted FAT, while the large partition is formatted HPFS for
better performance. The C: partition has DOS 4.0 installed with Windows 3.1. The D: partition
has OS/2 2.0 installed, and F: has OS/2 2.1 installed. She would have installed 2.1 in D: except
that she found that many Windows applications like to install themselves on the same drive as
Windows code, and she was running tight on disk space on D:. F: is formatted FAT because it
contains Windows applications that are sometimes run when DOS is booted. The E: partition
contains her OS/2 applications, data and the OS/2 swap file. The G: partition holds her chil-
dren's games and the FAT format allows them to be run from OS/2 or DOS.
Originally, this system did not have boot manager installed. When she decided to install it, she
needed a 1 MB partition at one end of her hard drive, so she backed up the G: partition, ran
FDISK and removed that logical drive and made G: and H:. This did not interfere with the
other partitions, so she did not have to backup the entire system, just the one partition at the
end of the hard drive.
Figure 1. Partitioning Example #1
C: (Primary Partition) 50 MB formatted FAT
D: (Logical Partition) 80 MB formatted FAT
E: (Logical Partition) 269 MB formatted HPFS
(Boot Manager) 1 MB
Figure 2. Partitioning Example #2
C: (Primary Partition) 30 MB formatted FAT
D: (Logical Partition) 50 MB formatted FAT
E: (Logical Partition) 140 MB formatted HPFS
F: (Logical Partition) 100 MB formatted FAT
G: (Logical Partition) 79 MB formatted FAT
(Boot Manager) 1 MB
What should I know to install OS/2 2.1? 7
──── Page: 8 ────────────────────────────────
FDISK allows 4 entries. An entry is defined as a primary partition (boot manager is one) or a
run of logical drives. In both examples there are 3 FDISK entries. You can have multiple
primary partitions, but you can only access the selected primary partition when booted. When
booting a system that has multiple primary partitions, think of it as choosing which one you
would like to access as C: The other primary partitions cannot be accessed.
The decision on partitioning your system must be based on your anticipated use. The OS/2 boot
manager allows for many possibilities. The partition size and expected use will also influence
your file system selection.
File System Selection
To know which file system to choose, it is first necessary to understand the two file systems.
While both file systems work on the same hard drives and partitions, there are performance
reasons for choosing one over the other.
The file systems supported under OS/2 are FAT and HPFS. They are functionally equivalent to
the earlier releases. The file systems in OS/2 versions 2.0 and 2.1 support the same file sizes and
partition sizes.
Both HPFS and the FAT file systems have disk caching, lazy writing and read-ahead. See ╚File
Systems╝ on page 22 for more information on file systems, caches and lazy writing.
File system caches and lazy writing parameters can be changed during or after initial installation.
The default values set by installation are good for average systems. See ╚File Systems╝ on
page 22 and ╚The CONFIG.SYS╝ on page 27 for additional tuning information.
Generally, if a partition is less than 100 MB, the file system selected should be FAT. FAT pro-
vides excellent performance and reserves less disk space for managing the partition than HPFS.
The High Performance File System, which was designed for the larger disk drives, generally per-
forms better than FAT in partitions greater than 100 MB, especially where there are many small
files, a very large file (for example a database) or the access to the disk will generally be random.
The FAT file system manages the partition using clusters. The cluster size varies with the parti-
tion size because only 64 KB is used to manage the entire partition. Larger partitions have
larger clusters than smaller partitions. Since a file or directory always takes n number of clusters,
this results in a less efficient use of DASD in large partitions (a 1 byte file will take a cluster,
even if the cluster is 8 KB).
HPFS manages all partitions at a sector granular level, regardless of the size of the partition.
This allows for better use of DASD. (a 1 byte file will take 1 sector (generally 512 bytes) for
data and 1 sector to manage the file (Fnode) ).
Figure 3. File System Partition and File Size Support
Max File Size
Max Partition Size
FAT
2 GB
2 GB
HPFS
2 GB
64 GB
8 OS/2 Performance Tuning
──── Page: 9 ────────────────────────────────
The way that the file systems manage disk space may influence your partition size or your file
system selection. Large disks formatted FAT can have cluster sizes up to 64 sectors (generally
64 KB) resulting in poor use of your disk space. Cluster sizes change as follows:
File system selection, cache sizes and options influence the performance of application load times
and run time within I/O intensive applications. See ╚File Systems╝ on page 22 for specific file
system tuning that can be done after installation.
Default File System Cache Sizes
Although the installation defaults might not be specifically customized to a particular system,
these values are easiest tuned after installation. The default values are shown in Figure 12 on
page 27. If only the FAT file system is installed, the default sizes are for the DISKCACHE=
statement in the CONFIG.SYS file. If the system has partitions that are all HPFS, the default
size is for the IFS=HPFS statement in the CONFIG.SYS file. (On HPFS only systems, the
FAT diskcache is set at 64 KB) If the system uses both file systems types, then OS/2 2.0 installa-
tion changes the cache size for both file systems. The file system with the largest total amount
of DASD (sum of the partitions) gets the first value, the other file system gets the second value.
See ╚File Systems╝ on page 22 for additional information.
Formatting the Partition
The next decision to make at installation is whether or not to format. It is always advisable to
format the partition at installation time. This allows clean up of any unnecessary files. It is
important to remember that if you have applications or data on that partition that it must be
backed up prior to formatting to be saved. If you select to not format the partition, installation
will continue and will clean up system files (i.e. remove WIN-OS/2 support from 2.0 at install of
2.1, replacing it with the enhanced WIN-OS/2 support)
Install Features Selection
The next decision to make is which installation path to take. The Install Preselected Features
selection installs most, but not all, OS/2 features. It takes about 27 MB of disk space (plus the
swap file). Any features not installed can be installed at a later time using the Selective Install
feature. This is the Selective Install icon located in the OS/2 System folder. Install All Features
will install all features available in OS/2. There are few selections to be made during this install,
Figure 4. FAT Cluster Size
Partition Size
Cluster Size
diskettes 1 sector
< 16 MB 8 sectors
16 to 128 MB 4 sectors
128 to 256 MB 8 sectors
256 to 512 MB 16 sectors
512 to 1024 MB 32 sectors
1024 to 2048 MB 64 sectors
What should I know to install OS/2 2.1? 9
──── Page: 10 ────────────────────────────────
and it takes about 35 MB of disk space (plus the swap file). Select Features and Install requires
selecting items from several menus. This option allows you to do a custom install of your
system. The range of disk space required is 17 MB to 35 MB (plus swap file). The lower value
provides for only the minimum files required to install and run OS/2. Figure 5 lists the features
that are selectable. The minimum value refers to having selected NO features.
Selection of features depends on personal preference. There are no performance impacts from
selecting required function. Do not install features that your hardware cannot support (i.e.
CD-ROM, PCMCIA, APM). Disk space requirements are listed to help you understand disk
space requirements only.
Preselected Install
Preselected installation provides a general installation of OS/2 features for users. This default is
good for new users that do not have enough space for a full install. The features provided when
the pre-selected installation is taken include all required files for OS/2 and the following features:
Figure 5. Features Installed with PreSelected Install
Documentation (.8MB)
OS/2 Tutorial (168KB)
Fonts (1.9MB)
Helvetica (233KB)
Courier (outline) (502K)
Optional System Utilities (1.6MB)
Backup Hard Disk (29KB)
Change File Attributes (37KB)
Manage Partitions (228KB)
Restore Backed Up Files (30KB)
Sort Filter (32KB)
Installation Utilities (501KB)
Tools and Games (6.0MB)
Search and Scan Tool (71KB)
Personal Productivity (1407KB)
OS/2 DOS Support (1.3MB)
DOS Protect Mode Interface (22KB)
Virtual Expanded Memory Management (19KB)
Virtual Extended Memory Support (8KB)
Windows Support (9.0MB)
Readme Files (143KB)
Accessories (1154KB)
Screen Savers (77KB)
Sound (253KB)
High Performance File System (0.4MB)
10 OS/2 Performance Tuning
──── Page: 11 ────────────────────────────────
Full Install
Full installation option installs all features of OS/2. This selection requires about 40 MB of disk
space. Additional space is required for the swap file in constrained systems. If your partition is
small ( < 50 MB) it is advisable to move the swap file to another partition.
The features provided when the full installation is taken include all required files for OS/2 and
ALL the features listed in selectable install.
Selectable Install
Selectable install allows for full end-user control of features to be installed on a system. There
are several options available on menus, and sub-menus allow for a more specific selection. For
example, you can choose to select (or not select) all the productivity aids, or you can use the
sub-menu to select some of the productivity aids.
The selectable install is the best selection for users who understand the features available, and for
users that are concerned with disk requirements. The 2.1 release is larger (especially the
enhanced WIN-OS/2 support) and selectable install will provide you with a full range of feature
selection. Remember that the more features selected the more disk space required. Also, the
more entries in a folder, the slower the performance when opening that folder. For example, if
you select all the productivity aids and games, then opening the productivity folder will be slower
than if you had only the 2 productivity aids you actually used. All features can be added after
installation by using selective install in the system setup folder. (For deleting features, see
Appendix D, ╚Removing Features╝ on page 58)
When selecting features, include REXX support if you will be installing OS/2 Lan Services or
OS/2 Communication Services. Rexx is required to successfully run those programs.
Figure 6 (Page 1 of 2). Selectable Features
Documentation (.8MB)
OS/2 Tutorial (168KB)
OS/2 Command Reference (391KB)
REXX Information (195KB)
Fonts (1.9MB)
Courier (92KB)
Helvetica (233KB)
System Mono-spaced (35KB)
Times Roman (215KB)
Courier (outline) (502KB)
Helvetica (outline) (395KB)
Times New Roman (outline) (430KB)
What should I know to install OS/2 2.1? 11
──── Page: 12 ────────────────────────────────
Figure 6 (Page 2 of 2). Selectable Features
Optional System Utilities (1.6MB)
Backup Hard Disk (29KB)
Change File Attributes (37KB)
Display Directory Tree (34KB)
Manage Partitions (228KB)
Label Diskettes (34KB)
Link Object Modules (472KB)
Picture Viewer (33KB)
PM REXX (85KB)
Recover Files (47KB)
Restore Backed Up Files (30KB)
Sort Filter (32KB)
Installation Utilities (501KB)
Tools and Games (6.0MB)
Enhanced Editor (926KB)
Search and Scan Tool (71KB)
Terminal Emulator (1592KB)
PM Chart (1201KB)
Personal Productivity (1407KB)
Solitaire - Klondike (388KB)
Reversi (34KB)
Scramble (62KB)
Cat and Mouse (53KB)
Pulse (40KB)
Jigsaw (71KB)
Chess (266KB)
OS/2 DOS Support (1.3MB)
DOS Protect Mode Interface (22KB)
Virtual Expanded Memory Management (19KB)
Virtual Extended Memory Support (8KB)
Windows Support (9.0MB)
Readme Files (143KB)
Accessories (1154KB)
Screen Savers (77KB)
Sound (256KB)
High Performance File System (.4MB)
Advanced Power Management (.1MB)
PCMCIA Support (.1MB)
REXX (.4MB)
Serviceability and Diagnostic Aids (.7MB)
Optional Bit-maps (.1MB)
12 OS/2 Performance Tuning
──── Page: 13 ────────────────────────────────
System Configuration Menu
After you select which installation path, and before you select features in a preselected install, the
System Configuration Menu is displayed. Usually, the correct hardware support is shown here.
There are some exceptions on non-IBM hardware, so check this screen carefully to verify that
install recognized all your hardware. At this time, any of these items can be changed. The
following figure shows which items can be changed from the System Configuration Menu.
Display Selection
The System Configuration Menu allows you to select the display driver based on your hardware.
You can choose installing VGA on SVGA, 8514 or XGA systems. High resolution display
drivers must handle a greater number of points on the screen (called pixels) and the performance
will be somewhat slower. However, the advanced hardware has improved performance so the
overall result is
■ The best performance with excellent resolution will be with XGA display drivers
■ Low resolution and good performance with the VGA display driver,
■ Excellent resolution and moderate performance with SVGA display drivers.
The PM XGA display driver will only work on XGA hardware (display adapter and display) and
the PM SVGA display driver will only work on SVGA hardware (display adapter and display).
Similarly, the PM 8514 display driver will only work with the 8514A display adapter card and
appropriate display.
The type of hardware display of the system will be shown under "Primary Display" on "System
Configuration" panel. If it is not correct,or you wish to change it, you may click on "Primary
Display", "O.K.", and choose the correct display accordingly. The supported resolutions for each
display are illustrated in Figure 8.
Figure 7. Installation - System Configuration Menu
System
Mouse
Serial Device Support
Primary Display
Secondary Display
Locale
Country
Keyboard
Peripherals
CD_ROM Device Support
SCSI Adapter Support
Printer
What should I know to install OS/2 2.1? 13
──── Page: 14 ────────────────────────────────
In addition to the displays described in the following subsections, OS/2 2.1 also supports EGA
and CGA. Because of the highly graphical user interface provided by the Workplace Shell, use of
OS/2 2.1 in these modes will be difficult and is not recommended.
■ VGA
The only resolution for VGA is 640 x 480 x 16 colors. All XGA and SVGA display adapters
are also supported in VGA mode with the VGA driver shipped with OS/2 2.1.
■ XGA
The default resolution during installation depends on the amount of available VRAM on the
system. This is the same for XGA and XGA-2 display adapters. For systems with 0.5 MB
VRAM, the default resolution is 1024 x 768 x 16 colors while for systems with 1.0 MB
VRAM, the default resolution is 1024 x 768 x 256 colors. It requires 1.0 MB VRAM to run
in 1024 x 768 x 256, 640 x 480 x 64K and 640 x 400 x 64K color modes. You can change the
resolution and colors to be displayed on the screen after initial installation. See ╚Changing
Display Drivers╝ on page 18 for additional information.
The XGA display drivers support both the XGA and the XGA-2 adapter cards. Addi-
tionally, the new XGA-2 display subsystem has a built-in utility called Display Mode Query
Set (DMQS), which can take care of setting up optimum parameters for given display
devices. The correct selection of display type is automatically done by OS/2 2.1 installation
program. It can be changed after installation. See ╚Changing Display Drivers╝ on page 18
for information on changing and tuning display drivers.
■ SVGA
The implementation of SVGA varies widely and requires different device drivers for different
resolutions, as well as different adapters and systems. OS/2 2.1 supports the following SVGA
chip sets:
- ATI Technologies Inc., ATI28800
- Headland Technology Inc.,Chip Type: HT209.
- Trident Microsystems, Chip Type: TVGA 8900B and TVGA 8900C.
- Tseng Laboratories, Chip Type: ET4000.
- Western Digital Corporation, Chip Type: WD90C11, WD90C30, and WD90C31 (in C30
compatibility mode).
- Cirrus Logic Inc., Chip Type: CL-GD5422 and GD5424
Figure 8. OS/2 2.1 Display Driver Resolutions
Resolutions
640x400
640x480
800x600
1024x768
Colors
256
65,536
16
256
65,536
256
16
256
VGA
X
XGA
X
X
X
X
X
X
SVGA
X
X
X
IBM 256c
X
8514
X
14 OS/2 Performance Tuning
──── Page: 15 ────────────────────────────────
- IBM Corp., Chip Type: IBM VGA 256c and SVGA-NI.
The default driver during installation is VGA driver (640 x 480 x 16 colors), if your SVGA
hardware is not detected by install. The resolution may be changed by installing the drivers
for the desired resolution. See ╚Changing Display Drivers╝ on page 18 for additional infor-
mation.
At least 0.5 MB VRAM is needed to install the SVGA drivers. At 0.5 MB VRAM, only the
OS/2 SVGA resolution of 640 x 480 x 256 colors is supported. Both the 1024 x 768 x 256
colors and 800 X 600 X 256 colors resolutions require 1 MB VRAM.
■ 8514
The only resolution available for 8514/A display is 1024 x 768 x 256 colors. The driver is the
new 32-bit driver.
■ Seamless Support (WIN-OS/2)
WIN-OS/2 display drivers are automatically copied at installation time for the display type
selected. WIN-OS/2 support for executing Windows applications is provided in full screen or
seamless (windowed) sessions. Seamless support is provided in the display device driver, and
that support has changed between releases. In version 2.0, only the VGA display driver pro-
vided seamless support. All other display drivers supported WIN-OS/2 in full screen only.
In version 2.1, VGA, XGA and SVGA display drivers shipped with OS/2 support seamless
execution for WIN-OS/2. Additional display drivers having support for seamless execution
of WIN-OS/2 may be available after OS/2 2.1 ships.
The OS/2 Setup and Installation Menu
The OS/2 Setup and Installation menu, seen in selective install only, allows you to select which
features to install. Sub-menus provide flexibility in choosing the features. These selections gen-
erally provide function only, and the disk space window lets you know the disk space available
and the disk space needed for the items you have selected. Font support selection can affect
performance and memory. More information is provided here to help in the selection process.
Font Support
During the selective install process, you can select which of the fonts shipped with OS/2 should
be installed in your system. See Figure 9 for a list of the fonts supplied by OS/2.
You should only install those fonts that you will actually use on your system. This will not only
save you disk space, but will also improve your performance when loading applications that use
fonts, and reduce the amount of system resources being used. Each font that is installed in the
Figure 9. OS/2 Supplied Fonts
Courier
Helvetica
System-Mono Spaced
Times-Roman
Courier Outline
Helvetica Outline
Times New Roman Outline
What should I know to install OS/2 2.1? 15
──── Page: 16 ────────────────────────────────
system will use a minimum of 2 KB of memory even if it is not being accessed. This number will
increase significantly when you actually start to use the font in an application.
Outline fonts tend to be more efficient from a performance point of view since only the charac-
ters that are actually used are cached into memory. With non-outline (bit-mapped) fonts, the
entire bit-map character rendering buffer is loaded into memory. This can increase the working
set and cause the system to enter into a paging situation. Also, bit-mapped fonts are defined for
a specific screen resolution and device. Outline fonts are scalable and loaded for the specific
device installed on your system. Outline fonts can also be downloaded to certain printers and
increase performance.
Additional fonts can be added after the installation process. Selecting only the outline fonts
reduces disk space requirements and keeps system performance optimal.
Software Configuration Menu
The Software Configuration pull down menu allows you to change OS/2 Parameters and DOS
Parameters. Tuning information on these items is provided in the system tuning section (These
changes can be made during or after installation). Page numbers where the information can be
found are provided for ease of use during install. Figure 10 shows the items that can be changed
from the Software Configuration Menu.
Swap File
The swap file (SWAPPER.DAT) default placement is on the installed partition in
\OS2\SYSTEM. If you are running tight on disk space, move this file to another partition. The
swap file is moved to another partition at installation time from the software configuration menu
(see above). The swap file can be moved after installation by changing the SWAPPATH= line
in the CONFIG.SYS. These changes take effect at the next boot. More information on the
swap file is included in the file system section, including the parameters and swap file placement.
Figure 10. Software Configuration Menu
Software Configuration
OS/2 Parameters
Printer Monitor Buffer Size
Buffers
Diskcache
Maxwait
Swap Minfree
Threads
Swappath
Memman Protect
Memman Swap
Priority
DOS Parameters
Break
Open FCBS
Protected FCBS
RMSize
16 OS/2 Performance Tuning
──── Page: 17 ────────────────────────────────
Migrating Applications
The Migrate Applications utility can be run during the install process or from the System Setup
Folder. It uses a migration database to define what specific changes need to be made to DOS
and WIN-OS/2 session settings, as well as how OS/2, DOS and Windows applications should be
setup. This database is called DATABASE.DAT and is located in the \OS2\INSTALL subdirec-
tory of your OS/2 system. A text version of this file, called DATABASE.TXT, also exists in the
\OS2\INSTALL subdirectory to allow you to change the settings of a particular application, or
to add new applications to the database.
Migrate should be used, either at install time or after an application is installed, to setup the
application and place its icon in the appropriate folder. The customized settings for applications
listed in the migration database are good general defaults. After installation, see the sections on
tuning applications for additional changes to improve performance.
Installation and WIN-OS/2 Support
When installing OS/2 2.1 over a prior version of OS/2 2.x, the WIN-OS/2 support previously
provided will be deleted. This is true even if you installed using the WIN-OS/2 beta and placed
WIN-OS/2 on another partition. You may defer the installation of WIN-OS/2 3.1 by not
selecting WIN-OS/2 3.1 installation during the installation phase. However, install will remove
WIN-OS/2 3.0 regardless of whether WIN-OS/2 3.1 is installed or not.
If you decide to install WIN-OS/2 3.1, you will have an option to either install a new Windows
desktop or preserve the current desktop. Select this option if you would like to keep the custom-
ized Windows desktop you already have installed. You will also have the option to install to a
partition other than the one where you are installing OS/2. This provides flexibility on systems
where the install partition is too small for all the features selected.
What should I know to install OS/2 2.1? 17
──── Page: 18 ────────────────────────────────
What Else Can be Changed to Improve Performance?
After installation, there are additional changes that can be made to improve the performance of
OS/2. Some of these items are general in nature and apply to the overall system performance.
Some changes are specific for certain systems or certain applications. These changes are
included in this section.
General System Changes
There are some changes that affect the performance of the entire system. They are included here
with information on their system impact so that you may tune your system as needed.
Animation
On memory constrained, low end systems, the performance when opening folders and starting
sessions can be improved by disabling animation. Animation is the process of drawing boxes on
the screen that appear to grow in size culminating in an open folder or session. This gives a nice
appearance when systems are performing well. If you are running on a 80386 SX system and are
overcommitted in memory, performance is improved if animation is disabled.
To disable desktop animation, open the System Setup icon in the OS/2 System folder. Select the
System icon, and go to the page with the Window bookmark. This screen allows you to select
Disable Animation.
Changing Display Drivers
You may decide to change display drivers on your system. The different display drivers affect
the performance of your system. Resolutions on the XGA and SVGA systems also affect per-
formance. The section ╚Display Selection╝ on page 13 describes the various display drivers that
are available with their resolutions and number of colors supported. The following information
details how to change the resolution.
1. Select "OS/2 System".
2. Select "System Setup".
3. Select "System".
4. Choose the new display type
5. Choose the desired resolution
6. Follow remaining selections
7. Shutdown and reboot the system.
Note: If you are changing from one type of SVGA hardware to another type, it is best if you
change the display driver to VGA before you change hardware, then change back again to
the correct display driver type. This will keep you from having a display driver / hard-
ware mismatch that could necessitate reinstalling OS/2.
The following information details how to change the display driver.
1. Select "OS/2 System".
2. Select "System Setup".
3. Select "Selective Install".
18 OS/2 Performance Tuning
──── Page: 19 ────────────────────────────────
4. Click on Primary Display
5. Click OK
6. Choose the desired display type
7. Follow remaining selections
8. Shutdown and reboot the system.
Minimize Applications and Folders
When working with OS/2, you will have better system responsiveness if you minimize applica-
tions between uses. Performance when accessing a minimized application is faster than starting
the same application. This is also true when working with folders. When you have applications
or folders that you use often, leaving them open at shutdown (or placing them in the startup
folder) will cause them to be loaded at system boot time, and accessing them will be significantly
faster.
Starting Applications
Performance when starting applications may not be as quick as you would like. This is espe-
cially true if your system is memory constrained or has slow DASD. Some steps can be taken to
reduce the application load time.
Start applications from their own subdirectory, or call the application with a fully qualified
path. This will reduce the search time for OS/2 to locate the file(s). Using the icon to start the
application is optimal. The icon will have (if migrated or correctly installed) the exact path for
executable and data files. Be certain that the PATH, LIBPATH and DPATH statements in the
CONFIG.SYS are arranged with the most frequently accessed subdirectories listed first. Also,
start the application earlier by leaving it open at shutdown, or by using the startup folder.
Use Startup Folder
Applications and folders can be opened several ways. If they were left open at shutdown, they
will reopen at boot time after the Workplace Shell is started. Applications placed in a
STARTUP.CMD file will also be processed at boot time, after the Workplace Shell is started.
Applications and folders placed in the Startup Folder will be opened with the processing overlap-
ping the startup of the Workplace Shell. This use of the Startup Folder is preferred because it
takes advantage of OS/2 multitasking.
Multitasking Considerations
OS/2 is a true multitasking operating system. It manages multiple processes concurrently by
sharing the system CPU (called timeslicing). If your system has enough processing power, you
will not see any performance degredation when executing multiple applications. However, if
your system is memory overcommitted or if you are constrained by the processer you may expe-
rience performance problems. There are several steps you can take to improve performance.
First you should verify that you are only running programs that are necessary. If you have any
processes that are not needed (for example Pulse, Cat and Mouse, a clock, etc.) they should be
closed. Those spplications, when running, take cycles from the processor. This would affect the
performance of other applications that are executing.
What Else Can be Changed to Improve Performance? 19
──── Page: 20 ────────────────────────────────
If you have a problem with foreground tasks, they may be affected by background applications.
Verify that the settings are correct for the application, especially DOS applications that may poll,
so that useful tasks are always processing. On memory constrained and 80386SX systems, you
should limit background processing to improve foreground performance. This would not mean
that you should close background applications, but you will have better response time in your
active application if the other applications are not concurrently processing.
This also applies if you are running memory and file I/O intensive applications concurrently (for
example printing from an application, reflowing a large document, processing a large data base,
etc.). While OS/2 allows you to run many applications at once, this can cause a problem is some
systems when the processer or memory become overcommitted. Also see ╚Does the Hardware
Impact Performance on OS/2 ?╝ on page 50 for information on hardware upgrades.
Swap File Tuning
Current hardware allows operating systems to assign virtual address space to applications. This
address space can be backed by either real memory or by disk space. When more memory is
needed to execute programs than is currently available in the system, OS/2 moves some of the
information stored in memory off to the hard drive. This is called swapping or paging. In OS/2,
the file where the data is written is the SWAPPER.DAT file.
The swap file parameters have changed from the prior releases. This was due to functional
changes but also provides for easier tuning for increased performance. The swap file is used for
paging in overcommitted systems and to store some data not being accessed frequently. It is
allocated at boot time, reducing fragmentation.
There are two parameters -- the first value is the MinFree Value, the second is the Initial Swap
File Size. Both are expressed in KB, and the system rounds them to megabytes at boot time.
The MinFree Value determines at what time you will receive a warning message that disk space
has been reduced too low. When the swap file grows, the system checks for the remaining disk
on the partition where the swap file is located. If the remaining amount of free space, after the
swap file extension, is less than the amount (in megabytes) of the minfree value, a message is
displayed. This should be set to provide you time to take action so that additional swap file
extensions are not halted due to lack of disk space.
The options available when the warning occurs are:
■ End Program/Command/Operation
■ Ignore the Error and Continue
■ Display Help
If you choose to ignore the warning, and the system tries to extend the swap file without having
disk space to handle the request, the system will halt -- no additional warnings, no chance to
save data.
If you let the system end the program that requested the memory, it will probably end the appli-
cation that is just loading OR the workplace shell. (The workplace shell places many requests for
memory on the system. It will restart after the system ends it)
20 OS/2 Performance Tuning
──── Page: 21 ────────────────────────────────
The best solution is for you to take the time to exit applications that you are no longer being
used, since you are most knowledgeable on what is or will be needed. In any case DO NOT
IGNORE THE MESSAGE.
The best minfree value for your system is generally 4096 for systems running average applica-
tions. If a system will be dealing with large databases or large spread sheets or text files,
increase the value to 6144 or larger. This will give you an earlier warning for a shortage of
DASD space for the SWAPPER.DAT file.
The initial swap file size is preallocated to a minimum size during system boot-up, depending on
the amount of physical memory installed in the system. This helps prevent the excessive over-
head of growing the swap file incrementally during paging operations. The user should change
the preallocated size of the swap file using the SWAPPATH directive in the CONFIG.SYS file.
While the system is running, more swap file space is needed than what has already been preallo-
cated, the kernel will to grow the swap file in 1 MB increments. The swap file will be grown only
during the processing of page faults, when it is determined that more swap space is needed.
When one or more pages need to be swapped out from memory, the kernel will determine if
these pages already have swap space allocated in the swap file. If so, the swap manager will
simply write them into the allocated swap space. Otherwise, new swap space will be allocated in
the swap file. If there is no space left, the swap file will be grown. The swap manager then
writes the pages to their new swap space. Swap space in the swap file is normally not freed up
until the corresponding memory is deallocated. When the swap file grows beyond the initial size,
then the system must manage the swap file to determine when compaction can take place. This
additional overhead will cause a performance penalty. To keep your system performance
optimal, make sure the initial swap file size is correct.
To determine the correct size for your swap file, use your system as you usually would, occa-
sionally checking the size of the SWAPPER.DAT file. The size specified in the CONFIG.SYS
should be at least this size, 1 or 2 MB larger, DASD permitting.
The swap file contents include both code and data. The information stored there is either
backing in overcommitted systems (you are running programs whose working set is larger than
real memory on your system) or 16-bit OS/2 application code and resources. It is probably a
combination of both. The reason the 16-bit OS/2 application code and resources are backed in
the swap file is to improve performance by reducing working set. Segmented 16-bit applications
require the entire segment to be brought into system memory, even if you only need a piece
(page) of that segment. This would mean that application code segments would be completely
loaded whenever references were made to discarded pages. (OS/2 will discard pages not refer-
enced by aging, least referenced page discarded first) When OS/2 initially loads a 16-bit OS/2
application, it packs the segments into pages and copies them to the swap file for faster recovery
when needed. This can be disabled by using the NOPACK option on the MEMMAN= line in
the CONFIG.SYS. However, the performance decrease and larger working set will rarely offset
the potential of a reduced swap file size.
The swap file shrinks when several conditions are met. When the amount of free swap space in
the swap file exceeds 1.5MB, swap file compaction will be performed at system idle time. During
compaction, free swap space will be moved to the end of the swap file. After compaction, when
the amount of free space at the end of the swap file is greater than 1 MB, the swap file will be
decreased, in 1MB increments. The swap file only compacts when it has grown larger than the
What Else Can be Changed to Improve Performance? 21
──── Page: 22 ────────────────────────────────
size initially set in the CONFIG.SYS. Growing and shrinking of the swap file is always managed
in 1MB increments.
File Systems
The file systems supported under OS/2 are FAT and HPFS. They are functionally equivalent to
the earlier releases. Both HPFS and the FAT file systems have disk caching, lazy writing and
read-ahead.
Disk caching is the placing of frequently accessed data in a special buffering storage. It reduces
access time and improves the performance of applications that rely heavily on hard disk data.
Lazy writing (or write behind) is the writing to disk file updates when the operating system is
idle, when the updated (dirty) cache block is aged, or when the cache is full of updated (dirty)
cache blocks. Cache blocks are aged by a set of parameters described in detail later in this
section.
Read-ahead is when the file system detects sequential read requests in a file and extends the read
(reads ahead), placing that data in the file system cache to improve performance. Read-ahead is
an internal function of the file system, and not settable by the end user.
To minimize the frequency with which the system ties up its resources writing cached data to the
disk, both file systems also can take advantage of the lazy-writing feature. Lazy writing provides
a significant performance improvement when writing to the disk.
To allow the operating system the greatest chance for finding data in the cache, both file systems
incorporate asynchronous read ahead for sequential I/O. This read-ahead capability is always
enabled in OS/2 2.0.
For applications that require absolute data integrity, files should be opened with WriteThru
enabled. WriteThru ensures that disk write operations are committed to disk before the applica-
tion continues. This is in direct contrast to lazy writing; lazy-written data can remain in the
file-system cache for several seconds after the application has completed writing. Disabling the
lazy-writing feature of either file system does not provide the same capability as enabling
WriteThru, and it decreases system performance When it is not possible to open a file with
WriteThru enabled, the shutdown procedure must be used to ensure that all data is written to
disk.
The lazy writing parameters for both file systems will cause updates in the cache to be written to
disk when the disk is idle or when the update is 5 seconds old. It takes the operating system
only a second or two to complete the updates to disk. The parameters cause writes to the disk
when the cache is approximately 30% full of dirty blocks (updates). This means that the actual
window of 'lost' data in the case of a power interruption is small -- at maximum, the last 7
seconds of updates, to around 50% of the total cache size.
Shutdown flushes all system buffers guaranteeing that file system updates in the cache are
written to disk before power off or reboot. CTRL-ALT-DEL flushes the buffers in the same
way, also providing for data updates to disk at reboot time. Using either of these functions will
ensure file updates are written to disk.
22 OS/2 Performance Tuning
──── Page: 23 ────────────────────────────────
Generally, if a partition is less than 100 MB, the file system selected should be FAT. FAT pro-
vides excellent performance and reserves less disk space for managing the partition than HPFS.
The High Performance File System, which was designed for the larger disk drives, generally per-
forms better than FAT in partitions greater than 100MB, especially where there are many small
files, a very large file (for example a database) or the access to the disk will generally be random.
FAT File System
The FAT file system contains no significant changes from OS/2 version 2.0.
The FAT file system contains the following enhancements in 2.0 that provide improved perform-
ance and enhanced support for disk hardware devices:
■ Command chaining by attempting to call the volume manager with a list of all contiguous
sector requests required to fill an I/O request, thereby enabling multiple I/O requests in a
single logical operation.
■ Scatter and gather by passing physical pointers to each page in the data buffer (physically
discontiguous) as part of the I/O request. This allows I/O controllers, such as the IBM SCSI
adapters, that support the scatter and gather capability to perform the I/O in a single opera-
tion.
■ Disk caching within the FAT file system, rather than in the device driver.
■ Recognition of devices that have onboard caches (nonsystem memory), incorporating them
into the total caching scheme.
■ Faster allocation of free space on the logical drive, using a bit map to track free clusters on
the disk.
FAT supports Extended Attributes to a maximum of 64KB per file or directory.
The FAT file system manages the partition using clusters. The cluster size varies with the parti-
tion size because only 64 KB is used to manage the entire partition. Larger partitions have
larger clusters than smaller partitions. Since a file or directory always takes n number of clusters,
this results in a less efficient use of DASD in large partitions (a 1 byte file will take a cluster,
even if the cluster is 8 KB). See Figure 4 on page 9 for cluster size information.
High Performance File System
The High Performance File System has made some internal changes to improve performance. In
version 2.1, when small files (1/8th the cache size; max file size 128 KB) are opened, they are
immediately read into the HPFS cache. This allows for increased performance when accessing
the data in that file.
The HPFS under OS/2 supports the following:
■ Command chaining by calling the volume manager with a list of all contiguous sector
requests required to fulfill an I/O request. This function is supported for all DASD types.
■ Scatter and gather by passing physical pointers to each page in the data buffer (physically
discontiguous) as part of the I/O request. This enables I/O controllers, such as the
busmastering IBM SCSI adapters, that support the scatter and gather capability to perform
the I/O in a single operation.
■ Disk caching in the IFS driver, rather than in the device driver.
What Else Can be Changed to Improve Performance? 23
──── Page: 24 ────────────────────────────────
■ Recognition of devices that have onboard caches (non-system memory), incorporating them
into the total caching scheme.
HPFS manages all partitions at a sector granular level, regardless of the size of the partition.
This allows for better use of DASD. (a 1 byte file will take a sector, generally 512 bytes).
HPFS supports Extended Attributes to a maximum of 64 KB per file or directory. HPFS will
perform best when the number of files in a directory are kept below 5,000.
Note: File system selection, cache sizes and options influence the performance of application
load times and run time within I/O intensive applications. File system performance will generally
not affect the performance of CPU bound programs or user interactive applications. Your appli-
cation is I/O intensive if there are many I/O requests (hard drive access light stays lit). File
system performance will also affect the load times of large applications and applications where
large files are loaded and saved (desktop publishing & applications using large files (spread
sheets) are examples).
Partition Size and File System Performance
The FAT file system is basically the traditional DOS file system with some enhancements in the
file system cache and lazy writing (write-behind) available. The High Performance File System,
first available in OS/2 1.2, was designed to handle large DASD and large files. HPFS uses
B-trees to locate the information on directories and files. Both file systems perform well on small
(<100 MB) partitions. The advantage goes to HPFS in large (>100 MB) partitions because of
the faster access through the B-tree. B-tree searching allows faster access to HPFS also manages
DASD space at a sector granular level rather than by clusters like FAT.
What this means is that if a system has a small hard file, or is partitioned into small (< 100
MB) partitions, the file systems perform generally the same. The FAT file system is preferable
because it uses less disk space to manage the files and directories. The FAT file system is always
active in OS/2 (HPFS does not handle diskettes). HPFS is started by the statement:
IFS=C:\OS2\SYSTEM\HPFS.IFS /c:64
in the CONFIG.SYS. If a system does not need HPFS, removing this line reduces memory
requirements by 100 KB when not accessed, and approximately 500 KB when accessed. If
memory is constrained, this will help improve overall system performance. If the system is not
overcommitted, removal of this option will not improve performance. If any partition size is
large ( >100 MB ), HPFS should be used for function as well as performance.
Special consideration should be given if you will be installing Windows applications. Many of
these applications place files in the WINDOWS\SYSTEM subdirectory. This forces you to plan
ahead for disk space requirements to install these applications. Additional consideration must
also be given if an you expect to boot and execute under native DOS. Native DOS (all versions)
does not provide access to HPFS formatted partitions.
File System Caches and Lazy Writing
Whether a system is using FAT, HPFS or both, tuning the file system cache has performance
advantages for heavy I/O applications. Both file systems allow various cache sizes as well as
threshold parameters. There are some functional differences in the file systems.
24 OS/2 Performance Tuning
──── Page: 25 ────────────────────────────────
Cache parameters determine when data will be lazy written to disk. Consult the OS/2 Command
Reference for more information. Changes in these values generally have no discernible impact on
system performance The read ahead value is not settable by the end user, and is provided here
for information only. The threshold value (CRECL) will affect the performance of I/O intensive
applications. This value determines the cut off point at which I/O requests are not cached by
the file system. If your application uses large I/O requests, performance will be improved when
this value is increased to include the larger I/O size. This would mean more data will be avail-
able in the file system cache. This is useful if the application accesses the same data repeatedly,
or if the application accesses the data sequentially. This value does have a dependency on the
file system cache. The file systems will not allow I/O requests greater than 1/4 of the total cache
into the file system cache. This is to prevent constant overwriting of data in the cache. If you
increase the threshold value, be certain that the file system cache can use that value with the
cache size set. OS/2 will ignore unacceptable threshold value, and use the default value.
The file system cache is used for I/O requests that are less than the threshold value set, or 1/4 of
the cache size maximum. Increasing the cache size will improve performance for I/O intensive
applications. Experiment with various values to determine the best setting for your application.
Each file system has its own cache. If both file systems are enabled, determine the file system
that will be used for the I/O intensive applications and increase the size of that file system's
cache. Decrease the size of the other file system cache. Decrease both file system caches if your
application is not I/O intensive, as this will free up memory for your application(s).
Figure 11. Cache and Lazy Writing Parameters
FAT
HPFS
Cache Size Minimum
Maximum
64 KB
14 MB
64 KB
2 MB
Threshold Default
Minimum
Maximum
2 KB
2 KB
64 KB
4 KB
2 KB
64 KB
Read Ahead Value
8 KB
8 KB
Cache Parameters
MaxAge
(range)
DiskIdle
(range)
BufferIdle
(range)
5000 ms
not settable
1000 ms
not settable
500 ms
not settable
5000 ms
1 - 99999
1000 ms
1 - 99999
500 ms
1 - 99999
All cache parameter values are milliseconds
What Else Can be Changed to Improve Performance? 25
──── Page: 26 ────────────────────────────────
EXAMPLES: These examples only suggest changes for systems, and assumes that memory is
NOT overcommitted.
■ CPU Application.
System Setup - C: is the system partition, 60MB, FAT
D: is the application partition, 100MB, HPFS
Application - Desktop Publisher & Graphical Application
Decrease the size of the file system caches. 64K for FAT and
128K for HPFS will probably be sufficient.
No changes in threshold.
■ DASD Application.
System Setup - C: is the system partition, 60MB, FAT
D: is the application partition, 100MB, HPFS
Application - Spread sheet and Database applications.
Increase the size of the HPFS cache, threshold to 64K.
Decrease the size of the FAT cache, no change to threshold
■ DASD Application
System Setup - C: is the system partition, 70MB, FAT
D: is the application partition, 210MB, HPFS
Application - Large Spread sheet and/or Database applications.
Increase the size of the HPFS cache, increase threshold to 64K.
Decrease the size of the FAT cache, no change to threshold
■ CPU Application.
System Setup - C: is the system partition, 60MB, FAT
D: is the application partition, 60MB, FAT
Application - Desktop Publisher & Graphical Application
REM out the IFS line for HPFS. Decrease the FAT cache.
No change in FAT threshold.
Default File System Cache Sizes
Although the installation defaults might not be specifically customized to a particular system, it
is beneficial to have access to larger cache sizes. Therefore, OS/2 2.x installs with larger cache
sizes when additional memory is available on the system. system.
The default values are shown in Figure 12 on page 27. If only the FAT file system is installed,
the default sizes are for the DISKCACHE= statement in the CONFIG.SYS file. If the system
has partitions that are all HPFS, the default size is for the IFS=HPFS statement in the
CONFIG.SYS file. If the system uses both file systems types, then OS/2 2.x installation changes
the cache size for both file systems. The file system with the largest total amount of DASD
(sum of the partitions) gets that larger value (listed under 2 file systems) and the other file system
gets the smaller value. See the section on File Systems for additional information.
26 OS/2 Performance Tuning
──── Page: 27 ────────────────────────────────
The CONFIG.SYS
OS/2 provides many options and tunable settings. The default settings are designed for the
'average' user. Certain assumptions were made that will not apply to all end users. While these
choices are excellent for general use, some changes can provide for increased performance in the
end user environment. The following is intended to provide information to allow you to change
the settings to tune the system for your specific requirements.
Customizing
There is a considerable amount of flexibility in the settings in the CONFIG.SYS. Generally end
users try to make changes and 'see what happens'. This can lead to the situation where the
system will not boot. Use the new ALT-F1 feature or boot from a diskette to recover. The
ALT-F1 feature takes the CONFIG.SYS, OS2SYS.INI and OS2.INI from the install directory
and replaces them over the existing files. To use this optimally, set up your system as you like it
(Workplace Shell included) and then copy those files over to the OS2\INSTALL subdirectory on
the boot partition. This allows experimentation without high risk -- recovery is to the last saved
setup. If you don't make any changes, the files saved are the CONFIG.SYS and INI files from
initial installation. Considerable time can be saved by copying these files after system changes
are made.
You might want to copy a CONFIG.SYS file from a network server or from a previously
installed system. However, using the statements from an existing system for another system
might not enable optimum performance of the second system, because many of the parameters
for the CONFIG.SYS statements are dynamically determined at install time based on the config-
uration of the system. See the section on Installation for more specific information. Custom-
izing the OS/2 2.1 CONFIG.SYS file improves performance and reduces memory requirements.
This section describes some OS/2 2.1 CONFIG.SYS statements.
PATH=
Specifies the directories and search sequence to find .EXE, .BAT, .CMD and .COM files.
The path statement should be tuned for your particular system. By placing the most com-
monly used directories in the beginning of the path, performance can be improved. This
reduces the number of directories that must be searched to locate a particular file.
Figure 12. Installed Cache Default Sizes
Memory Size in MB
One File System
Two File Systems
4
128
128 / 64
5
128
128 / 64
6
256
256 / 64
7
256
256 / 128
8
512
256 / 256
9
512
256 / 256
10 through 16
1024
512 / 512
17 through 32
2048
1024 / 1024
What Else Can be Changed to Improve Performance? 27
──── Page: 28 ────────────────────────────────
LIBPATH=
Specifies the directories and search sequence to find DLLs, resources and fonts. Specify the
most frequently accessed directories first so the operating system can find them faster. A
.; in the beginning of the LIBPATH tells OS/2 to search the current directory first.
DPATH=
Specifies the directories and search sequence to find data. Specify the most frequently
accessed directories first so that the operating system can find them faster.
SWAPPATH=
Specifies the location of the swap file, the minfree value, and the initial size. See the section
on the swap file for specific tuning information (page 20). The default location for the file
is \OS2\SYSTEM. Both values are given in KB. All changes take effect after the next
boot.
The following statement will create the SWAPPER.DAT file in the OS2\SYSTEM subdirec-
tory on the D: partition, with a minfree value of 2MB, and an initial size of 4MB.
SWAPPATH=D:\OS2\SYSTEM 2048 4096
The following statement will create a SWAPPER.DAT file in the root directory on the
E: partition, with a minfree value of 5MB, and an initial size of 12MB.
SWAPPATH=E:\ 5120 12288
DISKCACHE=
Specifies the size (in KB) of memory to allocate for use for the FAT file system's disk
cache, whether FAT lazy writing is enabled, and the threshold (in sectors) for caching disk
reads.
Caching speeds up applications that read hard disks by keeping frequently accessed hard
disk data in a cache. However, increasing the size of the disk cache decreases the size of
available memory. See Figure 12 on page 27 for the default disk cache sizes.
If the LW parameter is specified, FAT lazy writing is on. Lazy writing is a feature whereby
actual writing of data to the hard disk is deferred. This allows control to be returned to an
application without having to wait for the completion of I/O operations. Disabling lazy
writing severely degrades system performance.
The default enables lazy writing.
The following statement sets the FAT file system cache at 128 KB with lazy writing
enabled.
DISKCACHE=128,LW
The threshold parameter specifies the number of sectors that will be placed into cache for
read operations. If the threshold parameter is not specified (as in the previous example), it
defaults to a value of 4 (2KB). The threshold value may not exceed 1/4 the total cache size
or the specified value will be ignored and the default value will be used instead. Any read
operation that is less than the threshold is read into the disk cache first. Therefore, subse-
quent read operations will probably find the needed data in the cache, thus improving per-
formance.
The following statement sets the FAT file system cache at 512KB with lazy writing enabled
and a threshold value of 64 resulting in the caching of all reads < 32KB.
DISKCACHE=512,LW,64
28 OS/2 Performance Tuning
──── Page: 29 ────────────────────────────────
BUFFERS=
Provides memory that OS/2 2.x uses to cache FAT directory information, thereby
improving performance. This usage is different than in a DOS environment. A buffer is
the size of a FAT sector (512 bytes), so every 8 buffers take one page of memory. On
larger FAT partitions, performance will be improved by increasing the number of buffers.
The default value is 30.
IFS=
This statement causes the High Performance File System to be loaded. It is also used to
specify the size in KB of memory to allocate for the HPFS disk cache (via the /CACHE
parameter), and the threshold in KB for caching disk reads (via the /CRECL parameter).
Note: If your system has no HPFS partitions defined, you should disable the loading of
HPFS by adding a REM to the beginning of the IFS= line in your CONFIG.SYS.
Lazy writing for HPFS defaults to ON. A RUN=CACHE statement is required to change
the state of lazy writing. CACHE also can be executed from a command prompt. See
Figure 12 on page 27 for the default disk cache sizes and Figure 11 on page 25 for the
other cache and lazy write options that are available.
The example that follows shows the default statement on 8MB systems. This results in the
allocation of a 512KB HPFS disk cache and in the caching of I/O requests that are smaller
than 4KB. The /AUTOCHECK parameter designates which partitions should be
CHKDSK'd at boot time. The C: partition is designated for autocheck.
IFS=C:\OS2\HPFS.IFS /CACHE:512 /CRECL:4 /AUTOCHECK:C
The next example sets the HPFS cache at 2MB, and uses the default value of 4KB for the
cache record length threshold. No partitions are designated for autocheck.
IFS=C:\OS2\HPFS.IFS /CACHE:2048
The next example sets the HPFS cache at 256KB and sets the cache record length threshold
at 16KB. The D:, E:, and F: partitions are designated for autocheck.
IFS=C:\OS2\HPFS.IFS /CACHE:256 /CRECL:16 /AUTOCHECK:DEF
This last example attempts to set both the HPFS cache size and the cache record length
threshold to 64KB. However, the CRECL value is invalid because OS/2 2.1 disk cache
thresholds may not exceed 1/4 the total cache size. Therefore, the system overrides the
value and uses the HPFS default threshold of 4KB. The D:, E: and F: partitions are desig-
nated for autocheck.
IFS=C:\OS2\HPFS.IFS /CACHE:64 /CRECL:64 /AUTOCHECK:DEF
PRIORITY_DISK_IO=
Specifies disk input/output priority for applications running in the foreground. When
PRIORITY_DISK_IO=YES is specified in the CONFIG.SYS file, an application running
in the foreground receives disk I/O priority over applications running in the background.
Therefore, the application in the foreground has better response time than applications
running in the background.
An example of a time when this should be set to NO is if you are running an I/O intensive
application in the background (like a compile) and are working in the foreground on a task
that is less important to you than the compile. Setting this to NO would remove the pri-
ority boost from the foreground application and improve the performance of the back-
ground compile.
What Else Can be Changed to Improve Performance? 29
──── Page: 30 ────────────────────────────────
The default value is YES.
THREADS=
Specifies the maximum number of threads OS/2 will allow to exist at any one time.
Threads are dispatchable units of execution. OS/2 applications usually have several threads
to take advantage of multitasking. DOS and Windows applications usually have only 1
thread. Some threads are used by the system. The default is 128 or 256 threads,
(depending on system memory at installation time) which should be plenty for general use.
Changing this value to an unnecessarily large one in not advisable because it takes addi-
tional memory. Reducing it below 128 does not significantly free any memory. The default
value should be acceptable in most environments. One exception is a server environment,
where it is generally better to have 256 or 512 threads on the server.
The default value is 128 or 256 threads.
MAXWAIT=
Sets the amount of time a ready-to-run regular or server class thread can wait before the
system assigns it a temporary higher priority. The amount of time to set depends on the
number of concurrent applications and the activities the applications perform.
The default is 3 seconds.
This default value is optimal for most system setups.
TIMESLICE=
Sets the minimum and maximum amount of processor time allocated per timeslice. This
line does not appear in the default install of OS/2 2.x, since the system defaults to dynamic
time slicing based on system load and paging activity. While this entry is supported, it
should not be used.
The default is not in the CONFIG.SYS. DO NOT use this setting.
MEMMAN=
Specifies memory management control options. The SWAP option indicates that swapping
to the swap file is enabled and memory can be overcommitted. The NOSWAP option pre-
vents swapping. When NOSWAP is selected, the system must contain physical memory for
all memory allocations. SWAP should be selected.
The PROTECT option enables certain APIs to allocate and use protected memory.
The COMMIT option indicates that the memory manager should reserve storage in the
swap file at the time any memory is allocated. Specifying this option causes very large
swap files to be generated. It can be useful in unattended operating environments (if you
specify the COMMIT option, you should increase the initial swap file size parameter on the
SWAPPATH= statement).
The default value is SWAP,PROTECT.
PRINTMONBUFSIZE=
Sets parallel-port device driver character monitor buffer sizes for LPT1, LPT2 and LPT3.
You may increase performance of data transfers to devices connected to parallel ports by
increasing the associated device driver monitor buffers sizes. For example, to increase the
size of the device driver buffer for a device connected to parallel-port LPT1 to 2048 bytes,
specify: PRINTMONBUFSIZE=2048,134,134.
The default value is 134,134,134 bytes.
30 OS/2 Performance Tuning
──── Page: 31 ────────────────────────────────
PROTECTONLY=
Selects one or two operating environments. The OS/2 operating system requires this state-
ment in the CONFIG.SYS file.
The PROTECTONLY=NO statement allows a user to run both DOS (including
WIN-OS/2) and OS/2 applications.
The PROTECTONLY=YES statement allows a user to run only OS/2 applications.
The default value is NO.
RMSIZE=
Specifies the highest storage address allowed for the DOS operating environment. Leave
the default for optimal performance in your VDM sessions.
The default value is 640KB.
SET DELDIR=
Specifies the location to hold deleted files, and the total size of files to be retained. This
allows you to save files that have been deleted, for later retrieval if needed. By default, this
setting is commented out because backing up each deleted file slows system performance.
When enabled, the last value is the size in KB of files to be saved for restoring. The fol-
lowing statement enables restoring files to a total of 512KB, for the C: and D: parti-
tions.
SET DELDIR=C:\DELETE 512;D:\DELETE 512;
This means that OS/2 will 'save' files erased, deleted or shredded from the C: partition to
a total of 512KB in the C:\DELETE subdirectory (those from the D: partition would be
'saved' in the D:\DELETE subdirectory). FIFO management is used. If the last file
deleted is larger than 512KB, than that entire file is saved, regardless of size. The system
does not differentiate between files erased by the user and files erased by an application
(temp files).
Only use this function when you are cleaning your system, and ensure that you have a large
enough size specified to save all the files until you are finished. Then REM out this state-
ment in the CONFIG.SYS for the next boot. Performance when erasing or moving files is
slow with this feature enabled.
The default is disabled.
SET RESTARTOBJECTS=
Specifies the action to be taken by the Workplace Shell when the system is rebooted. This
line does not appear in the default install of OS/2 2.x, but the system defaults as if a
SET RESTARTOBJECTS=YES statement had been encountered. This causes all objects
in the Startup folder and any other objects that were active when the system was last
running to be started.
A SET RESTARTOBJECTS=NO statement indicates that nothing should be started. This
selection would provide the fastest boot time.
A SET RESTARTOBJECTS=STARTUPFOLDERSONLY statement indicates that only
the objects that are in the Startup folder should be started.
The default value is YES.
What Else Can be Changed to Improve Performance? 31
──── Page: 32 ────────────────────────────────
Changes for a DOS Session
Virtual device drivers used by DOS sessions take little or no memory below the 640KB limit. A
user can install device drivers that are required by, and are specific to, certain applications that
run in a DOS session. If the commands to load these device drivers or other memory resident
programs are added to the CONFIG.SYS file, these device drivers (or programs) are loaded into
any DOS session. This reduces the amount of conventional memory available to DOS applica-
tions.
DOS settings allow a user to customize a DOS session. To ensure that the maximum amount of
memory is available in each DOS session, load the necessary DOS device drivers for the DOS
application by using DOS settings. For example:
DEVICEHIGH=
Loads a specified DOS device driver into an available upper memory block (UMB) for a
DOS session.
Note: DOS device drivers normally are loaded into low memory (below 640KB) in DOS
sessions.
If a UMB is not available, the device driver is loaded into low memory (as a DEVICE=
statement). To enable UMBs, include the DOS=UMB statement in the CONFIG.SYS file.
DOS=
Specifies whether the DOS kernel will reside in the high memory area (HMA) and whether
the operating system or DOS applications will control upper memory blocks.
Note: Upper memory blocks are provided by the XMS device driver.
It also is necessary to include a VXMS.SYS statement in the CONFIG.SYS file to have
upper memory blocks available.
■ With a DOS=HIGH/LOW,UMB statement, the operating system controls the upper
memory blocks. This means that DOS applications can be loaded into upper memory
but cannot allocate UMBs.
■ With a DOS=HIGH/LOW,NOUMB statement, the operating system will not control
any UMBs. DOS applications can allocate UMBs but cannot be loaded there.
Eliminate DEVICE= statements for DOS device drivers from the CONFIG.SYS file unless the
device driver is required for any DOS session.
The AUTOEXEC.BAT
Customizing
The AUTOEXEC.BAT file is specific to the DOS session and has no effect on the OS/2 oper-
ating system. It can be customized for each session. This file contains DOS system commands
that run when a DOS session is started. The AUTOEXEC.BAT file starts memory resident pro-
grams, such as network programs, and sets up environment variables.
32 OS/2 Performance Tuning
──── Page: 33 ────────────────────────────────
To make as much base memory as possible available to applications, remove any unnecessary
commands from the AUTOEXEC.BAT file. Create several AUTOEXEC.BAT files. Include
only the commands needed in each AUTOEXEC.BAT file to customize a specific DOS session.
Note: Do not allow the installation of a DOS or Windows application to change the
AUTOEXEC.BAT file supplied with OS/2. If a DOS command is necessary for a specific
DOS application, customize the specific AUTOEXEC.BAT file for that DOS session.
How To Specify a Different AUTOEXEC.BAT File
You may start DOS or WIN-OS/2 sessions with the default AUTOEXEC.BAT file which is
located in the root directory of the boot drive. It is better to specify a customized
AUTOEXEC.BAT file to create the environment for running that specific DOS or Windows
application. The specification of the new AUTOEXEC.BAT can be done by selecting the setting
DOS_AUTOEXEC in the WIN-OS/2 Settings notebook for the application object (Dos Set-
tings). Also see Dos Settings, Page 40.
Tuning for OS/2 Applications
OS/2 applications are designed to run in the native OS/2 environment. Because of this, special
settings and configurations to support these applications are not required. Well written OS/2 appli-
cations take advantage of OS/2 at the API level. Users do not need to make explicit changes for
OS/2 applications.
Tuning for Windows Applications
Enhanced and Standard Modes
The Enhanced Mode Compatibility enables the user to run a number of Windows 3.1 enhanced
mode applications under OS/2 2.1. It is important to realize that this is not an implementation
of Windows 3.1 enhanced mode, but a mode specific to WIN-OS/2 3.1 that illustrates the flexi-
bility of OS/2 and its power in blending different application environments into an integrated
platform since the major benefit to Windows 3.1 users of enhanced mode was virtual memory -
something which OS/2 users already have.
Like the previous WIN-OS/2 3.0, a special VDM is provided to emulate a DPMI server and the
WIN-OS/2 3.1 kernel is loaded into the VDM to directly service the requests of Windows appli-
cations running in the VDM. To preserve the integrity of the system and avoid having duplicate
virtual device drivers (one running on top of the other), the WIN-OS/2 3.1 Enhanced Mode
Compatibility does not use the Windows enhanced mode virtual device drivers (VxDs). As a
result, Windows 3.1 applications which do not access the VxDs, such as Mathematica,
OmniPage Professional and Vellum, will run in the WIN-OS/2 3.1 Enhanced Compatibility
Mode.
An application can be set up to run in the Enhanced Compatibility Mode by setting the
WIN_RUNMODE to "3.1 ENHANCED". This setting can be found in the WIN-OS/2 Settings
notebook for the application object. You can also start an Enhanced Compatibility mode
session from an OS/2 or DOS command line by typing WINOS2 /E or WINOS2 /3.
What Else Can be Changed to Improve Performance? 33
──── Page: 34 ────────────────────────────────
To start an application to run in the Enhanced Compatibility mode, for example hello.exe, you
would type WINOS2 /3 hello.exe.
An application can be set up to run in Standard Mode by setting the WIN_RUNMODE to "3.1
STANDARD". This setting can be found in the WIN-OS/2 Settings notebook for the applica-
tion object.
You can determine which mode is enabled in a VDM by bringing up the Help pop-up menu
from the Program Manager and select About.... The selection would display the About Program
Manager Box which will inform you if the session is in Standard or Enhanced Compatibility
Mode.
How To Install a WIN-OS/2 Application.
You can select migration and the system will migrate your application, placing the icon in the
Windows Application folder. This is easiest as the system will provide paths and some settings.
You can install a Windows application on the workplace shell by creating a program object from
the Templates folder and use the Settings Notebook for the object to specify the settings for the
application accordingly. For a Single Application definition, enter the full path and file name of
the application in the Program Object definition. For a multiple application definition, enter the
name of the program manager, i.e., MYAPP.EXE, in the Program Object definition. Once the
program definition has been done, you can go to the Session Object to specify the session type:
WIN-OS/2 Full Screen or WIN-OS/2 Windowed. If you select the WIN-OS/2 Windowed option
then you can select the Separate option to run your application in a separate VDM. If the
option is not selected then it will be run by default in a Common seamless session.
Starting DOS and OS/2 Applications from WIN-OS/2
The ability to start non-Windows applications from a VDM running WIN-OS/2 does not exists
under OS/2 2.0. In the release 2.1, you can now start DOS and OS/2 applications from a VDM
running a WIN-OS/2 full screen or seamless session.
From a command prompt in a DOS VDM session, you can start an OS/2 application by typing
the name of the application as if the application was a DOS application,.
Full Screen vs. Seamless Mode.
By default, the WIN-OS/2 icon is set to full screen. Because it references * in the program set-
tings, you cannot easily change from full screen to seamless. Some performance gain can be
obtained by running your application under WIN-OS/2 in a full screen. However, you may
prefer to run in seamless mode. A quick way to change from full screen to seamless is to change
the WIN-OS/2 program settings path and file name to
C:\OS2\MDOS\WINOS2\PROGMAN.EXE (assuming C: is the partition where WIN-OS/2 is
installed). This allows you to choose either WIN-OS/2 Full Screen or WIN-OS/2 Windowed
(seamless). to launch your applications. (change the selection of full screen or seamless on the
session page of the icon settings) Change the icon title on the general settings page.
34 OS/2 Performance Tuning
──── Page: 35 ────────────────────────────────
How to Load Your Application Faster in the Seamless Environment
An application can run in a common or separate sessions. Common seamless sessions share one
WIN-OS/2 kernel regardless of the number of applications loaded. Separate sessions load a new
copy of the WIN-OS/2 kernel each time an application (or session) is started. As a result, if you
launch an application from a separate seamless session, the time taken to load the application
includes the time to load the WIN-OS/2 kernel as well. To eliminate the loading time of the
WIN-OS/2 kernel, you can either load a small Windows utility program at the system startup
time (e.g., loading clock.exe from the StartUp folder), or before the actual loading of your main
application.
How to Reduce Memory Management Overhead for WIN-OS/2 3.1
When a WIN-OS/2 session starts, the WIN-OS/2 kernel checks the settings of DOS_RMSIZE
and DPMI_MEMORY_LIMIT before committing the memory it would allocate to the session.
The new WIN-OS/2 3.1 kernel will allocate 1MB for the DOS virtual machine and partially
commit the DPMI memory that was asked for. By adjusting the settings for DPMI memory, you
can drastically reduce the overhead associated with the memory management
How to Reduce Memory Resource Usage
To reduce system memory resource usage, use a Common Seamless session whenever possible
since only one VDM will be started for all of the WIN-OS/2 Seamless sessions.
Also, reduce the amount of EMS and XMS memory allocated to your sessions if your applica-
tion do not require it. While the session only allocates linear address space, some applications
try to touch all memory just to see what is available. This will increase the memory required to
run the application and may increase the size of the swap file. If you are not sure if your
application(s) use EMS or XMS, then reduce the amounts from the default 2048 KB to 64KB.
This will provide enough memory for applications to run without causing application failure with
applications requiring EMS or XMS memory support.
How to Improve Cut and Paste Operations
New user interfaces are provided in WIN-OS/2 3.1 to enable specifying the Clipboard and DDE
as either "Public" or "Private". By default, both Clipboard and DDE for both OS/2 and
WIN-OS/2 are public, you can exchange data among programs running in DOS, OS/2, and
WIN-OS/2 sessions. If the WIN-OS/2 Clipboard and DDE are set to private then the data
exchange is only allowed among programs running in the same WIN-OS/2 session.
There are two ways you can set the operating mode for the Clipboard and DDE. You can select
the operating mode of Clipboard and DDE for all WIN-OS/2 sessions through a new global
WIN-OS/2 setup object in the Workplace Shell. For local settings, effective only to the single
VDM session, you can use the new settings provided in the WIN-OS/2 Settings notebook page
(WIN_CLIPBOARD & WIN_DDE). If your application does not exchange data with a DOS
or OS/2 application then you should set the Clipboard and DDE to private for better perform-
ance.
What Else Can be Changed to Improve Performance? 35
──── Page: 36 ────────────────────────────────
WIN-OS/2 Settings
Settings for WIN-OS/2 sessions can be changed globally, using the WIN-OS/2 Setup icon found
in the System Setup folder. Settings can also be changed for specific sessions, using the applica-
tion settings notebook. Changes to the WIN-OS/2 Setup icon will change all Windows applica-
tions that start after the change is made. The WIN-OS/2 Setup settings will not override any
custom values set for applications. This allows you to change settings easier when you have
multiple applications.
There are two new settings for WIN-OS/2 3.1.
WIN_RUNMODE
In WIN-OS/2 3.1, the WIN_RUNMODE Settings option has been changed to include two
radio buttons for selecting either one of the two modes-- 3.1 Standard or 3.1 Enhanced
Compatibility.
The default is Standard.
DOS_AUTOEXEC
The DOS_AUTOEXEC setting is new in WIN-OS/2 3.1. This setting allows the application
to run in different DOS environments. You can now specify the AUTOEXEC.BAT file to
be executed when the VDM session is started.
The default is blank, and the AUTOEXEC.BAT found in the root directory will be used.
There are several other settings that affect the performance of your WIN-OS/2 session that are
the same as in OS/2 2.0.
WIN_DDE
This setting allows WIN-OS/2 to share DDE information between WIN-OS/2 and OS/2
sessions. For better performance, this setting should be set OFF, but only if you are not
exchanging data via DDE between OS/2 and WIN-OS/2 applications.
This should be set to Off for private data exchange between DOS applications.
The default is ON.
WIN_CLIPBOARD
This setting allows WIN-OS/2 to share clipboard information between public WIN-OS/2
and OS/2 sessions.
For better performance this setting should be set to Off for private data exchange between
WIN-OS/2 applications. Only set this setting Off if you will not be exchanging clipboard
data between OS/2 applications and WIN-OS/2 applications.
The default is ON.
DOS_BACKGROUND_EXECUTION
Allows DOS applications to run in the background.
■ When the setting is set to On a Windows application runs when it is in the background.
■ When the setting is set to Off a Windows application is suspended when it is in the
background.
When the Windows application is suspended, it no longer receives interrupts. For example,
if users have a polling application running on the background, it may slow down the fore-
36 OS/2 Performance Tuning
──── Page: 37 ────────────────────────────────
ground application. Thus, the setting may be turned on to gain the foreground perform-
ance.
The default is On.
VIDEO_8514A_XGA_IOTRAP
This setting is used to directly access the Model 8514/A or XGA video.
Setting this to Off will make an application run faster. It releases the 1 MB of allocated
memory where video information is saved in a WIN-OS/2 session, specifically when exe-
cuting with the 8514/A display driver, certain operations such as painting a dithered back-
ground will run faster.
Set this to On for all WIN-OS/2 sessions that run in 8514 or XGA video modes.
The default is Off.
VIDEO_SWITCH_NOTIFICATION
This setting is used to notify the DOS program when the session switches to or from a full
screen VDM session. WIN-OS/2 understands this notification and will redraw the screen
when the screen is switched. For WIN-OS/2 sessions, set the to ON.
The default is On.
Note: This setting must be ON if the VIDEO_8514A_XGA_IOTRAP is set OFF.
INT_DURING_IO
Allows interrupts to be handled during file reads/writes. This setting is primarily designed
for DOS multimedia applications and should be turned on when the user runs such applica-
tions.
The default value is Off.
DOS_RMSIZE
Defines the amount of conventional memory available to WIN-OS/2. This setting is used
to decrease the amount of available memory to less than 640 KB. Do not decrease this
value for WIN-OS/2 sessions.
The default value is 640 KB.
DPMI_MEMORY_LIMIT
Defines the amount of DPMI memory available to the WIN-OS/2 session. This setting
enables you to specify the amount of DPMI memory for the Windows applications on a
per session basis. The field for this setting contains values expressed in megabytes.
The default value is 64 MB. The range is 1 to 512.
Tuning for DOS Applications
Full Screen vs. Windowed
DOS applications (non-graphical) perform well in a windowed session. For example, DOS file-
intensive applications such as FoxPro 1.0 perform well while running in a VDM windowed
session. DOS word processors such as WordPerfect 5.1 and Word 5.0 also perform well in a
windowed DOS session. DOS programs doing intensive text or graphical display will run slower
in a windowed session compared to a full screen session. The main reason is that the full screen
session allows data to be directly written to video memory while the windowed session does not.
What Else Can be Changed to Improve Performance? 37
──── Page: 38 ────────────────────────────────
Multitasking DOS sessions
OS/2 2.x allows users to run more than one VDM session. It provides the ability for all DOS
and OS/2 sessions to timeshare the CPU and other system resources. It is important to note
that DOS applications, unlike OS/2 applications, rarely block. They consume CPU timeslices
even if they are in the background or appear not to be doing anything useful (e.g., polling key-
boards or other devices.) This is controlled by the DOS setting Idle_Sensitivity.
Some applications recommend that the idle sensitivity be set to a high value. Those applications
may contain functions that appear to OS/2 to be polling, and the lower setting on idle sensitivity
may cause a functional problem. If your application has functions that appear to 'hang' when
the idle sensitivity is set low, increase idle sensitivity to a value where the function works cor-
rectly.
Another option is to set the DOS_BACKGROUND_EXECUTION to Off. This makes the fore-
ground job and other OS/2 jobs run faster as there will be no background DOS applications
competing for the CPU usage. This also allows idle sensitivity to be set higher than the default
value, which improves the foreground DOS application.
Running Interrupt-critical DOS sessions
Some DOS applications require fast and stable hardware interrupt support. For instance, DOS
communication programs need a steady data flow from COM ports. Since the VDM session are
virtualized, there are some inherent interrupt limitations. For a DOS communication applica-
tion, the data processing rate can reach 9600 bps for a single-character buffer com port. This
value is reduced when running multiple communication application applications concurrently, to
a total of 9600 bps.
Similarly, DOS multimedia applications require constant timer interrupts. By the nature of the
VDM interrupt mechanism, interrupts may get simulated into the application(s) not at constant
time intervals but in a clustered fashion. Therefore, if the DOS application depends on timer
interrupts, you may encounter some unpredictable behavior.
DOS Settings
Every object (including program objects) has settings. You can adjust DOS and WIN-OS/2 set-
tings to improve performance. Settings are properties or characteristics that tell the operating
system how one object is different from other objects. Each object has a notebook or pop-up
menu choice that allows you to customize settings.
For example, you can customize the settings for a program object to tell the operating system
how the application should start each time the program object is opened. You might open the
Mouse object to customize the mouse for left hand use.
38 OS/2 Performance Tuning
──── Page: 39 ────────────────────────────────
Performance Tuning
DOS settings provide the ability to selectively configure and customize a DOS session to meet
the requirements of a particular application. Some DOS applications require certain features;
others operate better without them. Thus, an individual DOS session can be set up to provide
the optimum environment for the application that will run within it. All settings can be changed
before the session is created. Some settings can also be set at any time, even while an applica-
tion is running in the session. The Master Help Index has detailed information about settings.
The following is a list of settings that affect the performance of your DOS applications.
IDLE_SENSITIVITY
Specifies a threshold for judging when an application is considered idle. The value is the
percentage of the maximum possible polling rate the application can perform. If an appli-
cation polls at a rate higher than this value, it is considered idle.
Idle detection is a "best guess" of what the program is doing. It could be that the program
is polling at a very high rate, but is still doing useful work in between checking. It may be
that the application checks at a fairly slow rate but is doing nothing but waiting. The idle
sensitivity threshold allows you to adjust the threshold for each application.
Increase the percentage if the application can receive input while running and seems to run
more slowly than expected. Selecting 100 in this field turns idle detection off, and the appli-
cation can poll as often as necessary without operating system intervention.
Be aware that polling applications are detected quicker on fast systems than on slower
systems. This means that the value on different speed systems must vary -- decrease the
value on faster systems. Example: If a polling DOS application with idle_sensitivity set to
50 on a 33 MHz CPU is detected as exceeding the threshold and forced to yield its timeslice
by OS/2, it may not be detected as exceeding the threshold on a 16 MHz system with the
same idle-sensitivity value. The 16 MHz system will need to set a lower value before OS/2
will consider the same application as exceeding the threshold and cause a yield.
Overall system performance can usually be improved when there are multiple DOS applica-
tions running if the value is set lower. For additional information on the setting see
╚Multitasking DOS sessions╝ on page 38.
The default value is 75. The range is 1 to 100.
IDLE_SECONDS
Specifies the length of time, in seconds, the operating system waits before applying idle
detection in a DOS session.
This setting works with the IDLE_SENSITIVITY setting to help control polling DOS
applications. You can increase this value if you have an application that waits for input or
at a prompt (like a game).
The default value is 0. The range is 1 to 60.
DOS_DEVICE
Adds or modifies information about DOS device drivers for the specified VDM, in addition
to the information specified in CONFIG.SYS.
This setting allows you to specify a specific device driver for a specific application. This
means that you do not have to load all DOS device drivers at boot time, but instead you
can have the device driver(s) loaded when the application that uses it is started. You may
What Else Can be Changed to Improve Performance? 39
──── Page: 40 ────────────────────────────────
add, change, or delete the device drivers using this setting via the list provided. Device
drivers should be loaded with the DOS_DEVICE setting instead of in the CONFIG.SYS,
unless you want the device driver loaded for all DOS sessions. For example, a program to
support hardware such as a scanner may include a device driver that is needed only for that
particular program. This device driver should be loaded using the DOS_DEVICE setting,
not globally in the CONFIG.SYS.
The default has no drivers.
DOS_BACKGROUND_EXECUTION
Allows DOS applications to run in the background.
When the setting is set to On, the DOS application runs when it is in the background. The
setting may be turned OFF to gain foreground performance.
When the setting is set to Off the DOS application is suspended when it is in the back-
ground.
The default is On.
INT_DURING_IO
Allows interrupts to be handled during file I/O.
This setting is primarily designed for DOS multimedia applications and should be turned
On when running a multimedia application. Other DOS applications that do not require
long file read/write should leave it Off as it will cost more memory and system overhead.
The default value is Off.
DOS_AUTOEXEC
Allows customizing the selection of an AUTOEXEC.BAT file. This allows setting a specific
AUTOEXEC.BAT file for each VDM session or each DOS application. This allows you to
customize the VDM autoexec, helping to reduce memory and optimize function. Also see
╚How To Specify a Different AUTOEXEC.BAT File╝ on page 33 for additional informa-
tion.
The default is the AUTOEXEC.BAT file in the root drive.
VIDEO_RETRACE_EMULATION
Controls the frequency of video retrace.
A few DOS applications run more slowly with this setting set to On.
Changing this setting to Off increases performance, but screen switching is not as reliable.
When set to off, retrace occurs only at the interval specific to the video mode of the
running DOS application.
The default is On.
VIDEO_8514A_XGA_IOTRAP
This setting is used to directly access the Model 8514/A or XGA video.
Setting this to Off will make an application run slightly faster. It releases the 1MB of allo-
cated memory where video information is saved in the DOS session.
The default is Off
40 OS/2 Performance Tuning
──── Page: 41 ────────────────────────────────
VIDEO_SWITCH_NOTIFICATION
Notifies a DOS graphics application about a switch between background and foreground.
When this setting is On, programs that monitor screen switching will save or redraw the
screen when the screen is switched.
The default is On.
DOS_FILES
Specifies the maximum number of file handles which may be opened in a VDM.
Setting this value higher than the default may improve performance for applications which
use a large number of files. For example, DBase IV requires a DOS_FILES setting of at
least 40. Setting it higher than necessary reduces the available memory. Refer to your
application documentation for the recommended value.
The default is 20. The range is 20 to 255.
VIDEO_FASTPASTE
The fast paste setting is used to increase the speed of input other than the keyboard (i.e.
character Cut and Paste transfers).
Set this to On to increase the character speed of Cut and Paste transfers. Pasting into a
DOS session or application will generally work. However, some applications can fail when
using fast pasting because they buffer key-strokes in an internal buffer, which can overflow.
The default is Off.
DOS_FCBS
Specifies the maximum number of file control blocks (FCBs) which may be opened by
applications running in the VDM.
Note that this setting affects only DOS applications which use file-sharing. Some applica-
tions use many FCBs, so this number should be set high. Refer to your application doc-
umentation for the recommended value.
The default is 16. The range is 0 to 255.
DOS_FCBS_KEEP
Specifies the number of FCBs that will be protected against automatic closure.
This setting specifies the number of FCBs that are protected against automatic closure.
This may improve application performance.
The default is 8. The range is 0 to 255.
DOS_BREAK
The break setting is used when you want OS/2 to check for the Ctrl+Break or Ctrl+C key
combinations while an application is running.
If you want to have the option to interrupt a DOS batch file running in a VDM in a faster
way, this setting should be turned on. However, DOS applications will run slower when
this setting is set to On.
The default is Off.
VIDEO_ROM_EMULATION
Controls the emulation of video functions like WriteChar, WriteTTY, and full-screen scroll
for BIOS Int10 processing.
What Else Can be Changed to Improve Performance? 41
──── Page: 42 ────────────────────────────────
Leave this setting ON because the emulated functions enhance performance over most
manufacturers' ROM versions of the same functions.
Select Off only if video read-only memory (ROM) provides enhancements to these video
functions, or if your application uses Int10 functions which are not emulated.
The default is On.
Memory Tuning
The OS/2 2.x CONFIG.SYS file specifies the operating system configuration and installs device
drivers and other memory resident applications. The OS/2 2.x AUTOEXEC.BAT file is specific
to the functioning of the DOS session. To allocate additional memory to applications running in
a DOS session, some commands can be moved from the AUTOEXEC.BAT to settings. The
following describes what settings can be changed to maximize memory in a DOS session. Also
see the sections on CONFIG.SYS and AUTOEXEC.BAT.
DOS_HIGH
Determines whether DOS is loaded outside the 640K low memory address space. Loading
DOS into high memory allows more available memory for application code and data within
the 640KB address space.
The default is Off (DOS is loaded into low memory).
MEM_EXCLUDE_REGIONS
This setting is used to specify address ranges which should be protected from use by
EMS/XMS and direct access by applications. This setting is intended for experienced users
who understand the hardware.
Note that if these ranges are defined excessively, they will adversely impact the function and
performance of EMS and XMS services.
The default is blank.
MEM_INCLUDE_REGIONS
Specifies regions which should be made available to EMS/XMS. This setting is used to
specify some address ranges between RMSIZE and 1MB for use by EMS and XMS.
If there is a hardware adapter in this range which you know is not going to be used by a
particular VDM session, then the address range used by the adapter should be made avail-
able to EMS and XMS. This will improve the performance of EMS and XMS services.
The default is blank.
HW_ROM_TO_RAM
Copies the Basic Input/Output System (BIOS) from ROM to RAM.
When this setting is set to On, applications might run faster due to the fact that BIOS
services run slightly faster in RAM than in ROM.
The default is Off.
VIDEO_ONDEMAND_MEMORY
Reduces swap space requirements for full screen VDMs.
Selecting On allows a full screen VDM to run without pre-allocating a virtual video buffer
for high-resolution graphics modes. Using this setting does not prevent execution of
graphics application. It means that allocation of the buffer is delayed until it is needed.
42 OS/2 Performance Tuning
──── Page: 43 ────────────────────────────────
This can save a substantial amount of memory/swap space, which might be important
under certain low-memory conditions. It also enables you to start a program quickly. If
the allocation of a virtual video buffer for a full screen VDM fails at the time the applica-
tion changes video modes, the sessions will be frozen and you must switch back to the shell
to free memory. Unless you are able to free memory from another session, you may be
unable to get the DOS application running again. This is a concern if the application con-
tains unsaved data.
The default is Off.
Performance considerations for DPMI: DPMI provides direct access by DOS applications to
> 1 MB of memory in protect mode. There is one setting that can affect system performance.
DPMI_MEMORY_LIMIT
Defines the amount of DPMI available to a DOS session. This setting enables you to
specify the amount of DPMI memory needed for DOS applications on a per session basis.
The field for this setting contains the value in MBs ranging from 0 to 512.
The value may be 0 if a DOS application does not need DPMI.
The default value is 4MB.
Performance considerations for XMS: XMS provides compatibility for DOS applications that
require XMS. There are three settings that can affect performance.
XMS_MEMORY_LIMIT
Specifies the amount of memory that a DOS session can allocate to XMS. This setting is
expressed in KB units, ranging from 0 to 16384.
Specifying a large number for the extended-memory limit can slow performance.
The default value is 2MB.
XMS_HANDLES
Specifies the number of XMS extended memory block (EMB) handles. A handle is used
with each XMS EMB. This number is required because XMS pre-allocates all the handle
spaces to be compatible with XMS specifications. This setting should be used only if an
application uses a large number of handles.
Reducing this number will reduce memory consumption. On the other hand, specifying a
large number of handles will increase memory consumption and adversely impact system
performance.
The default value is 32.
XMS_MINIMUM_HMA
Specifies the minimum High Memory Area (HMA) memory request allowed. This setting
allows fine tuning XMS. The High Memory Area is slightly less than 64KB in size. Only
one request can be handled in this area at a time. If a value is set, then only an application
that requests an equal or greater amount will be allowed access to this memory. Subse-
quent requests and requests smaller that the value set will not be satisfied.
The default value is zero, and is optimal in almost all conditions. The range is 0 to 63KB.
What Else Can be Changed to Improve Performance? 43
──── Page: 44 ────────────────────────────────
Performance considerations for EMS: OS/2 2.x provides full EMS support for DOS applica-
tions. As OS/2 2.x uses virtual memory to emulate the DOS EMS system, there is some degree
of performance degradation when running a DOS applications involving EMS, compared to
native DOS. Most of the overhead is due to the management of large data structures within the
virtual memory system. The advantage of using virtual memory to emulate DOS EMS is that it
allows large expanded memory to be supported with little limitation from physical memory. In
some cases, DOS applications may declare more expanded memory than the total size of the
physical memory.
The following settings affect EMS performance:
EMS_MEMORY_LIMIT
Defines the amount of EMS available to the DOS session. This setting is expressed in KB
units, ranging from 0 to 32768.
The value should be 0 if a DOS application does not need EMS. This might improve per-
formance. Programs generally state whether they use EMS on the box or in the manuals.
This setting enables you to limit the amount of EMS that an application reserves, which
prevents an application from allocating more memory than necessary. A limit that is too
high can slow performance.
The default value is 2MB. The range is 0 to 32768 in 16KB increments.
EMS_LOW_OS_MAP_REGION
Some programs can use remappable conventional memory. Others do not use this feature.
This setting allows advanced users to set the size of the remappable conventional memory
available in a VDM.
The default is 384KB. The range is 0 to 576 in 16KB increments.
EMS_HIGH_OS_MAP_REGION
In addition to the EMS page frame, some programs can use additional address ranges to
access expanded memory. This setting gives you the capability to adjust the size of the
additional EMS region.
The default is 32KB. The range is 0 to 96 in 16KB increments.
Improving Printing Performance
Printing performance can be tuned by changes to printer and job property settings, changes in
the CONFIG.SYS and by using the spooler settings. Some of these changes are generic and
affect all printing. Some of the changes affect only certain types of printing. Not all settings
listed in this section are available for all printers, but, if available, they do change the perform-
ance of printing on your system.
Printer Settings
Every object (including the print object) has settings. A user can adjust these print settings to
improve performance. In OS/2 there are Job Properties and Printer Properties. Job Properties
work in conjunction with the printer driver object's Printer Properties. These settings can be
found in the printer object notebook. Not all settings are supported by all printers. Printer
driver settings include job properties such as orientation, fonts and resolution. Queue options
44 OS/2 Performance Tuning
──── Page: 45 ────────────────────────────────
include printer specific format and print while spooling. Print options includes start and stop
times.
The choices you make for both printer properties and job properties will be overwritten by appli-
cations that permit the specification of job properties on a per-job basis. In this case you must
check that the options are chosen correctly within your application.
The following are properties that affect performance.
Memory (KB)
By specifying the amount of memory your printer has, the printer driver can determine if
compression is to be used. Compression reduces the amount of data that has to go to the
printer, improving performance.
Resolution
This option allows you to vary the resolution of your graphics printing. The selections are
usually presented in terms of "dpi" (dots per inch). The higher the number the better
quality your print will be. The drawback is that it will also take longer to print. However,
you can use a low number for draft output and select the highest number for printing the
finished version. A printer's memory size can limit the resolution you can choose.
Compression
This option compresses graphic print data which has the advantage of faster printing for
most jobs that contain graphics. Two common types of compression are G4 and TIFF
Packbit Byte.
■ G4
This improves the printing of graphic data that does not have large numbers of alter-
nating bits, for example, large areas that are filled with solid color. G4 is available on
all IBM 4029 printers and IBM 4019 models that support Form Feed Time Out. The
4019 models do not support G4 when printing in landscape mode.
■ TIFF
This improves the printing of graphic data that consists mostly of repeating bytes, for
example, large areas having one type of fill pattern.
Fast System Fonts
You can elect, via this option, to download (copy) OS/2 system bitmap fonts, to the
memory of your printer. They will be copied to the printer as a device bitmap font. The
advantage is that a device font uses a smaller spool file and prints quicker than a font
printed in raster (graphic font) form.
If overlaying system fonts with graphics, or if print output differs from that shown on the
screen, then disable this option.
Printer Patterns
Pattern filling commands will be directly sent to the printer instead of asking the operating
system to perform the pattern filling. This reduces the spool file size for pages that contain
dense graphics (shaded and patterned rectangular areas), and large scaled text. These
improve printing speed. This option should not be used if printer output patterns must
exactly match patterns displayed on your screen, nor if there are overlapping shaded or
patterned graphics in your document.
What Else Can be Changed to Improve Performance? 45
──── Page: 46 ────────────────────────────────
HP-GL/2
This option enables HP-GL/2 output. This allows the supporting of many more graphics
commands in the printer. This will allow faster printing of graphic objects such as lines and
circles. This also reduces the spool file size and helps to print more quickly. For faster
output, enable Page Protection (which may require additional printer memory) on both the
printer and Printer Properties dialog and use HP-GL/2.
Large Buffers
Large Buffers allow the printer drivers to use more of OS/2's memory in order to speed up
printing. Around 4 MB is used for printing so system memory should be at least 8 MB. If
this option is set to OFF, then smaller memory requests, around 1 MB will be used con-
serving memory. If you have less than 8MB of system memory, then it is better not to use
this option.
Print While Spooling
The Print while spooling option allows the printer to start processing the print job before
the application has finished sending the entire job to the spool queue. Print jobs formatted
in printer-specific format (PM_Q_RAW) can speed up printing by using Print While
Spooling.
This "threading" will increase throughput but could cause timeout problems while printing
large files with images. To solve this problem you can disable the Print While Spooling
option or you can increase the timeout value setting in the port object.
The default is On.
Start and Stop Time
Start Time and Stop Time can be entered for each print object. For example, time settings
for "lunch time", 12:00p - 12:50p, can be used which enables printing when you are not
there.
Fonts Impact Print Speed
Fonts can be stored in several places. They can be built into the printer, housed on a cartridge
that's plugged into the printer, or reside on your system and be downloaded to the printer as
needed. When you use printer-based fonts, whether built-in or on a cartridge, you can print
faster than if you first have to download them.
Fonts are either bitmapped or scalable. With a bitmapped font, each character is stored as a
collection of individual pixels, so you need a separate definition for each point size. Scalable
fonts, also called outline fonts, are stored as algorithms.This means that the system can generate
the font in any size using the algorithm. Generating scalable fonts takes time. If you're using
one font in just one size to format an entire document, the extra time may be hardly noticeable.
If you're using a lot of different fonts, the time may be considerable. You can use any combina-
tion of these font variations, bitmapped or scalable, stored in the printer or in the computer.
Clearly, you'll get the fastest printing with bitmapped fonts stored in the printer (see Fast System
Fonts), and the slowest with scalable fonts stored in your computer.
Despite the speed disadvantage, there are strong arguments for storing fonts on your computer
and for using scalable rather than bitmapped fonts. First, most printers have room for only one
or two font cartridges. So if you want to add new fonts to your library, you have to switch
cartridges when you want to use them. It's easier and much more efficient to store them on
your hard disk, where they're all available at the same time. An advantage to scalable fonts is
46 OS/2 Performance Tuning
──── Page: 47 ────────────────────────────────
that you're guaranteed to have the typeface available in any size you'll ever need. Scalable fonts
require far less storage space on-disk, or in your printer, than a set of equivalent bitmapped fonts
in a range of sizes.
OS/2 Spooled Printing
Printing through the spooler will provide the best performance on your system. Here are some
settings that can affect printing performance, with suggestions.
OS/2 Spooler
For optimal performance, it is recommended that the OS/2 spooler always be enabled. The
spooler provides flexibility while optimizing the use of the system's print resources. The
OS/2 spooler can print a job in the background while you continue using the application.
You can now set the spooler's print priority via the spooler object setting.
The OS/2 spooler can support a number of printers simultaneously and can be configured
so that jobs on a single queue can be shared among all the printers. This load balancing,
called pooling, is particularly important in server environments and can be achieved without
the knowledge of your applications.
Jobs can also be reprioritized while they are waiting in the queue. For example, an urgent
job can be given a higher priority than other queued jobs or can be selected to print next,
see Changing a Print Job's Priority.
Spool Path
If print jobs are very large, you may assign a different spooler path (drive or path) that has
more space than your install drive. If your print usage is heavy, you want to place the
spool file on your fastest hard disk. The spool path is a setting of the spooler object.
Print Priority
The OS/2 spooler now has a setting called Print Priority. This allows you to vary the
spooler's priority from low to high. The default setting allows printing to be balanced with
your use of the desktop and your applications. If your application appears to be printing
slowly, you may want to choose a slightly higher value so that printing will complete faster.
If you choose a higher value, OS/2 will let print jobs print faster, but this may cause your
desktop or applications to respond slower. In a print environment where very little on
screen work is performed or where print performance is of utmost concern, you should
increase the value. Priority changes become effective when you close the spooler object
folder.
The default is 95.
Spool File Formats
There are two formats of spool file data. They are the standard (PM_Q_STD) or the raw
(PM_Q_RAW) spool file data formats. The standard format is much preferred as it con-
sumes much less disk space than the raw format file. Having less data to send across the
parallel port saves time in getting the data into the printer's buffer. Network traffic is
reduced if printing across a LAN.
Changing a Print Job's Priority
Changing a print job's priority will cause that particular print job to print before any other
queued job. To do this, click on the print job you wish to change. Use mouse button 2 to
display its context menu, and then select print next.
What Else Can be Changed to Improve Performance? 47
──── Page: 48 ────────────────────────────────
You can change the priority of a print job so that it can print before or after other jobs
queued. To do this, click on the print job you wish to re-prioritize. Use mouse button 2 to
display its context menu. Open Settings and change the value in the Priority field.
Note: Once a job has started printing, it is no longer possible to change its priority, the
Settings option is not available.
Printing from DOS
While there are no performance specific tuning options, there are two things to check.
Do not use the LPTDD.SYS device driver unless necessary. (The DOS application is using
INT 21h and is not closing the LPT1 handle). This will slow down your DOS printing per-
formance.
The other is the DOS setting called PRINT_TIMEOUT. This is useful for DOS applications
which do not explicitly close their print jobs. This is the time that OS/2 waits before forcing
a print job to the printer. A timeout of 1 or 2 seconds is sufficient for small print jobs, such
as copying the contents of the screen. However, when printing large files, formatting docu-
ments, or running calculations, the value must be set high enough to allow all print results to
reach the spooler before the time limit expires. If not, results go in two or more spool files
instead of one, and the resulting output may be unsatisfactory. The default time is 15
seconds.
Printing from WIN-OS/2
You should always keep the OS/2 Spooler enabled to get the most benefit out of the OS/2 print
subsystem. This will assure that even from the WIN-OS/2 environment, printing is done in a
separate thread. You should also keep the WIN-OS/2 Print Manager disabled unless you are
using a COM attached printer. That is, always keep the WIN-OS/2 Print Manager icon closed.
The OS/2 Spooler allows multithreading and can deal with huge print files, even while you work
in WIN-OS/2. Print jobs sent from any WIN-OS/2 application to a parallel attached printer
won't show up in the WIN-OS/2 Print Manager. In this case if you need to view or manipulate
these print jobs, use the correct OS/2 printer object on the Workplace Desktop.
■ WIN-OS/2 Ports and Drivers
You should direct application output to LPTn.OS2 (where n is 1,2,3) wher possible. LPTn
refers to the physical printer port. LPTn.OS2 is a file which is intercepted by WIN-OS/2 and
routed directly to the spooler. This will provide improved performance over the standard
LPT port assignments.
You should always install equivalent printer queues in the OS/2 Desktop for your WIN-OS/2
printers even if you are only going to print to them from WIN-OS/2. If there is no equiv-
alent OS/2 printer driver available then use the IBMNULL.DRV printer driver found in the
OS/2 printer object.
■ WIN-OS/2 COM Attached Printer
If you have a COM attached printer and you would like to have your print jobs spooled,
then enable the WIN-OS/2 Print Manager. This should be the only reason for you to use
the WIN-OS/2 Print Manager. Remember that print jobs directed to LPTn.OS2 and LPTn
will still go through the OS/2 Spooler.
48 OS/2 Performance Tuning
──── Page: 49 ────────────────────────────────
Improving COM Performance
Changes can be made in both CONFIG.SYS and DOS_SETTINGS that can affect the perform-
ance of communications applications. You must check the settings as they may affect other
applications running concurrently. In general, the speed of your system will also affect the
ability of your communications program to achieve high baud rates and to multitask. CPU
intensive and disk intensive foreground applications/operations will affect the performance of
your communications application when it is in the background.
The following settings will affect the performance of communications applications.
PRIORITY_DISK_IO
Changing PRIORITY_DISK_IO to NO in CONFIG.SYS will improve the performance of
communications applications running in the background that are doing disk I/O, if there is
foreground work being performed that is also doing disk I/O. See the CONFIG.SYS, page
29 for additional information.
INT_DURING_IO
This DOS setting set to ON allows interrupts to be handled during file reads and writes.
This setting turned ON may help the performance of your communications program that
performs disk I/O that requires long read and write operations.
See DOS Settings, page 39 for additional information.
IDLE_SENSITIVITY
This DOS setting, set to 100, turns idle detection off, and the application can now poll
without operating system intervention.
See DOS Settings, page 39 for additional information.
HW_ROM_TO_RAM
This DOS setting set to ON may speed up your DOS communication program because it
allows the operating system to copy BIOS from ROM to faster RAM which might run the
application faster because BIOS services will run faster in fast RAM than slow ROM.
See DOS settings, page 42 for additional information.
What Else Can be Changed to Improve Performance? 49
──── Page: 50 ────────────────────────────────
Does the Hardware Impact Performance on OS/2 ?
Performance of any system can only be as good as the hardware and software work together.
Some hardware advantages must be exploited by the software to provide the added function or
improved performance. OS/2 attempts to exploit these advantages. Other hardware advantages
provide additional function or improved performance without requiring specific software. To
fully cover improving performance of OS/2, some general hardware information is included here.
The three main areas where performance for any system can be bottlenecked are memory, disk
and CPU.
Memory bottlenecks occur when attempting to run more programs in memory than there is
actual system memory. The hardware allows operating systems to execute beyond the real
system memory by allowing paging or swapping Both paging and swapping allow code and data
to be moved from memory to disk. Paging is the term used in virtual memory systems, and
swapping is the term used in segmented systems. As paging or swapping continue, system per-
formance degrades as access time to code or data written to disk now includes the disk access
time required to read back into memory information that was moved out. It probably also
required moving off to disk some information to make room for the returning information. This
activity can cause extremely poor performance.
Disk bottlenecks occur when the operating system or application(s) require large numbers of disk
accesses quickly. Since the hard disk must complete one I/O request before starting the next
request, multiple requests can start to queue, causing poor performance. Between I/O requests
the hard disk must move the head from one location to the next. Hard drives use average seek
time to show overall performance for I/O operations. Smaller seek times provide faster system
response times for I/O requests.
CPU bottlenecks occur when multiple concurrent tasks require processor time. Since operating
systems like OS/2 allow concurrent processing among multiple tasks, the likelihood of becoming
CPU constrained is increased. Additional processor speed (described in megahertz) will allow
faster completion of CPU requests.
As with any operating system, hardware limitations or advantages affect the overall system per-
formance. Processor speed, memory speed, hard drive access time, instruction caches and data
caches all influence performance. More specific information on the impacts follow. Generally
speaking, just adding more memory may not be the answer to improving performance on a
system. Specifically on OS/2 2.1, the following generalities are true. On an 80386SX system,
greater performance overall will be realized by upgrading to an SLC, an 80386DX or an 80486
(or higher) processor. For disk I/O bound applications, especially where the I/O requests are
large (data bases, word processors) or small but sequential (spread sheets, compilers), upgrading
to a hard disk that has on-board caching will improve performance. If a system is memory
overcommitted (swap file is > 4 times system memory), performance will improve by adding
more memory.
50 OS/2 Performance Tuning
──── Page: 51 ────────────────────────────────
CPU
Upgrading the CPU will improve performance in instruction intensive applications (graphical
intensive applications like CAD, computational programs like a spread sheet recalculation). Per-
formance improvements vary based on the upgrade. Upgrading a PS/2 Model 56 SX or 57 SX
to a 386SLC can double the performance, and moving to a 486SLC can improve performance by
4 times for compute bound tasks. The 80386SX has an internal data bus of 16-bits, therefore
32-bit instructions will become two instructions internally. Without any instruction caching to
buffer this, 32-bit instructions will perform slower than 16-bit. This is the basic reason that OS/2
2.1 on an 80386SX system does not show the same performance improvements that other
processors show.
If you have a system where your performance is not acceptable, and the system is an 80386SX,
upgrading the CPU will provide performance improvements. Adding memory on 80386SX
systems does not appreciably improve the overall system performance. If the additional memory
is not on the system board, then performance may be slowed even further.
Memory
Memory is generally available on the system board, in SIMMs and/or on adapter cards. The
speed of the memory is expressed in nanoseconds, and the lower the value the better.
While memory speed itself is important (faster memory provides faster access to information
stored there), installation is also. Memory on the system board (or planar) can be accessed by
the processor faster than memory located on an adapter card. The adapter card memory
requires access through the system bus, slowing down the time from processor to memory.
Having adequate memory in a system will also reduce the disk access because paging or swap-
ping is decreased. If OS/2 does not have to handle paging I/O requests along with application
I/O requests, system performance will improve. If the swap file is large, and changing from one
application to another results in I/O requests, the system would benefit from additional memory.
Displays
OS/2 2.1 supports the displays of VGA, XGA, SVGA, 8514, CGA, and EGA. Video Graphics
Array (VGA) was introduced by IBM in 1987 as the base video for all IBM PS/2 systems. At
the same time, the IBM 8514 Display Adapter/A was introduced to meet customer requirement
for high-resolution graphics. Extended Graphics Array (XGA) is the latest IBM solution to high-
resolution graphics. It has employed many new technology advances and is a good choice for
high performance display. To compete with IBM's VGA standard, many manufacturers of video
adapter cards formed the Video Electronics Standards Association (VESA) to promote higher-
resolution, more-color displays. Video modes supported by VESA are often called Super VGA
(SVGA). Though CGA and EGA are supported by OS/2 2.1, due to the limited display capabili-
ties, they are not recommended.
Does the Hardware Impact Performance on OS/2 ? 51
──── Page: 52 ────────────────────────────────
VGA
VGA has existed long enough that almost every video adapter card and monitor is highly com-
patible with the VGA specifications. The resolutions available in OS/2 2.1 are 640 x 480 x 16
colors, and 320 x 200 x 256 colors. VGA mode is also supported on XGA and SVGA display
adapters.
SVGA
OS/2 2.1 supports several SVGA chip sets. See ╚Display Selection╝ on page 13
ET4000 is widely used in display adapters, e.g., ProDesigner IIs by Orchid Technology Inc.,
PowerGraph VGA by STB Systems, Inc., and some IBM PS/1 and ValuePoint systems. Com-
pared with XGA subsystems, these SVGA display adapters provide an inexpensive alternative to
high-resolution graphics, but the performance is not as good as XGA. The SVGA drivers
shipped with OS/2 2.1 are 256 color drivers with three different resolutions. With 0.5 MB
VRAM, you can only run in 640 x 480 x 256 color mode. 1.0 MB VRAM is required to run in
800 x 600 x 256 and 1024 x 768 x 256 color modes. As you might expect, higher resolutions lead
to slower performances.
Additionally, the OS/2 SVGA display drivers are generic device drivers, and are not optimized for
any particular video adapter. The supplied drivers may be used with adapters that have the
supported chip sets. The manufacturer's driver may be optimized to provide better video per-
formance on their specific hardware. However, the vendor drivers may not support all the
functionality of the OS/2 drivers, such as seamless, OS/2 Palette Management, Multimedia
support, etc.
XGA & XGA-2
XGA is IBM's current standard for high-resolution graphics. Instead of the Dynamic RAM
(DRAM) used in most VGA subsystems, XGA has employed the Video RAM (VRAM) tech-
nology, which allows the XGA display controller update the video data in the VRAM simultane-
ously while the VRAM is busily refreshing the display. With the new Hardware Drawing Assist
functions, the XGA display controller can directly draw the data stored in video display buffer.
These functions allow lines to be drawn, blocks of data to be moved (Bit-Blt), and areas of color
to be filled in on the display. With 0.5 MB VRAM, XGA can run in 640 x 400 x 256, 640 x 480
x 256, and 1024 x 768 x 16 color modes. It requires 1.0 MB VRAM to run in 1024 x 768 x 256
color mode.
The new XGA-2 subsystem offers more resolutions and faster performance than the original
XGA. The major hardware improvements include external polling, non-interlace support, and
faster VRAM. With external polling, graphics coprocessor status can be retrieved without inter-
rupting the current processing.
The new XGA driver in OS/2 2.1 has made use of this new technology and performance is
greatly enhanced. The ability of XGA-2 to display high resolution screens at non-interlaced
refresh rates of up to 75Hz reduces flicker while enhancing usability and providing potential pro-
ductivity gains. With the XGA-2 subsystem, OS/2 2.1 can display up to 65,536 colors in low
resolution modes (640 x 480 and 640 x 400) as well as all the resolutions supported in XGA.
52 OS/2 Performance Tuning
──── Page: 53 ────────────────────────────────
8514
8514 is IBM's old standard for high-resolution graphics. Several non-IBM display adapters, e.g.,
8514 Ultra by ATI, also provide 8514 support. The driver shipped with OS/2 2.1 is the 16-bit
driver shipped with OS/2 2.0. You can only run in 1024 x 768 x 256 color mode. With the 16-bit
driver and the new 32-bit graphics engine, conversion overhead between these two components is
inevitable. The performance is slightly slower when compared with OS/2 2.0.
Hard Drives
Hard drives, or fixed disks, affect the performance of boot time and application load time, as well
as the performance of I/O intensive applications. Hard disk speed is expressed in average seek
time, and the lower number the better. Faster seek times reduces the amount of time an oper-
ating system or application must wait until the requested data is returned. The following
example shows information on 3 SCSI hard disks. Notice the increased transfer rate on the disk
with only 1 ms faster average seek time.
Formatted Capacity(MB) 40 80 160
Average Seek Time(ms) 17 17 16
Data Transfer rate(MB/sec 1.35 1.35 1.50
Average Latency(ms) 8.3 8.3 8.3
Sector interleave 1:1 1:1 1:1
Interface SCSI SCSI SCSI
When upgrading your system, check the average seek time of the hard disk. Be certain to weigh
larger disk space and average seek time against cost to determine the best hard disk for your
system.
Hard Disk Caches
Hard disks or disk adapters can provide caching for I/O requests. Generally, an entire track is
read into the cache memory and the data requested is transferred from that memory into system
memory. Because an entire track has been read, there is less loss in head movement and rota-
tional delay. Additionally, the next I/O request may be satisfied from the hard disk cache and the
disk access time is removed. The greatest performance for cached DASD is seen in sequential
I/O requests. Random, small size requests also see an advantage if more than 1/3 of the requests
can be satisfied from the cache rather than reading from the disk. This is determined by the way
the application accesses the data, and is generally not controlled by you.
When upgrading your system, cached hard disks will generally provide petter performance
overall.
Multiple Hard Disks
Some hard drive types cannot support multiple hard disks. Of the ones that do, only SCSI
drives can handle concurrent I/O requests in multiple drives. This means that on a system with
3 SCSI drives, OS/2 can potentially overlap 3 I/O requests (one per drive). This improves per-
formance in I/O intensive scenarios when disk requests are correctly balanced.
Does the Hardware Impact Performance on OS/2 ? 53
──── Page: 54 ────────────────────────────────
Parallel Printing
OS/2 provides support for advanced parallel port hardware. If the machine supports Micro
Channel and uses Direct Memory Access (DMA) for its parallel port, then OS/2's Print Device
Driver (PRINT02.SYS) significantly improves the speed in which data is sent to the printer, in
excess of 100 KB per second. This allows OS/2 to improve print performance as well as
spending more time running applications because of the DMA's quickness.
Communications
Machines with a buffered UART (for example NS16550A) will have better performance than
machines without buffering (for example NS16450).
54 OS/2 Performance Tuning
──── Page: 55 ────────────────────────────────
Appendix A. Top Tips to Improve Performance
This is a list of the top 13 performance tips for OS/2 2.1 MEMORY CONSTRAINED (4 meg)
and/or 80386SX systems.
1. Disable Animation (page 18)
2. Eliminate all extraneous processes (clock, CPU meters) (page 19)
3. Only use FAT file system (page 24)
4. Remove IFS= line for HPFS (if not used) (page 29)
5. Upgrade processor and/or memory as needed (page 50)
6. Minimize apps & folders between uses (rather than close and reopen) (page 19)
7. Remove unused device drivers from CONFIG.SYS (page 39)
8. Leave diskcache at 128 KB (page 28)
9. Limit the number of concurrent applications (page 19)
10. Limit background processing when working in the foreground (page 19)
11. Limit communication BAUD rate (page 38)
12. Limit concurrent spooling (page 47)
13. Optimize all paths in CONFIG.SYS (page 27)
This is a list of the top 7 performance tips for OS/2 2.1 SMALL DASD systems.
1. Increase Available Memory (page 19)
2. Only use FAT file system (page 24)
3. Remove IFS= line for HPFS (if not used) (page 29)
4. Add memory (page 50)
5. Leave diskcache at 128 KB (page 28)
6. Spool from 1 Application at a time (page 47)
7. Use List of Tips for Memory Constrained
This is a list of the top 7 performance tips for Windows applications
1. Tune WIN-OS/2 settings (page 33)
2. Tune DOS session settings (page 37)
3. Run multiple applications in one session (common) (page 35)
4. Leave the Windows Spooler Disabled (page 48)
5. Verify Adequate Amount of DPMI Memory (page 37)
6. Reduce EMS & XMS memory allocations to 64K (page 35)
7. Start Applications from the Icons (page 19)
This is a list of the top 8 tips for large, multitasking systems
1. Verify the swap file is the correct size at boot time. (page 20)
2. Use HPFS on large, busy disks. (page 8)
3. Tune the file system caches(use SPM/2) (page 24 & page 28)
4. Tune DOS and Windows session settings (page 33 & page 37)
5. Use 32-bit applications (page 4)
6. Startup LAN and Comm from their Directory (page 19)
7. Replace Startup.cmd with the Startup Folder (page 19)
8. Optimize the Desktop
Appendix A. Top Tips to Improve Performance 55
──── Page: 56 ────────────────────────────────
Appendix B. Application Performance Measurements
The charts for this appendix will not be available until after OS/2 2.1 ships and the results are
collected and charted. Look to IBM market tools and on CompuServe for these files.
56 OS/2 Performance Tuning
──── Page: 57 ────────────────────────────────
Appendix C. Display Driver Performance
The charts for this appendix will not be available until after OS/2 2.1 ships and the results are
collected and charted. Look to IBM market tools and on CompuServe for these files.
Appendix C. Display Driver Performance 57
──── Page: 58 ────────────────────────────────
Appendix D. Removing Features
Sometimes, features are installed and later you would like to move them off to a server to reduce
disk requirements, or you may wish to remove them. Here is a list of the files associated with
some of the features and applets that can be deleted from your hard drive.
■ Advanced Power Management (APM)
Used on on those systems that contain the required hardware, usually notebook type
systems.
\OS2\APM.SYS
■ Bitmaps
These are extra bitmaps provided for background display.
\OS2\BITMAP\SWAN.BGA
\OS2\BITMAP\LIGHTHOU.VGA
■ CID
These files are used for LAN installation of OS/2.
\OS2\INSTALL\SEDISK.EXE \OS2\INSTALL\SEINST.EXE
\OS2\INSTALL\SEIMAGE.EXE \OS2\INSTALL\SEMAINT.EXE
■ Command Reference
This file is the system command reference (on-line help).
\OS2\BOOK\CMDREF.INF
■ High Performance File System
These are the files associated with HPFS.
\OS2\CACHE.EXE \OS2\DLL\STARTLW.DLL
\OS2\HPFS.IFS \OS2\DLL\UHPFS.DLL
■ Linker
The linker files are used by application developers to link compiled/assembled files into pro-
grams. End users not developing applications might wish to delete these files.
\OS2\RCPP.ERR \OS2\RC.EXE
\OS2\LINK.EXE \OS2\RCPP.EXE
\OS2\LINK386.EXE
■ PCMCIA Support
PCMCIA support may not be needed on your system. You can remove this file.
58 OS/2 Performance Tuning
──── Page: 59 ────────────────────────────────
\OS2\PCMCIA.SYS
■ REXX
End users that do not need REXX support can delete these files.
Note: REXX support is required for IBM Communication Manager Support.
\OS2\REXXTRY.CMD \OS2\DLL\PMREXX.DLL
\OS2\PMREXX.EXE \OS2\DLL\REXX.DLL
\OS2\RXQUEUE.EXE \OS2\DLL\REXXAPI.DLL
\OS2\RXSUBCOM.EXE \OS2\DLL\REXXINIT.DLL
\OS2\REX.MSG \OS2\DLL\REXXUTIL.DLL
\OS2\REXH.MSG \OS2\HELP\PMREXX.HLP
\OS2\BOOK\REXX.INF
■ RIPL
These files are used for remote IPL.
\OS2\HELP\RIPLINST.HLP
\OS2\INSTALL\RIPLINST.EXE
■ Tutorial
These file are used by the tutorial. If you have completed the tutorial and would like to
delete it, you can remove these files.
\OS2\TUTORIAL.EXE \OS2\HELP\TUTORIAL.HLP
\OS2\DLL\TUTDLL.DLL
■ Chess
These are the files for the chess applet.
\OS2\APPS\OS2CHESS.BIN \OS2\APPS\DLL\CHESSAI.DLL
\OS2\APPS\OS2CHESS.EXE \OS2\HELP\OS2CHESS.HLP
■ EPM
These are the files for the enhanced editor applet.
\OS2\APPS\BOX.EX \OS2\APPS\MATHLIB.EX
\OS2\APPS\DRAW.EX \OS2\APPS\PUT.EX
\OS2\APPS\E3EMUL.EX \OS2\APPS\EPM.EXE
\OS2\APPS\EPM.EX \OS2\APPS\DLL\ETKE551.DLL
\OS2\APPS\EPMLEX.EX \OS2\APPS\DLL\ETKR551.DLL
\OS2\APPS\EXTRA.EX \OS2\APPS\DLL\ETKTHNK.DLL
\OS2\APPS\GET.EX \OS2\HELP\EPM.HLP
\OS2\APPS\HELP.EX \OS2\HELP\EPMHELP.QHL
■ Jigsaw
These are the files for the jigsaw applet.
Appendix D. Removing Features 59
──── Page: 60 ────────────────────────────────
\OS2\APPS\JIGSAW.EXE
\OS2\HELP\JIGSAW.HLP
■ Klondike
These are the files for klondike (solitaire).
\OS2\APPS\CARDSYM.FON \OS2\DLL\KLONBGA.DLL
\OS2\APPS\KLONDIKE.EXE \OS2\HELP\KLONDIKE.HLP
■ NEKO
These are the files for neko (the cat).
\OS2\APPS\NEKO.EXE \OS2\HELP\NEKO.HLP
\OS2\DLL\NEKO.DLL
■ PICVIEW
These are the files for picview.
\OS2\APPS\PICVIEW.EXE \OS2\HELP\PICVIEW.HLP
\OS2\APPS\DLL\PICVIEW.DLL
■ PMChart
These are the files for the PM Chart productivity aid.
\OS2\APPS\FASHION.DAT \OS2\APPS\INVEST.GRF
\OS2\APPS\GREEN.DAT \OS2\APPS\DLL\MGXLIB.DLL
\OS2\APPS\INVEST.DAT \OS2\APPS\DLL\MGXVBM.DLL
\OS2\APPS\PMCHART.EXE \OS2\APPS\DLL\PMFID.DLL
\OS2\APPS\FASHION.GRF \OS2\HELP\PMCHART.HLP
\OS2\APPS\GREEN.GRF
■ PM Diary
These are the files for the PM Diary productivity aid.
\OS2\APPS\PMDALARM.EXE \OS2\APPS\PMDTODO.EXE
\OS2\APPS\PMDCALC.EXE \OS2\APPS\PMDTUNE.EXE
\OS2\APPS\PMDCALEN.EXE \OS2\APPS\PMMBASE.EXE
\OS2\APPS\PMDDARC.EXE \OS2\APPS\PMSPREAD.EXE
\OS2\APPS\PMDDIARY.EXE \OS2\APPS\PMSTICKY.EXE
\OS2\APPS\PMDLIST.EXE \OS2\APPS\DLL\PMDIARY.DLL
\OS2\APPS\PMDMONTH.EXE \OS2\APPS\DLL\PMDIARYF.DLL
\OS2\APPS\PMDNOTE.EXE \OS2\APPS\DLL\PMSTICKD.DLL
\OS2\APPS\PMDTARC.EXE \OS2\HELP\PMDIARY.HLP
■ PM Seek
These are the files for the PM Seek productivity aid.
\OS2\APPS\PMSEEK.EXE \OS2\HELP\PMSEEK.HLP
60 OS/2 Performance Tuning
──── Page: 61 ────────────────────────────────
\OS2\DLL\PMSEEK.DLL
■ Pulse
These are the files for the pulse applet (CPU meter).
\OS2\APPS\PULSE.EXE
\OS2\HELP\PULSE.HLP
■ Reversi
These are the files for reversi.
\OS2\APPS\REVERSI.EXE
\OS2\HELP\REVERSI.HLP
■ Scramble
These are the files for scramble.
\OS2\APPS\SCRAMBLE.EXE \OS2\DLL\SCRLOGO.DLL
\OS2\DLL\SCRAMBLE.DLL \OS2\HELP\SCRAMBLE.HLP
\OS2\DLL\SCRCATS.DLL
■ SoftTerm
These are the files for SoftTerm (the terminal emulator).
\OS2\APPS\ACSACDI.DAT \OS2\DLL\OPROFILE.DLL
\OS2\APPS\CTLSACDI.EXE \OS2\DLL\ORSHELL.DLL
\OS2\APPS\SOFTERM.EXE \OS2\DLL\OSCH.DLL
\OS2\APPS\CUSTOM.MDB \OS2\DLL\OSIO.DLL
\OS2\APPS\SASYNCDA.SYS \OS2\DLL\OSOFT.DLL
\OS2\APPS\SASYNCDB.SYS \OS2\DLL\OTEK.DLL
\OS2\DLL\CTLSACDI.DLL \OS2\DLL\OTTY.DLL
\OS2\DLL\OACDISIO.DLL \OS2\DLL\OVIO.DLL
\OS2\DLL\OANSI.DLL \OS2\DLL\OVM.DLL
\OS2\DLL\OANSI364.DLL \OS2\DLL\OVT.DLL
\OS2\DLL\OCHAR.DLL \OS2\DLL\OXMODEM.DLL
\OS2\DLL\OCM.DLL \OS2\DLL\OXRM.DLL
\OS2\DLL\OCOLOR.DLL \OS2\DLL\SACDI.DLL
\OS2\DLL\OCSHELL.DLL \OS2\DLL\SAREXEC.DLL
\OS2\DLL\ODBM.DLL \OS2\DLL\SACDI.MSG
\OS2\DLL\OFMTC.DLL \OS2\HELP\ACDISIO.HLP
\OS2\DLL\OIBM1X.DLL \OS2\HELP\ANSI364.HLP
\OS2\DLL\OIBM2X.DLL \OS2\HELP\ANSIIBM.HLP
\OS2\DLL\OKB.DLL \OS2\HELP\IBM31011.HLP
\OS2\DLL\OKBC.DLL \OS2\HELP\IBM31012.HLP
\OS2\DLL\OKERMIT.DLL \OS2\HELP\IBMSIO.HLP
\OS2\DLL\OLPTIO.DLL \OS2\HELP\SOFTERM.HLP
\OS2\DLL\OMCT.DLL \OS2\HELP\TTY.HLP
\OS2\DLL\OMRKCPY.DLL \OS2\HELP\VTTERM.HLP
\OS2\DLL\OPCF.DLL \OS2\HELP\XRM.HLP
Appendix D. Removing Features 61
──── Page: 62 ────────────────────────────────
\OS2\DLL\OPM.DLL
■ Touch
These are the files for Touch.
\OS2\TOUCO21D.BIN \OS2\DLL\TCP.DLL
\OS2\TOUMOU.BIO \OS2\DLL\TOUCALLS.DLL
\OS2\CALIBRAT.DAT \OS2\HELP\TCP.HLP
\OS2\CALIBRAT.EXE \OS2\MDOS\VTOUCH.COM
\OS2\TOUCH.INI \OS2\MDOS\VTOUCH.SYS
\OS2\PDITOU01.SYS \OS2\MDOS\WINOS2\SYSTEM\TOUCH.DRV
\OS2\PDITOU02.SYS \OS2\SYSTEM\TDD.MSG
\OS2\TOUCH.SYS \OS2\SYSTEM\TDDH.MSG
\OS2\CALIBRAT.TXT \OS2\SYSTEM\TDI.MSG
\OS2\DLL\FSGRAPH.DLL \OS2\SYSTEM\TDIH.MSG
62 OS/2 Performance Tuning
──── Page: 63 ────────────────────────────────
Appendix E. Performance Tools
A number of tools are available that can be useful in evaluating and tuning the performance of
your OS/2 2.x system.
SPM/2 - System Performance Monitor/2 - IBM Corp.
SPM/2 2.0 is an integrated package of powerful facilities that allow you to monitor resources
such as CPU, RAM, disk and more on your local and remote IBM Operating System/2 2.0.
SPM/2's ability to graph this resource information allows you to look at real time data as well as
saved data for any monitored workstation in your LAN.
■ Collects critical resource utilization data: CPU, memory, files, swap file, FAT/HPFS cache,
physical disk, printer and communication port
■ Records performance data to disk for processing at a later time.
■ Collects data from multiple nodes in a single recording session.
■ Provides a real-time graphical representation of how system resources are being used (CPU,
disk, RAM and swap activity) as well as the ability to playback previously recorded data.
■ Produces detailed resource utilization reports (from recorded data) that can be summarized
by workstation, application, process or thread.
■ Provides in-depth OS/2 2.0 memory analysis information (including working set and a view of
OS/2 control blocks).
■ Monitoring of remote OS/2 LAN Requester as well as Servers.
Performance 2.1 by Clear and Simple, Inc.
This tool is a simple aid to tune your system. It is excellent for the novice user. It provides a
way to change the CONFIG.SYS and to remove some file to free DASD>
Pulse
Pulse is one of the simplest tools available for monitoring performance. It generates an
EKG-like graphic display that shows the level of CPU activity. This tool can be found in the
OS/2 Productivity Aids folder.
CPU Monitor - BONAMI SOFTWARE CORPORATION
A powerful combination of performance and analysis tools for the OS/2 user. Via Presentation
Manager graphics, CPU Monitor displays Real-Time information for estimated CPU utilization,
OS/2 process relationships and more. Dynamically suspend and resume execution for individual
threads. Helps you detect and stop runaway, invisible and background programs.
OSRM2 - OS/2 Resource Monitor - C.O.L. Consulting, Ltd.
An integrated group of applications for tracking (real time monitor) and performing capacity
planning functions (analysis and modeling) for machine resources (CPU, Disk, Memory, applica-
tions).
Appendix E. Performance Tools 63
──── Page: 64 ────────────────────────────────
Bridge/Monitor - Bridge Technology Inc.
Bridge/Monitor is an OS/2 performance analysis and reporting tool, for large enterprise LANs,
that allows the user to remotely monitor and manage the performance of the LAN. Performance
bottlenecks are identified and alerts generated in realtime when user defined thesholds are
exceeded. A complete performance database with query capability is maintained for reporting,
trend analysis and capacity planning. BRIDGE/MONITOR's proprietary communications
method enables peer-to-peer services between devices in the network.
Triplecheck - International OS/2 USER GROUP
A three-in-one monitoring utility. SwapMON monitors the size of the swapper file. The free
space on the swapper drives and displays the largest contiguous block of memory. MON is an
idle-time monitor displaying in graphics form the amount of processor activity over a selectable
timespan can be used to monitor background activity. Clock displays concurrent date or time in
analogue or digital format. On-line context-sensitive help available for each program.
64 OS/2 Performance Tuning
──── Page: 65 ────────────────────────────────
Appendix F. Files that can be Migrated to the Server
This file contains information about which files are required on a LAN Requester and which can
be migrated to a Server machine. Read carefully. In some cases, it is easier to list what files
must remain, and in other cases it is easier to list what can be moved. Tests were performed to
move files off a requester machine onto a server, boot the requester machine, and then perform
basic operations, functions, and applications.
When files are moved to a server machine, remember that the LIBPATH, PATH, and DPATH
statements in the requester's (client) CONFIG.SYS file should be updated with the SERVER
directory where these files were moved. Do NOT delete any OS/2 system directory entries in
these path statements even if they are empty. If empty, they should be moved to the end of the
path statements. For any applications that appear in folders, such as:
■ STHR.EXE in the Start Here icon on the OS/2 Desktop
■ E.EXE in the Productivity Folder
■ All of the Applets and games in the Productivity and Games folders.
You must update the Settings to point to the correct drive and sub-directory.
1. \OS2
Following is a list of files that SHOULD REMAIN in the \OS2 sub-directory. Most of these
files are for device drivers, hardware support and system and user INI files. Some of the
.SYS and .DMD files may not reside in your \OS2 sub-directory depending upon the type of
install you performed and what hardware is installed on your system. The CACHE.EXE and
HPFS.IFS files are required if you are using HPFS in your system. UNPACK.EXE is
included in case you need to retrieve a file from the installation diskettes. CHKDSK.COM is
included if Autocheck is specified for the file systems upon system boot up. The
ATTRIB.EXE file is included because it may be needed by certain support functions.
IBM2ADSK.ADD OS2DASD.DMD ABIOS.SYS
IBM2FLPY.ADD OS2SCSI.DMD CLOCK02.SYS
IBM2SCSI.ADD ATTRIB.EXE COM.SYS
000000.BIO CACHE.EXE DOS.SYS
F80D00.BIO CMD.EXE EXTDSKDD.SYS
F80D01.BIO PMREXX.EXE LOG.SYS
W020100.BIO PMSHELL.EXE MOUSE.SYS
W020101.BIO SVGA.EXE KBD02.SYS
W050000.BIO UNPACK.EXE PCLOGIC.SYS
W050100.BIO VIEW.EXE PCMCIA.SYS
W050101.BIO VIEWDOC.EXE PMDD.SYS
W060100.BIO HPFS.IFS POINTDD.SYS
W0F0000.BIO PMCONTRL.INF PRINT02.SYS
CHKDSK.COM OS2.INI SCREEN02.SYS
KEYBOARD.DCP OS2SYS.INI TESTCFG.SYS
VIOTBL.DCP IBMINT13.I13 VDISK.SYS
OS2ASPI.DMD
Any files removed from this directory can be moved to a Server directory. This directory
should be placed in the PATH statement of the CONFIG.SYS file in the root directory. It
Appendix F. Files that can be Migrated to the Server 65
──── Page: 66 ────────────────────────────────
would also be wise to create a diskette with system utilities such as FORMAT, XCOPY, and
the like that will be near the requester machine in case the server is not available and mainte-
nance is needed on the requester machine.
2. \OS2\DLL
Following are the DLL files that are MUST REMAIN in the \OS2\DLL sub-directory. This
sub-directory will also contain files used for Fonts and printer drivers. These files should
remain on your requester machine, but are not listed here. They have file extensions exten-
sions of PSF, FON, DRV, PDR and QPR. This list does not include any DLL files that may
be placed in the \OS2\DLL sub-directory by another installed product other the the base
OS/2 system.
BKSCALLS.DLL NAMPIPES.DLL PMVIOP.DLL
BMSCALLS.DLL NLS.DLL PMWIN.DLL
BVH8514A.DLL NPXEMLTR.DLL PMWP.DLL
BVHVGA.DLL NWIAPI.DLL PMWPMRI.DLL
BVHWNDW.DLL OS2CHAR.DLL QUECALLS.DLL
BVSCALLS.DLL OS2SM.DLL REXXINIT.DLL
DISPLAY.DLL PMATM.DLL SESMGR.DLL
DOSCALL1.DLL PMCTLS.DLL SOM.DLL
FKA.DLL PMDRAG.DLL SPL1B.DLL
HELPMGR.DLL PMGPI.DLL VIOCALLS.DLL
HPMGRMRI.DLL PMGRE.DLL WCFGMRI.DLL
IBM8514.DLL PMMLE.DLL WINCFG.DLL
IMP.DLL PMSDMRI.DLL WPCONFIG.DLL
KBDCALLS.DLL PMSHAPI.DLL WPCONMRI.DLL
MINXMRI.DLL PMSHAPIM.DLL WPPRINT.DLL
MOUCALLS.DLL PMSHLTKT.DLL WPPRTMRI.DLL
MSG.DLL PMSPL.DLL
The BVH and IBM DLL files will vary in name depending upon the type of display adapter
your are using in your system. The rule is, if the name of the DLL starts with BVH or IBM,
it must remain in the DLL sub-directory on the requester machine.
3. \OS2\MDOS
Here are the files which SHOULD REMAIN in the \OS2\MDOS sub-directory. The
APPEND.EXE file is required to be in this sub-directory and cannot be moved. The
DOSKRNL and COMMAND.COM files are also searched for in this directory specifically.
All the other files are device driver support. These can be removed or may not appear if the
devices are not on your system, or because of the install options that were used.
DOSKRNL VCDROM.SYS VLPT.SYS
COMMAND.COM VCGA.SYS VMONO.SYS
APPEND.EXE VCMOS.SYS VMOUSE.SYS
ANSI.SYS VCOM.SYS VNPX.SYS
COMDD.SYS VDMA.SYS VPCMCIA.SYS
EGA.SYS VDPMI.SYS VPIC.SYS
EMM386.SYS VDPX.SYS VSVGA.SYS
FSFILTER.SYS VDSK.SYS VTIMER.SYS
HIMEM.SYS VEGA.SYS VVGA.SYS
LPTDD.SYS VEMM.SYS VWIN.SYS
66 OS/2 Performance Tuning
──── Page: 67 ────────────────────────────────
V8514A.SYS VFLPY.SYS VXGA.SYS
VAPM.SYS VKBD.SYS VXMS.SYS
VBIOS.SYS
4. \OS2\BOOK and \OS2\HELP
All of the base files in \OS2\BOOK and \OS2\HELP sub-directories CAN BE MOVED
moved to a server machine. If done, the SET HELP, SET GLOSSARY, and SET
BOOKSHELF statements in CONFIG.SYS must be updated to point to the Server path.
5. \OS2\SYSTEM
No files should be removed from this sub-directory.
6. \OS2\INSTALL
Different files will be removed from this sub-directory depending on what other support is
being installed on your system and if service updates are going to be applied to the system.
Because of service requirements, all files except the following should remain in this sub-
directory. These files CAN BE MOVED.
DATABASE.DAT PRDESC.LST SAMPLE.RSP
DATABASE.TXT PRDRV.LST USER.RSP
INSTAID.LIB
From these files, you may have DATABASE.DAT remain in the \OS2\INSTALL sub-
directory because it is the MIGRATE Application utility.
7. \OS2\APPS
These files were discussed in an earlier append in this document. Basically, all of the files can
be moved to a server machine, you just have to insure that the Productivity and Games icons
reflect the correct path names.
8. \OS2\BITMAP
The only file required in this sub-directory is OS2LOGO.BMP.
9. \OS2\DRIVERS
All files in this directory remain there.
Appendix F. Files that can be Migrated to the Server 67
──── Page: 68 ────────────────────────────────
Glossary
API. Application Programming Interface
APM. Advanced Power Management
Bit. Either of the binary digits 0 or 1
BIOS. Basic Input/Output System
BPS. Bits per Second
Byte. 8 bits treated as a unit representing 1 char-
acter
CD/ROM. Compact Disk Read-Only Memory
High-capacity read-only memory in the form of an
optically read compact disk.
CGA. Color Graphics Array
DASD. Direct Access Storage Device
DLL. Dynamic Link Library
DOS. Disk Operating System
DRAM. Dynamic random-access memory
EA. Extended Attribute
EGA. Enhanced Graphics Array
EMS. Expanded Memory Support
ESDI. Enhanced Small Device Interface
FAT. File Allocation Table
FIFO. First-in/First-out
GB. Gigabyte (1,073,741,824 bytes)
GDT. Global Descriptor Table
HPFS. High Performance File System
IDE. Intelligent Drive Electronics
I/O. Input/Output
IPF. Information Presentation Facility
ISA. Industry Standard Architecture
KB. Kilobyte (1,024 bytes)
LAN. Local Area Network
Launched Common. Starting Windows applica-
tions in the same session as other Windows appli-
cations
Launched Separate. Starting Windows applica-
tions in separate Window sessions
LDT. Local Descriptor Table
MB. Megabyte (1,048,576 bytes)
MHz. Megahertz
MVDM. Multiple Virtual DOS Machines
OS/2⌐. Operating System/2╦
PM. Presentation Manager
RAM. Random Access Memory
ROM. Read Only Memory
SCSI. Small Computer System Interface
Seamless Session. WIN-OS2 session appearing as
a window on the Workplace Shell
SIMM. Single Inline Memory Module
SVGA. Super Video Graphics Array
Swap file. Page file containing memory data
VDM. Virtual DOS Machines
VGA. Video Graphics Array
VIO. Video I/O
VRAM. Video RAM
WIN-OS/2. OS/2 support for running Windows
applications
68 OS/2 Performance Tuning
──── Page: 69 ────────────────────────────────
XGA. Extended Graphics Array
XMS. Extended Memory Support
Glossary 69
──── Page: 70 ────────────────────────────────
Index
A
animation 18
application performance measurements 56
AUTOEXEC.BAT
specifying different 33
B
boot manager 6
C
changing display drivers 18
CONFIG.SYS
buffers 29
changes to 27
customizing for DOS 32
devicehigh 32
disk cache 28
dos 32
libpath 28
maxwait 30
memman 30
path 27
printmonbufsize 30
priority_disk_io 29
protectonly 31
rmsize 31
set deldir 31
set restartobjects 31
swap file 20
swappath 28
threads 30
timeslice 30
using Alt-F1 27
customizing DOS sessions 38
customizing for DOS
AUTOEXEC.BAT 32
customizing WIN-OS/2 sessions
cut and paste 41
D
DASD 23
removing features 58
default cache sizes 9
disk caching 22
disk partitioning 24
display
installation selection 13
display driver performance 57
DOS
memory tuning 42
printing 48
settings 38
DOS settings
memory 42
performance 39
F
FAT file system 23
file system
caches 24
default cache sizes 9, 26
FAT 23
file size supported 8, 22
HPFS 23
lazy writing 24
partition size supported 8, 22
file system selection 8
H
hardware
communication 54
displays 51
exploitation 1
hard drives 53
memory 51
minimum requirements 3
processor 50
High Performance File System (HPFS) 23
I
installation 6
boot manager 6
default cache sizes 9
display selection 13
file system 8
fonts 15
formatting the install partition 9
full install 11
general 17
installation feature selections 9
70 OS/2 Performance Tuning
──── Page: 71 ────────────────────────────────
installation (continued)
migrating applications 17
partitioning 7
preselected install 10
selectable install 11
setup and installation menu 15
SVGA Display 14
swap file 16
system configuration menu 13
VGA Display 14
XGA Display 14
L
lazy writing 22
M
memory
flat memory model 1
required 3
memory management 42
swap file 20
microprocessors supported 3
migrating applications 17
MVDM 1
P
partitions 7
performance
tips 55
performance improvements in 2.1
DPMI 5
graphic subsystem 4
printing 5
VDM support 4
WIN-OS/2 performance 4
performance tools 63
post installation
changing the display driver 18
changing the display resolution 18
CONFIG.SYS changes 27
post installation.
AUTOEXEC.BAT changes 32
AUTOEXEC.BAT file 32
tuning DOS applications 37
tuning OS/2 applications 33
tuning Windows applications 33
printer settings 44
compression 45
fast system fonts 45
HP-GL/2 46
printer settings (continued)
large buffers 46
memory 45
print while spooling 46
printer patterns 45
resolution 45
start and stop time 46
printing 44
fonts 46
from DOS 48
from WIN-OS/2 48
spool files 47
R
read ahead 22
removing features 58
S
settings 38
DOS_AUTOEXEC 36, 40
DOS_BACKGROUND_EXECUTION 36, 40
DOS_BREAK 41
DOS_DEVICE 39
DOS_FCBS 41
DOS_FCBS_KEEP 41
DOS_FILES 41
DOS_HIGH 42
DOS_RMSIZE 37
DPMI_MEMORY_LIMIT 37, 43
EMS_HIGH_OS_MAP_REGION 44
EMS_LOW_OS_MAP_REGION 44
EMS_MEMORY_LIMIT 44
for DOS sessions 38
for WIN-OS/2 sessions 36
HW_ROM_TO_RAM 42
IDLE_SECONDS 39
IDLE_SENSITIVITY 39
INT_DURING_IO 37, 40
MEM_EXCLUDE_REGIONS 42
MEM_INCLUDE_REGIONS 42
memory for DOS sessions 42
VIDEO_8514A_XGA_IOTRAP 37, 40
VIDEO_FASTPASTE 41
VIDEO_ONDEMAND_MEMORY 42
VIDEO_RETRACE_EMULATION 40
VIDEO_ROM_EMULATION 41
VIDEO_SWITCH_NOTIFICATION 37, 41
WIN_CLIPBOARD 36
WIN_DDE 36
WIN_RUNMODE 36
Index 71
──── Page: 72 ────────────────────────────────
settings (continued)
XMS_HANDLES 43
XMS_MEMORY_LIMIT 43
XMS_MINIMUM_HMA 43
spooled printing 47
spooler
path 47
print priority 47
swap file 16, 20
parameters 20
T
top tips to improve performance 55
tuning
AUTOEXEC.BAT 32
COM 49
CONFIG.SYS 27
DOS applications 37
general 27
OS/2 applications 33
printing 44
Windows applications 33
W
WIN-OS/2
install 17
printing 48
reducing memory 35
settings 36
Windows application support 2
72 OS/2 Performance Tuning
──── End Document: WP ────────────────────────────