Generally, you should prefer pre-computed mipmaps (e.g. DDS format) over runtime mipmap generation for the following reasons:
load times are likely to be faster; and
the quality of the mipmaps will be higher and more consistent across different GPUs.
Use compressed texture formats (i.e. PVRTC, ATC, ETC, DXT) where possible. This reduces storage space and improves loading times, as well as saving GPU memory bandwidth, which leads to better performance.
Use texture atlases to minimize OpenGL state changes, which are costly for performance.