  The Burrows Wheeler transform has applications in data compression as well as
full text indexing. Despite its important applications and various existing
algorithmic approaches the construction of the transform for large data sets is
still challenging. In this paper we present a new semi external memory
algorithm for constructing the Burrows Wheeler transform. It is capable of
constructing the transform for an input text of length $n$ over a finite
alphabet in time $O(n\log^2\log n)$ on average, if sufficient internal memory
is available to hold a fixed fraction of the input text. In the worst case the
run-time is $O(n\log n \log\log n)$. The amount of space used by the algorithm
in external memory is $O(n)$ bits. Based on the serial version we also present
a shared memory parallel algorithm running in time
$O(\frac{n}{p}\max\{\log^2\log n+\log p\})$ on average when $p$ processors are
available.
