  The Cycle Packing problem asks whether a given undirected graph $G=(V,E)$
contains $k$ vertex-disjoint cycles. Since the publication of the classic
Erd\H{o}s-P\'osa theorem in 1965, this problem received significant scientific
attention in the fields of Graph Theory and Algorithm Design. In particular,
this problem is one of the first problems studied in the framework of
Parameterized Complexity. The non-uniform fixed-parameter tractability of Cycle
Packing follows from the Robertson-Seymour theorem, a fact already observed by
Fellows and Langston in the 1980s. In 1994, Bodlaender showed that Cycle
Packing can be solved in time $2^{\mathcal{O}(k^2)}\cdot |V|$ using exponential
space. In case a solution exists, Bodlaender's algorithm also outputs a
solution (in the same time). It has later become common knowledge that Cycle
Packing admits a $2^{\mathcal{O}(k\log^2k)}\cdot |V|$-time (deterministic)
algorithm using exponential space, which is a consequence of the
Erd\H{o}s-P\'osa theorem. Nowadays, the design of this algorithm is given as an
exercise in textbooks on Parameterized Complexity. Yet, no algorithm that runs
in time $2^{o(k\log^2k)}\cdot |V|^{\mathcal{O}(1)}$, beating the bound
$2^{\mathcal{O}(k\log^2k)}\cdot |V|^{\mathcal{O}(1)}$, has been found. In light
of this, it seems natural to ask whether the $2^{\mathcal{O}(k\log^2k)}\cdot
|V|^{\mathcal{O}(1)}$ bound is essentially optimal. In this paper, we answer
this question negatively by developing a
$2^{\mathcal{O}(\frac{k\log^2k}{\log\log k})}\cdot |V|$-time (deterministic)
algorithm for Cycle Packing. In case a solution exists, our algorithm also
outputs a solution (in the same time). Moreover, apart from beating the bound
$2^{\mathcal{O}(k\log^2k)}\cdot |V|^{\mathcal{O}(1)}$, our algorithm runs in
time linear in $|V|$, and its space complexity is polynomial in the input size.
