summaryrefslogtreecommitdiff
path: root/docs/users_guide/using-optimisation.rst
diff options
context:
space:
mode:
authorBen Gamari <bgamari.foss@gmail.com>2018-06-02 11:56:58 -0400
committerBen Gamari <ben@smart-cactus.org>2018-06-02 16:21:12 -0400
commitfaee23bb69ca813296da484bc177f4480bcaee9f (patch)
tree28e1c99f0de9d505c1df81ae7459839f5db4121c /docs/users_guide/using-optimisation.rst
parent13a86606e51400bc2a81a0e04cfbb94ada5d2620 (diff)
downloadhaskell-faee23bb69ca813296da484bc177f4480bcaee9f.tar.gz
vectorise: Put it out of its misery
Poor DPH and its vectoriser have long been languishing; sadly it seems there is little chance that the effort will be rekindled. Every few years we discuss what to do with this mass of code and at least once we have agreed that it should be archived on a branch and removed from `master`. Here we do just that, eliminating heaps of dead code in the process. Here we drop the ParallelArrays extension, the vectoriser, and the `vector` and `primitive` submodules. Test Plan: Validate Reviewers: simonpj, simonmar, hvr, goldfire, alanz Reviewed By: simonmar Subscribers: goldfire, rwbarton, thomie, mpickering, carter Differential Revision: https://phabricator.haskell.org/D4761
Diffstat (limited to 'docs/users_guide/using-optimisation.rst')
-rw-r--r--docs/users_guide/using-optimisation.rst52
1 files changed, 0 insertions, 52 deletions
diff --git a/docs/users_guide/using-optimisation.rst b/docs/users_guide/using-optimisation.rst
index 59edcdc320..da066e158c 100644
--- a/docs/users_guide/using-optimisation.rst
+++ b/docs/users_guide/using-optimisation.rst
@@ -88,20 +88,6 @@ So, for example, ``ghc -c Foo.hs``
runtime or space *worse* if you're unlucky. They are normally turned
on or off individually.
-.. ghc-flag:: -Odph
- :shortdesc: Enable level 2 optimisations, set
- ``-fmax-simplifier-iterations=20``
- and ``-fsimplifier-phases=3``.
- :type: dynamic
- :category: optimization-levels
-
- .. index::
- single: optimise; DPH
-
- Enables all ``-O2`` optimisation, sets
- ``-fmax-simplifier-iterations=20`` and ``-fsimplifier-phases=3``.
- Designed for use with :ref:`Data Parallel Haskell (DPH) <dph>`.
-
We don't use a ``-O*`` flag for day-to-day work. We use ``-O`` to get
respectable speed; e.g., when we want to measure something. When we want
to go for broke, we tend to use ``-O2`` (and we go for lots of coffee
@@ -1147,41 +1133,3 @@ by saying ``-fno-wombat``.
if a function definition will be inlined *at a call site*. The other option
determines if a function definition will be kept around at all for
potential inlining.
-
-.. ghc-flag:: -fvectorisation-avoidance
- :shortdesc: Enable vectorisation avoidance. Always enabled by default.
- :type: dynamic
- :reverse: -fno-vectorisation-avoidance
- :category:
-
- :default: on
-
- .. index::
- single: -fvectorisation-avoidance
-
- Part of :ref:`Data Parallel Haskell (DPH) <dph>`.
-
- Enable the *vectorisation* avoidance optimisation.
- This optimisation only works when used in combination with the
- ``-fvectorise`` transformation.
-
- While vectorisation of code using DPH is often a big win, it can
- also produce worse results for some kinds of code. This optimisation
- modifies the vectorisation transformation to try to determine if a
- function would be better of unvectorised and if so, do just that.
-
-.. ghc-flag:: -fvectorise
- :shortdesc: Enable vectorisation of nested data parallelism
- :type: dynamic
- :reverse: -fno-vectorise
- :category:
-
- :default: off
-
- Part of :ref:`Data Parallel Haskell (DPH) <dph>`.
-
- Enable the *vectorisation* optimisation
- transformation. This optimisation transforms the nested data
- parallelism code of programs using DPH into flat data parallelism.
- Flat data parallel programs should have better load balancing,
- enable SIMD parallelism and friendlier cache behaviour.