We have described the three-tier architecture employed in commodity computing and also reviewed a number of the commodity technologies that are used in its implementation. We have argued that the resulting separation of concerns among interface, control, and implementation may well make the integration of high-performance capabilities quite natural. We have also sketched a path by with this integration may be achieved. We believe that while=20 significant challenges must be overcome before commodity technologies can guarantee the performance required for computational grids, there is much to be gained from structuring approaches to grid architectures in terms of this framework.