Let $G(V,E)$ be a undirected graph. I am interested in the fastest known algorithm for counting the number of perfect matchings in $G(V,E)$ (which is known to be in $\#P$). In particular, what is the scaling depending on the number of vertices $|V|$ and edges $|E|$?

Randomized solutions can be found in polynomial time; for bipartite graphs it corresponds to calculation of the permanent (which can be solved by Ryser's formula in $O(2^n n^2)$).

But for general undirected graphs I was not able to find any algorithm or it's scalings. Thank you.