Turing:  Optimisation options of the IBM compiler

  • -qnooptimize -qnohot -qnosmp -qstrict or -O0 -qnohot -qnosmp -qstrict: Inhibit all optimisations (the options  -qnohot -qnosmp -qstrict are necessary  because at IDRIS, we are in -O3  which automatically activate several options such as -qhot=level=0)
  • -O2: Weak optimisation (without risk)
  • -O3: Average optimisation (advised, IDRIS default value); risk of modifying the semantics of the program. Example: (2.*3.1)*4.2  can be interpreted as 2.*(3.1*4.2)
  • -O4: Aggressive optimisation + limited IPA (Interprocedural Analysis) consists of doing the optimisation on several routines or on several source files
  • -O5: Equivalent to -O4 + a more profound IPA 
  • -qnostrict/-qstrict:Authorise (or not) the semantic  modifications (-qnostrict by default by using  -O3 except if -qstrict is put explicitly)
  • -qhot: (in -O4 and -O5, by default):  high-order transformations