1. A system comprising: a memory in which a plurality of precompiled hardware templates are stored, each of the hardware templates being configured for loading onto a re-configurable logic device to define a data processing operation to be performed by the re-configurable logic device, each of the data processing operations defined by the precompiled hardware templates having an associated performance characteristic; and a processor configured to select a precompiled hardware template from a plurality of the precompiled hardware templates in the memory for loading onto the re-configurable logic device based at least in part on the associated performance characteristics of the data processing operations defined by the precompiled hardware templates.