*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> xieperf (1X)              
Title
Content
Arch
Section
 

xieperf(1X)

Contents


NAME    [Toc]    [Back]

       xieperf - XIE server extension test and demo program

SYNOPSIS    [Toc]    [Back]

       xieperf [-option...]

OPTIONS    [Toc]    [Back]

       xieperf  accepts the options listed below: Specifies which
       display to use.  Normally, xieperf references image  files
       located  in  the directory "images", which xieperf assumes
       is located in your  current  directory.  If  the  "images"
       directory  is  not  in your current directory, or the file
       has been renamed, use this option to specify its location.
       Some  tests  require  the  reception  of  an event such as
       FloNotify to continue,  and  may  cause  xieperf  to  hang
       should  these  events  not be received. This option allows
       the user to specify a timeout value  which,  if  exceeded,
       will  cause  xieperf  to give up waiting for an event, and
       continue on with the next  test  in  sequence.  Should  an
       event  timeout,  a  warning  message  will  be  printed to
       stderr. The default timeout value is 60 seconds.  Runs the
       tests  in  synchronous  mode.  Using this option gives the
       user the ability to run a subset of  the  available  tests
       and  control the number of times the tests are executed on
       an individual basis. This is thought to be especially useful
  for those running xieperf for demonstration purposes.
       Using this option causes xieperf to read  commands  specified
  in  a  script  file, or from stdin if <file> is "-".
       Tests are specified by newline-terminated input  lines  of
       the  form  "command [-reps n ] [ -repeat m ]".  Characters
       following and including "#" are treated as  comments.  See
       the  -mkscript  option.   Repeats  each  test  n times (by
       default each test is run 2 times). This option may be used
       in  script  files  also,  in  which  case  the script file
       -repeat overrides the command line option.  Specifies  how
       long  in  seconds  each test should be run (default 5 seconds).
   Use  a  visual  with  <depth>  planes  per  pixel
       (default  is  the default visual).  Use a GrayScale visual
       (default is the default visual).  Use a PseudoColor visual
       (default  is the default visual).  Use a StaticGray visual
       (default is the default visual).  Use a StaticColor visual
       (default  is  the default visual).  Use a TrueColor visual
       (default is the default visual).  Use a DirectColor visual
       (default  is  the default visual).  If xieperf must be run
       in a window manager environment, use this option  to  make
       xieperf  aware of this.  If specified, xieperf will create
       a window, identical to the size of the  root  window,  and
       all  further  windows created by xieperf will be transient
       popup children of this window. If this option is  omitted,
       xieperf  will  set  the override_redirect attribute of all
       windows to "True" and will also do  evil  things  such  as
       calling XInstallColormap. Using this option will cause the
       window manager to (hopefully) obey window  geometry  hints
       specified  by  xieperf.   Display  a comprehensive list of
       techniques, by category, indicating  which  of  the  techniques
  are supported by the XIE server.  Print test label
       to screen prior to calling any  of  the  test  code.  This
       allows  the  user  to know which test is executing in case
       the test hangs for some reason.  Be verbose  when  running
       event and error tests. Also, can be used to catch and display
 information on any signals received during  execution
       of xieperf. Note that this option is best used in a debugging
 situation, or  to  validate  that  the  error  events
       received by xieperf are valid the first time the tests are
       executed on a new platform.   Run  tests  which  test  for
       event  generation.   Run  tests which test for error event
       generation.  Skip test calibration. This may be used  when
       running  xieperf  in  situations where execution timing is
       not important. Execution times will  not  be  reported  by
       xieperf when this option is enabled. The inner loop repeat
       count, additionally, is set to a value of 5  (but  can  be
       overridden by the -reps option).  Runs all tests. This may
       take a while, depending on the speed of your machine,  and
       its floating point capabilities. This option is ignored if
       a script file is used.  Generate a list of  the  available
       tests  for  the  xieperf program. In x11perf, this list is
       normally displayed in the usage statement. It  was  yanked
       from  the  usage  of  xieperf  because it was too lengthy.
       Generate a script file suitable for use  with  the  script
       option.  If -repeat or -reps are also specified, they will
       be automatically placed at the end of each command in  the
       script.   The  script  is  generated  to  stderr.  See the
       -script command, above.  Most test flos utilize a photomap
       resource  for  a  source.   A  photomap  cache  of up to n
       entries is controlled by xieperf to avoid having  to  constantly
  reload  these  images during test initialization.
       The default cache size is 4. If  a  value  less  than  the
       default  is  specified,  the cache size will be set to the
       default.  Generates just the descriptive labels  for  each
       test specified.  Use -all or -range to specify which tests
       are included. See x11perfcomp(1X) for more details.   Pretend
  we are running xieperf while connected to a DIS-only
       capable implementation of XIE. This will cause xieperf  to
       execute those tests which only use protocol requests found
       in the DIS subset of XIE, and bypass those which  are  not
       DIS  compatible.  If xieperf detects a DIS server, it will
       do this automatically, and this  option  is  ignored.  Use
       -all  or  -range  to  specify  the initial range of tests.
       Runs all the tests starting from the specified name  test1
       until  the name test2, including both the specified tests.
       Some tests, like the event and error tests,  also  require
       the  -errors  or -events options to specified. This option
       is ignored if a script it used.  Fix the inner loop  repetitions
  to  n.  This indicates how many time the photoflo
       will be executed each time the test is run. This option is
       overridden  on  a per-test basis if specified in a script.
       Typically, xieperf determines the  ideal  number  of  reps
       during each test's calibration period.  Test generation of
       events.  Requires  -events  option.   Test  generation  of
       errors.  Requires  -errors  option.  -ColorList Create and
       destroy ColorList resource test.  Create and  destroy  LUT
       resource test.  Create and destroy Photomap resource test.
       Create and destroy ROI resource test.  Create and  destroy
       Photospace test.  Create and destroy Photoflo test.  Query
       Photomap resource test.  Query  ColorList  resource  test.
       Query   techniques  as  specified  by  test  name.   Query
       photoflo test.  PurgeColorList test.  This tests creates a
       photoflo  which is started and blocks for data provided by
       PutClientData(). Instead of sending  the  data,  the  test
       uses  XieAbort()  to stop the photoflo, and then waits for
       PhotofloDone event to be send by the server. If  the  test
       times  out  waiting for the event, a error message is sent
       to stderr.  This test creates a flo of  the  form  ImportClientLUT
  ->  ExportLUT,  and  starts  the flo executing.
       xieperf then forks, and the child process streams the  LUT
       data  to  the  flo  using  PutClientData, while the parent
       blocks in XieAwait.  If  the  flo  successfully  finishes,
       XieAwait  will return and the flo state, after query, will
       indicate that it has completed.  If XieAwait does not complete
  naturally, or after return from XieAwait the flo is
       still active, an error is reported to stderr. Note,  on  a
       really  slow  machine,  it  is possible that XieAwait will
       return before the flo has a  chance  to  finish.  In  this
       case,  use the -timeout option to increase the timeout for
       this test.  ImportClientLUT -> ExportLUT  test.   Flos  of
       the form ImportClientPhoto -> ExportPhotomap using various
       decode  techniques,  for  example,  G32D,  TIFF2,   UncompressedTriple,
  and  so  forth.   ImportClientROI  with 10
       rectangles.  ImportClientROI with 100 rectangles.  Flos of
       the  form  ImportPhotomap  -> ExportPhotomap using various
       encode  techniques,  for  example,  G32D,  TIFF2,   UncompressedTriple,
  and  so forth.  Original encoding is shown
       in left window, image after encoding  is  shown  in  right
       window.   Two  flos,  one  of  the  form ImportPhotomap ->
       ExportClientPhoto, and the other of the form ImportClientPhoto
  ->  ExportPhotomap,  where ExportClientPhoto in the
       first flo uses various  encode  techniques,  for  example,
       G32D,  TIFF2,  UncompressedTriple, and so forth. The image
       before encoding is displayed in the left window, while the
       right  window  shows  the  image  which was encoded in the
       first flo and read back in the second flo.   ExportClientLUT
 test. LUT is displayed in a histogram window.  ExportClientROI
 test, 10 ROIs. The ROIs which are  sent  to  the
       server  are represented by the filled rectangles. The ROIs
       which are received back from the server by the client  are
       drawn as white bordered non-filled rectangles. The resulting
 output illustrates how the server combined the rectangles
  sent  to it.  Same as exportclientroi1, except using
       100 rectangles.  ExportClientHistogram tests using various
       images. The histogram is displayed in a window which overlaps
 the image.  Same as the  ExportClientHistogram  test,
       but using a ROI to identify the area of interest.  Same as
       the ExportClientHistogram test, but using a Control  Plane
       to identify the area of interest.  Test ImportLUT element,
       LUT size is 256.  ImportPhotomap ->  ExportPhotomap,  with
       source  and  destination equal.  ImportPhotomap -> ExportDrawable,
 window destination.  ImportROI -> ExportROI,  10
       rectangles,  source and destination ROIs equal.  ImportROI
       -> ExportROI, 100 rectangles, source and destination  ROIs
       equal.    ImportDrawable   ->  ExportDrawable,  Source  is
       pixmap, destination is window.  ImportDrawable ->  ExportDrawable,
  Source  and destination is window.  ImportDrawable
 -> ExportDrawable,  Destination  window  obscured  by
       source  window.   ImportDrawable -> ExportDrawable, Source
       window obscured by  destination  window.   ImportDrawablePlane
  ->  ExportDrawablePlane,  pixmap, source = destination.
  ImportDrawablePlane -> ExportDrawablePlane, window,
       source  = destination.  ImportDrawablePlane -> ExportDrawablePlane,
 window, source obscures  destination.   ImportDrawablePlane
  -> ExportDrawablePlane, window, destination
       obscures source.  Constrain HardClip technique test, drawable
  destination.   Constrain  ClipScale  technique test,
       drawable destination.  Constrain HardClip technique  test,
       photomap destination.  Constrain ClipScale technique test,
       photomap  destination.   Boxcar  3x3   convolution   test.
       Smoothing or lowpass filter.  Boxcar 5x5 convolution test.
       Smoothing or lowpass filter.   LaPlacian  3x3  convolution
       test.  Edge or highpass filter.  LaPlacian 5x5 convolution
       test. Edge or highpass filter.  LaPlacian 3x3  convolution
       test, with ROI.  LaPlacian 5x5 convolution test, with ROI.
       LaPlacian  3x3  convolution  test,  with  Control   Plane.
       LaPlacian 5x5 convolution test, with Control Plane.  Various
 tests which exercise  the  Math  element,  some  tests
       using  ROIs and control planes.  Arithmetic element tests,
       using  photomaps  as  the  operands.   Arithmetic  element
       tests, photomap and constant operands.  Arithmetic element
       tests, using photomaps as the operands, with ROIs.  Arithmetic
  element tests, photomap and constant operands, with
       ROIs.  Arithmetic element tests, using  photomaps  as  the
       operands,  with Control Planes.  Arithmetic element tests,
       photomap  and  constant  operands,  with  Control  Planes.
       Arithmetic element tests, using photomaps as the operands,
       unconstrained.  Arithmetic  element  tests,  photomap  and
       constant   operands,  unconstrained.   Arithmetic  element
       tests, photomaps as  the  operands,  ROIs,  unconstrained.
       Arithmetic  element tests, photomap and constant operands,
       ROIs, unconstrained.  BandSelect element test. Image input
       is  triple  band.  If  visual of xieperf window is a color
       visual, then three BandSelect elements are used to extract
       the  individual  bands, they are combined once again using
       BandCombine, and displayed using  ConvertToIndex.  If  the
       visual is not color, for example, GrayScale or StaticGray,
       then the flo simply uses one BandSelect element to extract
       a  single band for display.  BandCombine test. Input bands
       are made of three separate single  band  photomaps.  These
       are  combined  using  a BandCombine element, which is followed
 by a  BandExtract  and  ExportDrawable.  CCIR  601-1
       coefficients.   BandExtract  test.  Input is a triple band
       photomap. CCIR 601-1 coefficients. Destination window colormap
  is  gray ramp.  BandExtract test. Input is a triple
       band photomap. CCIR 601-1 coefficients. Destination window
       colormap  is  RGB_BEST_MAP standard colormap.  BandExtract
       test. Input is a triple band photomap. CCIR 601-1  coefficients.
  Destination  window  colormap  is RGB_DEFAULT_MAP
       standard colormap.  Test various  Compare  operators  with
       dyadic  photomap operands.  Test various compare operators
       with photomap, constant operands.   Test  various  Compare
       operators with dyadic photomap operands, using ROIs.  Test
       various  compare   operators   with   photomap,   constant
       operands, using ROIs.  Test various Compare operators with
       dyadic photomap operands, Control  Planes.   Test  various
       compare  operators  with photomap, constant operands, Control
 Planes.  MatchHistogram element tests, using  various
       images  and histogram matching techniques.  A selection of
       MatchHistogram element tests, with ROIs.  A  selection  of
       MatchHistogram   element   tests,   with  Control  Planes.
       ImportPhotomap, Unconstrain, Constrain(ClipScale), ExportDrawable
  test.   PasteUp element tests.  Geometry element
       tests, including rotations, scales, and mirroring.   NearestNeighbor
  technique.  Geometry element tests, including
       rotations, scales, and  mirroring.   AntiAlias  technique.
       Geometry  element  tests, including rotations, scales, and
       mirroring.   BilinearInterpolation  technique.   Tests  to
       exercise  the  various  FAX decoders and the Geometry element.
   Dither  test,  ErrorDiffusion  dither   technique,
       ExportDrawable.   Dither test, ErrorDiffusion dither technique,
  ExportDrawablePlane.   Dither   test,   Ordered(4)
       dither technique, ExportDrawable.  Dither test, Ordered(4)
       dither  technique,  ExportDrawablePlane.    Dither   test,
       Ordered(8) dither technique, ExportDrawable.  Dither test,
       Ordered(8) dither technique, ExportDrawablePlane.   Dither
       test,  Default  dither  technique, ExportDrawable.  Dither
       test, Default dither technique, ExportDrawablePlane.  Logical
  element,  photomap  and a constant of 0 as operands,
       various operators.  Logical  element  tests,  dyadic  photomaps
  as  operands, various operators.  Logical element,
       photomap and constant of 0  operands,  various  operators,
       ROIs.  Logical element, dyadic photomaps as operands, various
  operators,  ROIs.   Logical  element,  photomap  and
       constant of 0 operands, various operators, Control Planes.
       Logical element, dyadic  photomaps  as  operands,  various
       operators,  Control  Planes.   Blend element test. Monadic
       source, 0.1 source constant. Alpha constant of 0.5.  Blend
       element  test.  Dyadic  sources.  Alpha  constant  of 0.5.
       Blend test. Monadic source,  0.1  source  constant.  Alpha
       constant   of  0.5.  ROIs.   Blend  element  test.  Dyadic
       sources. Alpha constant of 0.5.  Uses ROIs.   Blend  test.
       Monadic  source,  0.1  source  constant. Alpha constant of
       0.5. Control Plane.  Blend element test.  Dyadic  sources.
       Alpha  constant  of  0.5.   Control  Plane.   Blend  test.
       Monadic source, 220 source constant. Alpha plane is a photomap.
   Blend test. Dyadic sources. Alpha plane is a constant
 220.  Blend test. Monadic source,  220  source  constant.
  Alpha  plane  photomap.  ROIs.  Blend test. Dyadic
       sources. Alpha plane is a constant 220.  ROIs.  Illustrate
       use  of  point and Standard colormaps for rendering triple
       band images.  These tests are design  to  perform  limited
       exercising  of  XIE's  capability  of dealing with various
       encodings of flo  source  data.  The  test  init  function
       obtains  a  photomap using ICP -> EP. A series of independent
 permanent flo pairs, one of the form IP  ->  EP,  and
       the other of the basic form IP -> ED, are constructed. The
       encoding parameters for the ExportPhotomap (EP) element in
       the  first  flo  are  derived from test configuration. The
       number of flo pairs created is also  dependent  upon  test
       configuration.  The  tests  can  be configured so that the
       test init function will constrain the input photomap to  a
       specified  number  of levels, on a per-band basis, so that
       word-sized and quad-sized pixels are  passed  through  the
       flos. Some tests below take advantage of this. See tests.c
       for test configuration, and hints on how  to  add  similar
       tests.   Simple Point element tests. Drawable destination.
       -pointroi1 Simple Point  element  test  which  uses  ROIs.
       Drawable  destination.   Simple  Point  element test which
       uses a Control Plane. Drawable destination.  Simple  Point
       element  test. Photomap destination.  Simple Point element
       test which uses  a  ROIs.  Photomap  destination.   Simple
       Point  element  test  which uses a Control Plane. Photomap
       destination.  Two flographs are created which are the same
       in structure, expect for the x and y offsets specified for
       the ExportDrawable flo elements.  The test  init  function
       creates  a  photoflo  based upon one of the two flographs.
       The  inner  loop  of  the  test  function  uses   XieRedefinePhotoflo()
 to alternate between each of the flographs.
       Make sure that your ineer loop reps are 2  or  greater  in
       order  to  exercise  this  test  fully  (see -reps).  Test
       XieModifyPhotoflo() by adjust ROI offsets and size.   Test
       XieModifyPhotoflo()  by  changing the LUT input to a Point
       element.  Test XieModifyPhotoflo() by changing ExportDrawable
 x and y offsets.  This test creates a rather long flo
       of arithmetic elements, each which does nothing more  than
       add  1 to a small image. The test init function scales the
       input photomap. The ExportDrawable x and y offset is modified
  randomly  during each iteration of the test function
       inner loop.  This test creates a rather long flo of arithmetic
 elements, each which does nothing more than add 1 to
       a large image.  Each rep, the Geometry and  ExportDrawable
       elements  at  the  end  of  the flo are modified to crop a
       small piece of the input into its appropriate place in the
       larger  image.   These  tests all basically take an UncompressedTriple
 image as input, send  it  to  ConvertFromRGB
       which  converts  the  image to some configured colorspace,
       and then send the converted image on to ConvertToRGB prior
       to  display.  The original image is displayed in the lefthand
 window, and the image which has  passed  through  the
       flo  is  shown  in the righthand window. The goal of these
       test is to show that  ConvertFromRGB  ->  ConvertToRGB  is
       lossless.   ConvertToIndex  test,  TripleBand BandByPixel.
       ConvertToIndex test,  TripleBand  BandByPlane.   The  test
       init function uses a flo containing ConvertToIndex to display
 an image in the left window. The test  function  uses
       this  drawable as input to a flo which does ConvertFromIndex
 -> ConvertToIndex and sends the resulting image to the
       right  window.  The result should be lossless.  A somewhat
       large flo which uses control planes, LUTs, Point, PasteUp,
       Logical,   Constrain,  Dither,  Geometry,  MatchHistogram,
       BandCombine, and BandSelect elements. See  the  Postscript
       file "complex.ps" for a rendition of the photoflo which is
       executed.

