Is it "often known" how to compute a list of groups?

The algorithms of Eick and O'Brien for computing a complete list of groups of a given order are not general algorithms, because they make use of known (i.e. pre-computed) properties of the finite simple groups. But these known properties are known for simple groups of much larger order than it is remotely feasible to find a complete list of groups of that order, and that is likely to remain the case. Interestingly, for prime powers $p^n$, which is the most difficult case, the algorithm in question is general purpose. It would be meaningful to ask whether there is an algorithm for doing this that is polynomial in the output length - I don't the answer to that!

Concerning testing groups of order $n$ for isomorphism, there is no known algorithm for doing this that is polynomial in $n$, so if you have found such an algorithm then you could certainly publish it in a good journal. It probably doesn't make much difference how the groups are given, since you can move between permutation or matrix representations and finite presentations in time polynomial in $n$. It is easy to test for isomorphism in time $O(n^{{\rm log}\, n})$ (find a generating set of size $O({\rm log}\, n)$ and test every possible set of generator images for inducing an isomorphism) and no essentially better method is known.

Of course the implemented algorithms use lots of tricks. One published paper on this topic is:

J. Cannon and D.F. Holt. Automorphism group computation and isomorphism testing in finite groups. J. Symbolic Computation 35, 241-267 (2003).


Of course it's theoretically possible to "compute a list of groups" in any given order, if time and memory aren't limited. Just enumerate over all possible multiplication tables, or over subsets of a sufficiently large permutation group. What you're really asking about, I suppose, is how to do this efficiently, and as far as I know this is a hard problem even for relatively modest values of $n$, the required size of the group.

Computer packages such as GAP are pretty good at knowing or computing such lists, and there are papers by the folks who wrote them that detail the algorithms they've used. You can find a few references in this closed MO question (closed because the question is ill-defined).

What are you actually trying to achieve? Do you really have any use for the complete list of groups of order 1024, for example? There's over 49 billion of them.