Routines that Use the Thread Pool

Multithreading does not offer the possibility of increased execution speed for all IDL routines. The operators and routines currently using the thread pool in IDL are listed below, grouped by functional category.

Binary and Unary Operators:

-                   

--                   

+                   

++                   

NOT                   

AND

/

*

EQ

NE

GE

LE

GT

LT

>

<

OR

XOR

^

MOD

#

##

Note
If an operator uses the thread pool, any compound assignment operator based on that operator (+=, *=, etc.) also uses the thread pool.

Mathematical Routines:

  • ABS          
  • ERRORF       
  • MATRIX_MULTIPLY
  • ACOS
  • EXP
  • PRODUCT
  • ALOG
  • EXPINT
  • ROUND
  • ALOG10
  • FINITE
  • SIN
  • ASIN
  • FLOOR
  • SINH
  • ATAN
  • GAMMA
  • SQRT
  • CEIL
  • GAUSSINT
  • TAN
  • CONJ
  • IMAGINARY
  • TANH
  • COS
  • ISHFT
  • VOIGT
  • COSH
  • LNGAMMA

Image Processing Routines:

  • BYTSCL           
  • INTERPOLATE
  • CONVOL
  • POLY_2D
  • FFT
  • TVSCL

Array Creation Routines:

  • BINDGEN             
  • LINDGEN
  • BYTARR
  • L64INDGEN
  • CINDGEN
  • MAKE_ARRAY
  • DCINDGEN
  • REPLICATE
  • DCOMPLEXARR
  • UINDGEN
  • DINDGEN
  • ULINDGEN
  • FINDGEN
  • UL64INDGEN
  • INDGEN

Non-string Data Type Conversion Routines:

  • BYTE               
  • LONG
  • COMPLEX
  • LONG64
  • DCOMPLEX
  • UINT
  • DOUBLE
  • ULONG
  • FIX
  • ULONG64
  • FLOAT

Array Manipulation Routines:

  • MAX                
  • TOTAL
  • MIN
  • WHERE
  • REPLICATE_INPLACE

Programming and IDL Control Routines:

  • BYTEORDER
  • LOGICAL_OR
  • LOGICAL_AND
  • LOGICAL_TRUE