Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ IL(1) — IRIX 6.5.3f

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

IFL(1)

IL(3)

imgformats(1)

imginfo(1)



IL(1)                                                                    IL(1)



NAME
     IL - configuring the ImageVision Library runtime environment

SYNOPSIS
     The ImageVision Library (IL) is an object-oriented, extensible toolkit
     for creating, processing, and displaying images. It is used by a number
     of tools bundled with IRIX, including:


          imgcopy
          imginfo
          imgformats
          imgview

     and some of the other desktop tools.

DESCRIPTION
     A set of environment variables can be used to configure the global IL
     environment. In particular, the file format, multi-processing, graphics
     hardware acceleration, caching capabilities and monitoring functions of
     the IL can be controlled using these variables.  The environment
     variables are summarized in a table here and describe in more detail
     below:

                   Variable                Default
                   ____________________________________________
                   IL_ARENA_MAXUSERS       40
                   IL_CACHE_FRACTION       .3
                   IL_CACHE_SIZE           use cache fraction
                   IL_COMPUTE_THREADS      number of processors
                   IL_HW_ACCELERATE        on
                   IL_HW_DISPLAY           default X Display
                   IL_MONITOR_CACHE        off
                   IL_MONITOR_COMPACTION   off
                   IL_MONITOR_LOCKS        off
                   IL_MONITOR_RESET        off
                   IL_MONITOR              off
                   IL_MP_ARENA_SIZE        2Meg
                   IL_MP_LOCKS             on
                   IL_NUM_PBUFFERS         1
                   IL_READ_THREADS         1

   File Formats
     The image file formats recognized by IL are determined at runtime by
     searching for dynamic shared objects (DSOs) that contain the code for
     various file formats.  Refer to IFL(1) for more details on controlling
     this feature.


   Multi-Threading Configuration
     The environment variables ILCOMPUTETHREADS and ILREADTHREADS can be
     used to override the default values for the number of compute threads,



                                                                        Page 1





IL(1)                                                                    IL(1)



     and the number of file read threads.  By default one compute thread is
     created for each processor on the host system (including the user's
     thread), and one read thread is created to perform disk I/O in the
     background.  For example, you can disable the all multi-processing
     feature in IL by issuing the commands:

              setenv IL_COMPUTE_THREADS 0
              setenv IL_READ_THREADS 0


     prior to running an IL based application.

     The size of the arena used to allocate spin-locks and semaphores for MP
     control can be set with the ILMPARENASIZE. This may be necessary if
     you create a large number of objects derived from ilLink.

     The use of spin-locks to prevent concurrent access to the IL data
     structures can be turned of by setting ILMPLOCKS to 0.  You can only
     take advantage of this optimization if the number of compute threads and
     read threads are both set to zero, and you don't make any concurrent
     calls to IL from your application.

     By default the IL allows up to forty threads to be sharing the MP arenas.
     If you need more, you can set the ILARENAMAXUSERS environment variable
     to a larger value.


   Hardware-Acceleration Configuration
     The environment variable ILHWACCELERATE can be used to override the
     default behavior of using the graphics hardware to perform processing
     whenever possible.  For example, you can disable the hardware
     acceleration feature of IL by issuing the command:

              setenv IL_HW_ACCELERATE 0


     prior to running an IL based application.  See the ilHwSetGlobalEnable()
     man page for possible value of this variable.

     The ILHWDISPLAY environment variable controls the display to be used
     for accelerated operations that don't end up in a displayed window (like
     statistical operations).  This environment variable uses the same format
     as the X DISPLAY environment variable.  The default value for this
     variable is the current value of the DISPLAY variable.

     The number of p-buffers (off screen framebuffer memory) that are
     allocated is controlled by the ILNUMPBUFFERS environment variable.  The
     default value is one on machines that support p-buffrers.  This can also
     be controlled by the ilSetNumPBuffers(3) global function.






                                                                        Page 2





IL(1)                                                                    IL(1)



   Caching Configuration
     The environment variable ILCACHEFRACTION can be used to override the
     default size of the IL image data cache (30% of available user memory).
     For example, you could set the cache size to 20% of available user memory
     by issuing the command:

              setenv IL_CACHE_FRACTION .2


     prior to running an IL based application.  Alternatively, the environment
     variable ILCACHESIZE can be used to set the size of the cache in bytes.
     For example, you could set the cache size to 4 million bytes by issuing
     the command:

              setenv IL_CACHE_SIZE 4000000


     prior to running an IL based application.  The ILCACHESIZE variable
     takes precedence over ILCACHEFRACTION if both are set.


   Monitoring Control
     You can use the ILMONITOR environment variable to turn on the IL
     Monitor.  See the ILmonitor(1) man page for more details.  If a less
     complete level of monitoring is needed (or you need to capture a log of
     the operations you can use any or all of ILMONITORCACHE,
     ILMONITORCOMPACTION, ILMONITORRESET and ILMONITORLOCKS.  See
     ilCacheImg(3il) method, enableGlobalPagingCallback, for more information
     on ILMONITORCACHE.  See ilLink(3il) method, enableResetCallback, for
     more information on ILMONITORRESET.  You can set ILMONITORCOMPACTION
     to 1 to get a printed message each time the cache is compacted.

     If you set the environment variable ILMONITORLOCKS to 1, a log of lock
     creations and destructions is printed.  Additionally, at program exit,
     any remaining locks are displayed.  For creations, a short message is
     printed with the name of the lock.  The name consists of the address of
     the lock optionally followed by a parenthetical comment describing what
     the lock is used for.  For destructions and at exit time, the name of the
     lock and its metering information are displayed.  The metering
     information measures how many attempts were made to acquire the lock, how
     many of those attempts were successful, how many times the software was
     forced to start spinning on the lock, etc.  See the usctllock(3P) manual
     page for more information on the meaning of the metering information.

FILES
     /usr/lib/libil.so      Base (C++) library
     /usr/lib/libcil.so     C API wrapper library
     /usr/lib/libilMon.so   IL monitor







                                                                        Page 3





IL(1)                                                                    IL(1)



SEE ALSO
     IFL(1), IL(3), imgformats(1), imginfo(1)





















































                                                                        Page 4



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026