Chapter 2. Installing OpenGL Multipipe

Using the following two topics, this chapter describes how you install OpenGL Multipipe:

General Installation

The following are the prerequisites for installing OpenGL Multipipe on your system:

Hardware 

Silicon Graphics Prism visualization system

Software 

SGI ProPack 4 Service Pack 3

OpenGL Multipipe for Silicon Graphics Prism systems is installed by default when installing the SGI ProPack package. OpenGL Multipipe contains the following file subsystem:

sgi-omp-2.x-yyyyy.ia64.rpm

When installed with SGI ProPack 4, the xinetd service is disabled by default. The service has to be enabled and started in order for OpenGL Multipipe to function. In order to start the service, the following commands need to be executed as a superuser once only after SGI ProPack installation:

$ /sbin/chkconfig xinetd on
$ /etc/init.d/xinetd start

When trying to run an application under an OpenGL Multipipe session while xinetd is disabled, the following error message will be printed:

“Could not connect to sgi-ompslave service.” 

Detailed documentation of the  rpm utility for managing software installation on Linux is available in the rpm(8) man page.

For any critical updated information, you can check the release notes, /usr/share/omp/release_notes/user/relnotes.html, and the OpenGL Multipipe website, http://www.sgi.com/software/multipipe/ .

Installing the Data Collection Agent for Performance Co-Pilot

As part of OpenGL Multipipe installation, the OpenGL Multipipe Performance Metrics Domain Agent ( PMDA) is placed in the directory /var/lib/pcp/multipipe. This PMDA needs to be installed after the initial installation of the OpenGL Multipipe RPM or if the hardware configuration of the machine changes. You install the OpenGL Multipipe PMDA by running the following script as a superuser:

/var/lib/pcp/pmdas/multipipe/Install


Note: This script should be executed only after Performance Co-Pilot is properly installed and configured. For Performance Co-Pilot installation and configuration, refer to the Performance Co-Pilot for IA-64 Linux User's and Administrator's Guide.

The following session illustrates the installation of the PDMA:

keglevich:/var/lib/pcp/pmdas/multipipe # ./Install

You need to choose an appropriate configuration for installation of
the “multipipe” Performance Metrics Domain Agent (PMDA).
 
  collector     collect performance statistics on this system
  monitor       allow system to monitor local and/or remote systems
  both          collector and monitor configuration for this system
 
Please enter c(ollector) or m(onitor) or b(oth) b
 
Updating the Performance Metrics Name Space (PMNS) ...
Compiled PMNS contains
          167 hash table entries
          723 leaf nodes
          105 non-leaf nodes
         7835 bytes of symbol table
Installing pmchart view(s) ...
PMCD should communicate with the multipipe daemon via a pipe or a socket? [pipe]
Terminate PMDA if already installed ...
Installing files ...
gmake: Nothing to be done for `install'.
Updating the PMCD control file, and notifying PMCD ...
Check multipipe metrics have appeared ... 73 warnings, 73 metrics and 0 values
keglevich:/var/lib/pcp/pmdas/multipipe #

Once the PMDA is installed, you can verify the installation by running the pminfo command. The following session show the typical output:

keglevich:/var/lib/pcp/pmdas/multipipe # pminfo | grep multipipe
multipipe.master.nframes
multipipe.master.frame_time
multipipe.master.frame_rate
multipipe.master.draw_time
multipipe.master.draw_rate
multipipe.master.encoded_bytes
multipipe.master.encoding_rate
multipipe.master.wait_write_queue
multipipe.master.wait_write_queue_p
multipipe.master.wait_state_query
multipipe.master.wait_state_query_p
multipipe.master.wait_EOF_sync
multipipe.master.wait_EOF_p
multipipe.slave0.nframes
multipipe.slave0.frame_time
multipipe.slave0.frame_rate
multipipe.slave0.draw_time
multipipe.slave0.draw_rate
multipipe.slave0.wait_read_queue
multipipe.slave0.wait_read_queue_p
multipipe.slave0.wait_sync
multipipe.slave0.wait_sync_p
multipipe.slave0.direct_vertices
multipipe.slave0.direct_vertices_rate
multipipe.slave0.direct_culled_vertices
multipipe.slave0.direct_culled_vertices_rate
multipipe.slave0.direct_rendered_vertices
multipipe.slave0.direct_rendered_vertices_rate
multipipe.slave0.direct_bbox_cmd
multipipe.slave0.retained_vertices
multipipe.slave0.retained_vertices_rate
multipipe.slave0.retained_culled_vertices
multipipe.slave0.retained_culled_vertices_rate
multipipe.slave0.retained_rendered_vertices
multipipe.slave0.retained_rendered_vertices_rate
multipipe.slave0.retained_bbox_cmd
multipipe.slave0.total_vertices
multipipe.slave0.total_vertices_rate
multipipe.slave0.total_culled_vertices
multipipe.slave0.total_culled_vertices_rate
multipipe.slave0.total_rendered_vertices
multipipe.slave0.total_rendered_vertices_rate
multipipe.slave0.total_bbox_cmd
multipipe.slave1.nframes
multipipe.slave1.frame_time
multipipe.slave1.frame_rate
multipipe.slave1.draw_time
multipipe.slave1.draw_rate
multipipe.slave1.wait_read_queue
multipipe.slave1.wait_read_queue_p
multipipe.slave1.wait_sync
multipipe.slave1.wait_sync_p
multipipe.slave1.direct_vertices
multipipe.slave1.direct_vertices_rate
multipipe.slave1.direct_culled_vertices
multipipe.slave1.direct_culled_vertices_rate
multipipe.slave1.direct_rendered_vertices
multipipe.slave1.direct_rendered_vertices_rate
multipipe.slave1.direct_bbox_cmd
multipipe.slave1.retained_vertices
multipipe.slave1.retained_vertices_rate
multipipe.slave1.retained_culled_vertices
multipipe.slave1.retained_culled_vertices_rate
multipipe.slave1.retained_rendered_vertices
multipipe.slave1.retained_rendered_vertices_rate
multipipe.slave1.retained_bbox_cmd
multipipe.slave1.total_vertices
multipipe.slave1.total_vertices_rate
multipipe.slave1.total_culled_vertices
multipipe.slave1.total_culled_vertices_rate
multipipe.slave1.total_rendered_vertices
multipipe.slave1.total_rendered_vertices_rate
multipipe.slave1.total_bbox_cmd
keglevich:/var/lib/pcp/pmdas/multipipe #