15bd8deadSopenharmony_ciXXX - incomplete
25bd8deadSopenharmony_ci
35bd8deadSopenharmony_ciName
45bd8deadSopenharmony_ci
55bd8deadSopenharmony_ci    SGIX_bali_timer_instruments
65bd8deadSopenharmony_ci
75bd8deadSopenharmony_ciName Strings
85bd8deadSopenharmony_ci
95bd8deadSopenharmony_ci    GL_SGIX_bali_timer_instruments
105bd8deadSopenharmony_ci
115bd8deadSopenharmony_ciVersion
125bd8deadSopenharmony_ci
135bd8deadSopenharmony_ci    $Date: 1998/10/02 18:20:29 $  prf $Revision: 1.2 $
145bd8deadSopenharmony_ci
155bd8deadSopenharmony_ciNumber
165bd8deadSopenharmony_ci
175bd8deadSopenharmony_ci    XXX
185bd8deadSopenharmony_ci
195bd8deadSopenharmony_ciDependencies
205bd8deadSopenharmony_ci
215bd8deadSopenharmony_ci    SGIX_instruments is required
225bd8deadSopenharmony_ci    
235bd8deadSopenharmony_ciOverview
245bd8deadSopenharmony_ci
255bd8deadSopenharmony_ci    This extension defines two timing-related instruments: one to 
265bd8deadSopenharmony_ci    measure the time spent in the geometry subsystem, and another
275bd8deadSopenharmony_ci    to measure the time spent in the rasterization subsystem.  These
285bd8deadSopenharmony_ci    instruments can be used to balance the load of the two subsystems 
295bd8deadSopenharmony_ci    and to fine-tune application performance.
305bd8deadSopenharmony_ci    
315bd8deadSopenharmony_ci
325bd8deadSopenharmony_ciIssues
335bd8deadSopenharmony_ci
345bd8deadSopenharmony_ci    XXX
355bd8deadSopenharmony_ci    
365bd8deadSopenharmony_ciNew Procedures and Functions
375bd8deadSopenharmony_ci
385bd8deadSopenharmony_ci    None
395bd8deadSopenharmony_ci
405bd8deadSopenharmony_ciNew Tokens
415bd8deadSopenharmony_ci
425bd8deadSopenharmony_ci    Accepted by the <cap> parameter of Enable, Disable and IsEnabled:
435bd8deadSopenharmony_ci
445bd8deadSopenharmony_ci        BALI_GEOM_TIMER_INSTRUMENT      0xXXXX
455bd8deadSopenharmony_ci        BALI_RASTER_TIMER_INSTRUMENT    0xXXXX
465bd8deadSopenharmony_ci
475bd8deadSopenharmony_ci    Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
485bd8deadSopenharmony_ci    GetFloatv, and GetDoublev:
495bd8deadSopenharmony_ci
505bd8deadSopenharmony_ci        BALI_INSTRUMENT_TIME_UNIT       0xXXXX
515bd8deadSopenharmony_ci
525bd8deadSopenharmony_ciAdditions to Chapter 2 of the 1.0 Specification (OpenGL Operation)
535bd8deadSopenharmony_ci
545bd8deadSopenharmony_ci    None
555bd8deadSopenharmony_ci
565bd8deadSopenharmony_ciAdditions to Chapter 3 of the 1.0 Specification (Rasterization)
575bd8deadSopenharmony_ci
585bd8deadSopenharmony_ci    None
595bd8deadSopenharmony_ci
605bd8deadSopenharmony_ciAdditions to Chapter 4 of the 1.0 Specification (Per-Fragment
615bd8deadSopenharmony_ciOperations and the Frame Buffer)
625bd8deadSopenharmony_ci
635bd8deadSopenharmony_ci    None
645bd8deadSopenharmony_ci
655bd8deadSopenharmony_ciAdditions to Chapter 5 of the 1.2 Specification (Special Functions)
665bd8deadSopenharmony_ci    
675bd8deadSopenharmony_ci    Add to the end of section 5.X entitled Instruments:
685bd8deadSopenharmony_ci
695bd8deadSopenharmony_ci    Timer instruments provide a method to measure and regulate the 
705bd8deadSopenharmony_ci    performance of the GL pipeline in terms of geometry and 
715bd8deadSopenharmony_ci    rasterization.  Because most applications tend to be limited by
725bd8deadSopenharmony_ci    either geometry processing or rasterization, timer instruments 
735bd8deadSopenharmony_ci    will enable an application to identify possible bottlenecks and 
745bd8deadSopenharmony_ci    undesired distribution of work between the two subsystems, and 
755bd8deadSopenharmony_ci    thereby to improve load-management.  
765bd8deadSopenharmony_ci
775bd8deadSopenharmony_ci    If BALI_GEOM_TIMER_INSTRUMENT is enabled and the instruments have
785bd8deadSopenharmony_ci    been started via a call to StartInstrumentsSGIX, a counter of the 
795bd8deadSopenharmony_ci    amount of time spent in geometry subsystem is maintained.  A 
805bd8deadSopenharmony_ci    similar counter is maintained for the time spend on rasterization 
815bd8deadSopenharmony_ci    if BALI_RASTER_TIMER_INSTRUMENT is enabled.
825bd8deadSopenharmony_ci
835bd8deadSopenharmony_ci    The actual amount of time spent on geometry processing and 
845bd8deadSopenharmony_ci    rasterization returned by BALI_GEOM_TIMER_INSTRUMENT and 
855bd8deadSopenharmony_ci    BALI_RASTER_TIMER_INSTRUMENT, respectively, is calculated using 
865bd8deadSopenharmony_ci    the real time clock of the scalar processor (SP).  The values
875bd8deadSopenharmony_ci    returned by these instruments will be measured in time units.  The
885bd8deadSopenharmony_ci    length of a time unit can be queried using the enum
895bd8deadSopenharmony_ci    INSTRUMENT_TIME_UNIT_SGIX (see Chapter 6).  This number will be 
905bd8deadSopenharmony_ci    affected by processor speed and other implementation-specific 
915bd8deadSopenharmony_ci    considerations.  
925bd8deadSopenharmony_ci
935bd8deadSopenharmony_ci    Each response from BALI_GEOM_TIMER_INSTRUMENT and 
945bd8deadSopenharmony_ci    BALI_RASTER_TIMER_INSTRUMENT uses 6 32-bit words of the buffer.
955bd8deadSopenharmony_ci    The first word (index 0) will be the enum name of the instrument
965bd8deadSopenharmony_ci    (BALI_GEOM_TIMER_INSTRUMENT or BALI_RASTER_TIMER_INSTRUMENT).  The
975bd8deadSopenharmony_ci    second word (index 1) of the instrument is the size in words of 
985bd8deadSopenharmony_ci    all the data returned by the instrument, which is six for the 
995bd8deadSopenharmony_ci    instruments defined in this extension.  The fourth word (index 3) 
1005bd8deadSopenharmony_ci    will be the instrument value.  (The preceeding word (index 2) 
1015bd8deadSopenharmony_ci    would be a dummy word.)  In future implementations, a 64-bit value
1025bd8deadSopenharmony_ci    may be used for the instrument value (this will occupy indices 2 
1035bd8deadSopenharmony_ci    and 3) instead of a 32-bit value.  The fifth word (index 4) will be
1045bd8deadSopenharmony_ci    another dummy value. The sixth word (index 5) will contain the marker 
1055bd8deadSopenharmony_ci    passed to StopInstrumentsSGIX or ReadInstrumentsSGIX.  
1065bd8deadSopenharmony_ci    The following is a simple diagram of how this information will be 
1075bd8deadSopenharmony_ci    passed down the pipe. Since the host and the pipe will be communicating 
1085bd8deadSopenharmony_ci    with 64-bits, three 64-bit packets will be sent across the pipe for each 
1095bd8deadSopenharmony_ci    measurement that is made.
1105bd8deadSopenharmony_ci    
1115bd8deadSopenharmony_ci
1125bd8deadSopenharmony_ci            -------------------------------------------------
1135bd8deadSopenharmony_ci            |                       |                       |
1145bd8deadSopenharmony_ci            | [enabled enum name]   |    [size in words]    |
1155bd8deadSopenharmony_ci            |                       |                       |
1165bd8deadSopenharmony_ci            -------------------------------------------------
1175bd8deadSopenharmony_ci
1185bd8deadSopenharmony_ci            -------------------------------------------------
1195bd8deadSopenharmony_ci            |                       |                       |
1205bd8deadSopenharmony_ci            |        [dummy]        |   [instrument value]  |
1215bd8deadSopenharmony_ci            |                       |                       |
1225bd8deadSopenharmony_ci            -------------------------------------------------
1235bd8deadSopenharmony_ci
1245bd8deadSopenharmony_ci            -------------------------------------------------
1255bd8deadSopenharmony_ci            |                       |                       |
1265bd8deadSopenharmony_ci            |       [dummy]         |       [marker]        |
1275bd8deadSopenharmony_ci            |                       |                       |
1285bd8deadSopenharmony_ci            -------------------------------------------------
1295bd8deadSopenharmony_ci
1305bd8deadSopenharmony_ci
1315bd8deadSopenharmony_ciAdditions to Chapter 6 of the 1.2 Specification (State and State Requests)
1325bd8deadSopenharmony_ci
1335bd8deadSopenharmony_ci    XXX    
1345bd8deadSopenharmony_ci
1355bd8deadSopenharmony_ciAdditions to the GLX Specification
1365bd8deadSopenharmony_ci
1375bd8deadSopenharmony_ci    XXX
1385bd8deadSopenharmony_ci
1395bd8deadSopenharmony_ciErrors
1405bd8deadSopenharmony_ci
1415bd8deadSopenharmony_ci    None
1425bd8deadSopenharmony_ci
1435bd8deadSopenharmony_ciNew State
1445bd8deadSopenharmony_ci
1455bd8deadSopenharmony_ci    Initial                       Initial
1465bd8deadSopenharmony_ci    Get Value                   Get Command	Type    Value   Attrib
1475bd8deadSopenharmony_ci    ---------				    -----------	----	-----	------
1485bd8deadSopenharmony_ci    INSTRUMENT_TIME_UNIT_SGIX   GetInteger    Z       0        -
1495bd8deadSopenharmony_ci
1505bd8deadSopenharmony_ciNew Implementation Dependent State
1515bd8deadSopenharmony_ci
1525bd8deadSopenharmony_ci    None
1535bd8deadSopenharmony_ci
1545bd8deadSopenharmony_ci    
1555bd8deadSopenharmony_ci        
1565bd8deadSopenharmony_ci
157