Described are techniques for controlling performance of a data storage
system. A performance goal specifying a limit for an I/O class is
received. A number of requests of the I/O class to be processed
concurrently to achieve the performance goal so that an observed
performance value for the I/O class does not exceed the performance goal
is determined. If the limit is a upper bound, the observed performance
value falls within a range of one or more values equal to or less than
the limit, and if the limit is a minimum value, the observed performance
value falls within a range of one or more values equal to or greater than
the limit.