Power Macintosh: Running Native Apps From a Server (1/95)


I want to launch Microsoft Office 4.2 applications over the network from Novell servers. I have installed the fat binary versions (both 680x0 and PowerPC based code) of Microsoft Office, and the applications load slowly on my Power Macintosh 6100 computers. There also seems to be some unusual behavior with the memory usage on the Power Macintosh computers when launching Excel 5.0 over the network.

Here is a typical installation of fat Excel 5.0 on a Novell server:

680x0-based computer PowerPC-based computer
--------------------------------- --------------------------------
Quadra 800 Power Macintosh 8100
Plain System 7.5 Plain System 7.5
16 MB RAM 16 MB RAM
Time to launch: 15 seconds Time to launch: 60 seconds
System Heap Size: grew about 400K System Heap Size: grew about 6 MB

Apple has recommended turning on virtual memory on Power Macintosh computers to get better memory management for native applications. The Power Macintosh has a feature called file-mapped virtual memory. File-mapping allows most of the native application's code to remain on the disk and only currently executing code is RAM. The amount of RAM savings is different for each application. To see how much RAM will be saved by turning on virtual memory, open the Get Info window for the native application and the RAM savings will be displayed in the bottom of the window.

The above paragraph pertains only to native applications on local volumes and not on file servers. File-mapping is not supported on remote volumes. What happens in this case is that the application's code is loaded into RAM in the system heap. This is not a major problem with small applications. However, Excel has a 6500k code fragment, which is why the system heap grows about 6MB when Excel is launched from the server. It is also why it takes longer for Excel to launch on the Power Macintosh since all that data has to travel across the network.

If virtual memory is turned off, the application's code fragment is loaded into the application's heap. In the case of Excel, the application heap grows by 6MB and the system heap grows by 4MB, a total of 10MB, when virtual memory is turned off. The system heap grows in this case because of the shared libraries that are installed with Excel. These shared libraries are located in the extensions folder and are loaded into the system heap when Excel is launched.

When virtual memory is turned on and Excel is run from a server, Excel's 6MB of code is loaded into the system heap but the shared libraries are file-mapped since they are on the local volume. This results in a RAM savings of 4MB over running the same application with virtual memory disabled.

The conclusion is that virtual memory should be enabled regardless of where the application resides. However, greater RAM savings can be achieved by running applications from the local drive since the application's code can be file-mapped.

68000 (68k) based applications are not subject to the above behavior. For a detailed explanation about the differences between 68k and PowerPC code management, read the Tech Info Library article entitled "Power Mac and Unusual Memory Usage with Some Applications (12/94)


Support Information Services
Published Date: Feb 19, 2012