Hier die Beschreibung zu CAT_MEM > 5: Prior to AIX 4.3.2 the limitation of CAT_MEM=5 has and still exists on graPHIGS. In July of this year we modified graPHIGS code to allow the use of CAT_MEM=8 in CATIA. This change is available in the AIX 4.3.3 GOLD code and is also available as a PTF/APAR for AIX 4.3.2. The necessary AIX 4.3.2 APARs for graPHIGS are: IY02351 & IY03327 In conjunction with the installation of the above APARs, the "catini" script in the CATIA environment must be modified to NOT limit CAT_MEM to 5 as it does for many levels of CATIA. I'm not sure in what level of CATIA this will be changed, but here are the changes required. Edit /usr/catia/cfg/code/bin/catini or a local copy and modify the section of that file shown below to look like the section that follows it. ----- OLD ----- if [ $CAT_MEM -le 8 -a $CAT_MEM -gt 5 ]; then CAT_MEM=5 export CAT_MEM elif [ $CAT_MEM -lt 0 -o $CAT_MEM -gt 8 ]; then tput clear messag "Invalid CAT_MEM argument : $CAT_MEM" "" '$CAT_MEM' exit 1 elif [ $CAT_MEM -eq 0 ]; then unset CAT_MEM fi ----- NEW ----- if [ $CAT_MEM -lt 0 -o $CAT_MEM -gt 8 ]; then tput clear messag "Invalid CAT_MEM argument : $CAT_MEM" "" '$CAT_MEM' exit 1 elif [ $CAT_MEM -eq 0 ]; then unset CAT_MEM fi ----- END ----- OpenGL made a similar change about the same time. The AIX 4.3.2 APAR for OpenGL is: IY02614 Below, I've included the section of the AIX 4.3.3 /usr/lpp/bos/README that discusses this new capability for graPHIGS. ----------------------------------------------------------------------------- graPHIGS Shared Segments ------------------------ With the changes made to the internals of the graphics subsystem, the number of segments used by the graPHIGS runtime environment is reduced, providing more segments for the application and allowing the application to process larger models. Here are the specifics. In AIX versions prior to AIX 4.3.3, for graPHIGS applications that use Large Program Support (preallocated big data heap), the maximum data addressability for thread-safe graPHIGS programs running on a multiprocessor system or graPHIGS programs running on a uni-processor system was 1.25 GB (5 segments). With changes in AIX 4.3.3 these types of programs can now access up to 2 GB (8 segments) of contiguous memory. The AIX operating system 32-bit programming environment provides up to 8 contiguous segments (3-10) for use as the big data heap for an application that wants to use Large Program Support. (See the AIX General Programming Concepts manual for additional information on Large Program Support.) Thus the maximum heap that an application can access when using Large Program Support is 2 GB. Graphics adapter I/O (used by graPHIGS XDWA workstations) requires one segment that is to be consumed for the duration of an open graPHIGS XDWA (direct access) workstation. This segment must be one of the segments (3 - 12). The display subsystem uses shared memory to improve performance when graphics processes are communicating through socket connections. Shared memory connections, established when the DISPLAY environment variable is set to its normal default (:0.0), consume one segment each. There are two connections used by a typical application that uses the graPHIGS API. One is the connection between the application and the X Server, and the other is the connection between the graPHIGS API and the X Server. If the DISPLAY environment variable is modified to specify UNIX domain sockets (unix:0.0) or TCP/IP sockets (:0.0), then no segments are consumed for shared memory connections. Therefore, an application or user can control use of these segments and have more segments for application use. For the GXT3000P and GXT2000P in the 4.3.3 environment the default graPHIGS API and application usage, the application has 7 segments (1.75 GB) available. Exceptions to this include: - If the user or application sets the DISPLAY environment variable to use UNIX domain sockets or TCP/IP sockets, two more segments become available and the application can access up to 2 GB data for the Large Program Support model. Note: The AIX Operating System has a maximum of 8 segments available for Large Program Support. - If the application has selected to use an 8 segment Large Program Model and the application obtains its display connection before opening the graPHIGS workstation, then the graPHIGS API uses the last available segment for adapter I/O and the DISPLAY connection is then UNIX domain sockets. Note: The application connection to the X Server is still a shared memory connection. If an application uses shmat or mmap, and not the Large Program Support, it could access up to 10 segments or 2.5 GB of shared memory (9 total segments consisting of segment numbers 3-12 and 14) or 2.25GB of contiguous shared memory (segments 3-11 or segments 4-12), and still use an XDWA workstation. This requires that the application open the XDWA workstation before all segments in the 3-12 range are consumed. This also requires that the user sets the DISPLAY environment variable to specify UNIX domain sockets or TCP/IP sockets for all X Window System connections. Note: When Unix domain sockets are specified, there may be reduced performance for applications using input events which are passed to the graPHIGS API from the X Server. Multiple graPHIGS XDWA workstations opened on the same adapter only require one segment per process for adapter I/O.