Patent ID: 8260925

Claim:
A method for allocating adapters of a client to be migrated to a destination server having one or more VIOS (Virtual Input/Output Server) hosts that can host one or more adapters, comprising: creating a data structure stored in a computer memory comprising: for each adapter and for each VIOS host that can support the adapter, the number of VIOS hosts per adapter, the number of adapters per VIOS host, the number of available slots per VIOS host, and a weight that is equal to the number of adapters per VIOS host minus the number of available slots per VIOS host; and determining by a computer processor from the data structure stored in memory, for an adapter if there is but one VIOS host that can host the adapter, and if so: assigning the adapter to the one VIOS host; reducing by one the possible number of adapters for the one VIOS host; reducing by one the available slots of the one VIOS host; and determining by the computer processor from the data structure stored in memory if a weight value for a particular VIOS host that can host one or more of the adapters is zero or less than zero and if so: assigning all the adapters that can be hosted by that VIOS host to that particular VIOS host; reducing by one, for all of the resolved adapters, the possible number of adapters for any other VIOS host that could also have resolved those adapters; recalculating a weight value for the other VIOS hosts that could have resolved the resolved adapters.