Patent ID: 7490180

Claim:
A method in a data processing system for dynamically selecting software buffers for aggregation in order to optimize system performance, wherein said data processing system comprises a processor and an I/O subsystem and wherein said I/O subsystem comprises I/O adapters and I/O slots, said method comprising: assigning a threshold for each possible combination of I/O adapter speed and width of I/O slot; receiving data, which is stored in a chain of software buffers, to be transferred to a particular I/O adapter that resides in a particular I/O slot; determining a speed of said particular I/O adapter and a width of said particular I/O slot; determining a particular threshold assigned for a combination of said speed of said particular I/O adapter and said width of said particular I/O slot; determining current characteristics of said system; and using said particular threshold to dynamically select software buffers of said chain of software buffers to aggregate to maximize performance of said system while said data is being transferred.