The first premise of this talk is that for maximum usability (including portability), a library of generic software components should be standardized--there can be many different implementations of the library, but every implementation must adhere to a given set of requirements. The recently finalized ANSI/ISO C++ standard is an example. A second premise is that there must be some form of requirements on performance. How should they be expressed? Compared to traditional analysis of concrete algorithms, performance analysis of generic algorithms must be done more abstractly to encompass the range of possible algorithm specializations. But for greatest range of use and most accurate algorithm selection, performance must be characterized more precisely than is possible with O notation. This is an open problem, but looking at it from the standpoint of generic program library standardization may provide new insights and tools to help solve it. Several small examples of performance requirement specification and algorithm design are presented as background to the problem.