DESCRIPTION    [Toc]    [Back]

       The xieperf program is  based  upon  R5  x11perf(1X),  and
       while  not  entirely  comprehensive in its coverage of the
       XIE protocol (see BUGS, below), it is intended to be  useful
  in the evaluation of XIE implementations in the areas
       of protocol adherence and performance. The xieperf program
       includes tests which execute each of the protocol requests
       and photoflo elements specified by revision 5.0 of the XIE
       protocol.  In  addition,  xieperf  provides a set of tests
       which can be used to validate the detection and  transmission
  of  XIE  protocol  request errors, such as FloMatch,
       FloValue, and so forth. Finally, xieperf provides  a  customizable
 demonstration program for XIE.

       A test is made up of three components executed in sequence
       -- an initialization function, a test function, and an end
       function.  The  initialization function is responsible for
       allocating and populating test  resources,  such  as  photomaps
  and LUTs, and for creating a stored photoflo which
       will be executed by the test function. The test  function,
       in  most  cases, simply executes the stored photoflo for a
       specified number of repetitions. The end  function,  which
       is  called  following the test function, is used primarily
       to destroy any non-cacheable server resources used by  the
       test,  and  to free any memory which was dynamically allocated
 by the client. Some tests, such as -modify1, -await,
       -abort, and -redefine, perform additional steps within the
       test function inner loop, as required by the element being
       tested,  or  in  an attempt to make the test more visually
       appealing.

       Evaluating the performance of individual XIE  elements  is
       not  as  simple as measuring Core X drawing times. The XIE
       protocol requires elements to be embedded within photoflos
       in  order  to  be  exercised,   and  the  minimum possible
       photoflo size is two.  This implies that it is  impossible
       to measure performance of a single element in isolation --
       the time it takes to run the flo  depends  on  what  other
       elements exist in the flo.  Extrapolating performance of a
       single element (or technique) in a flo must be done  carefully,
 on a case-by-case basis,  since in general measured
       element performance depends  on  input  image  size,  data
       type,  and  other factors,  all of which can be influenced
       by upstream flo elements.  Note further  that  the  number
       and  type  of  elements  in a flo can be influenced by the
       visuals available on the display,  so even flo-flo comparisons
 on machines with different visuals must be done with
       caution.

       Many test labels contain an abbreviated pipeline  description.
  For instance.  IP/IL/P/ED indicates ImportPhotomap,
       ImportLUT, Point, and ExportDrawable.  Pipelines ending in
       ED  (ExportDrawable) often include hidden elements such as
       BandExtract, ConvertToIndex, Dither, or Point to match the
       flo  output  to the screen visual.  Pipelines ending in EP
       (ExportPhotomap) will result in a blank window.

       xieperf is compatible with x11perfcomp(1X), which is  used
       to  compare  the  outputs of different xieperf and x11perf
       runs in a nice, tabular format. In xieperf you  will  need
       to  use  the -labels option (see OPTIONS, above), and provide
 the  resulting  labels  file  to  x11perfcomp(1X)  to
       obtain  correct  output. See the x11perfcomp(1X) man pages
       for more details on this.

