1. A computer system adapted to determine an optimal hardware system: environment for a given set of workloads comprising: a memory within which is resident a specification which defines the functionality of each workload and a plurality of resource demands for each workload; at least one processor configured to execute a plurality of threads; and program code executed by the at least one processor to define the functional specification, a plurality of hardware resource demands, and a plurality of performance objectives for each workload; divide each workload into one or more functional logical partitions (FLPARS), each FLPAR having the plurality of software and hardware demands determined by its associated workload; define a physical specification for the one or more FLPARS, the physical specification comprising one of high level software and hardware system restrictions and a predefined pool of hardware components; configure a first potential hardware system environment comprising a group of hardware components selected from a predefined pool of hardware components, where each hardware component is able to provide a plurality of resource capacities, and the overall first potential hardware system environment is able to provide specific resource capacities that at least satisfy the specific resource demands of the given set of workloads; partition the first potential hardware system environment into a plurality of virtual machine nodes where each of the virtual machine nodes corresponds to one of the FLPARS; assign a plurality of priority weight factors, where each priority weight factor is assigned to a specific resource demand of a specific FLPAR; compute a weighted sum of squares metric for the first potential hardware system environment, the sum is computed from a specific resource demand of a specific logical partition, the specific resource capacity of the corresponding virtual machine, and the individual priority weight factor assigned to the specific resource demand of the specific logical partition; configure additional potential hardware system environments by selecting hardware components selected from the predefined pool of hardware components; partition each of the additional potential hardware system environments into a corresponding plurality of virtual machines; compute additional weighted sum of squares metrics, where each additional metric corresponds to one of the additional potential hardware system environments; and determine an optimal hardware system environment based on a weighted sum of squares metric for the first potential hardware system environment and the additional weighted sum of squares metrics.