Surge is available under a liberal open-source License (Apache 2.0) on GitHub at as well as from . The system can be built with the standard Unix Configure/Make scheme and the resulting stand-alone executable is then run from the command line. By default, surge generates all constitutional isomers of a given molecular formula. Surge can write output in either SDfile or SMILES format. SMILES output is produced very efficiently by constructing a template for each simple graph at the first stage, so that only atom types and bond multiplicity must be filled in before output. We benchmarked surge with the set of molecular formulae given in Table . Since our motivation for developing structure generators is for the generation of large molecules, Table consists of natural products, randomly selected from the natural products database COCONUT . For the list of molecular formulae, surge outperformed MOLGEN by orders of magnitude (Figure ) and MOLGEN terminated at a built-in limit of 2 31 -1 structures. Reported computation times were linearly extrapolated based on the MOLGEN timing for 2 31 -1 structures and the actual number of isomers reported by surge. Note that surge generates between 7 million and 22 million molecules per second for all of these examples.