X DEFAULTS    [Toc]    [Back]

       There are no X defaults used by this program.

BUGS    [Toc]    [Back]

       There should be a IMAGES environment variable  to  augment
       the -images option.

       Many  tests  only  scratch  the  surface  of possible test
       cases. Some of the options available for certain flo  elements
  are  either  inadequately  tested, or ignored altogether.
 There are insufficient tests  for  bitonal,  large
       pixel, or triple band tests.

       Some of the test names are inconsistently cased, for example,
 -Abort and -dither1.

       Some tests are hopelessly slow when run  against  machines
       with slow FPUs.

       Bitonal  images  are for the most part displayed using the
       ExportDrawable flo element,  however,  ExportDrawablePlane
       would be a better choice.

SEE ALSO    [Toc]    [Back]

      
      
       X(1X), x11perf(1X), x11perfcomp(1X)

AUTHOR    [Toc]    [Back]

       Syd Logan, AGE Logic, Inc.



                                                      xieperf(1X)
[ Back ]
 Similar pages
Name OS Title
x11perf Tru64 X11 server performance test program
dynaweb IRIX Inso Technology's IRIS InSight Dynaweb Server Extension
try-from Linux test program for the tcp_wrapper
gcov OpenBSD test coverage program
stlicense HP-UX server access control program for X
xhost HP-UX server access control program for X
x11perfcomp Tru64 X11 server performance comparison program
xhost IRIX server access control program for X
xhost Tru64 server access control program for X
rdistd IRIX remote file distribution server program
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service