  Over the last decade, implementations of several desingularization algorithms
have appeared in various contexts. These differ as widely in their methods and
in their practical efficiency as they differ in the situations in which they
may be applied. The purpose of this article is to give a brief overview over a
selection of these approaches and the applicability of the respective
implementations in Singular.
