In the previous Cluster Lifecycle Management column, I described the steps your organization should take to develop an HPC cluster design that meets your application needs while providing a positive return on investment. The next step is to use your design as the basis for choosing a vendor, or vendors, that can build the system you need at the best value.
The first step in the vendor selection process is writing down all of the cluster design requirements – both hardware and software – that you derived from the needs assessment. You don’t have to do a full-fledged RFP, but at the very least, the hardware requirements should include number of nodes, CPU type, memory size, local disk space, interconnect type, and storage size. For this phase of development, it’s fine to define these requirements with some acceptable range of values.
Software specifications also have to be included in the requirements document. Preferred operating systems, libraries, compilers and workload managers should be identified. Again, if your application can run on a couple of different operating systems with a variety of schedulers, these options should be written down so your vendor search has some flexibility – a necessity when shopping for the best value.
Once the hardware and software requirements have been outlined, the facilities and IT department should also be contacted to determine how much power, cooling and physical space is available. Sharing the specifications will help them provide some preliminary options for these and can help highlight any IT software or systems constraints.
There are two critical risks this minimizes. Many a cluster deployment has been delayed at the last minute when it was discovered the facility lacked the needed power or air conditioning to run the system. If power and cooling upgrades will be necessary for an HPC cluster, they should be included in the planning process to prevent surprises. Further, if there are any software or network related guidelines (e.g. OS, security, access, etc.), these can also be addressed early in the process. These IT specifications should then be added to the overall requirements. Again, providing flexibility where possible will allow for more options by vendors to help achieve the maximum value.
As the requirements document is being prepared, the organization should also create a formal vendor selection committee comprised of personnel representing all of the stakeholders in the HPC development process. Business operations, end users and the internal IT staff should be involved. For some larger organizations, the IT department is divided into three teams handling storage, network and server operations. All three must participate in the selection committee.
A vendor-neutral outside consultant may also be a welcome addition to the team. Consultants with experience on multiple HPC cluster deployments can usually review the requirements and assist the organization in calculating a workable budget for the overall project, and provide risk-benefit advice on various options. They can also help during final vendor selection by giving thumbs down to unnecessary ‘upsells’ that inevitably creep into many proposals.
The final step before approaching potential vendors is to assess internal delivery capabilities. Treat your IT staff as a vendor and query them to determine how much of the deployment, if any, they can handle. This can save a lot of money. However, from experience, I have found deployments proceed more smoothly when the outside hardware or software vendor is also responsible for installing the clusters and getting them up and running. A single point of accountability is often easier to manage when the schedule is tight.
Internal capabilities must also be examined to decide who will manage and support the cluster once it’s operational. Few traditional IT staffs have experienced HPC professionals onboard. Hiring new personnel may be necessary. Otherwise, some vendors offer management contracts as optional services, which can be upsells well worth considering. These management needs must be addressed in advance.
Finding Potential Vendors
Once the requirements document is complete, it’s ready to send to select vendors. Organizations entirely new to the HPC arena might not know where to start. I recommend asking the existing IT department whether your preferred computer system vendor offers an HPC solution. If so, continuing to do business with a trusted vendor is an excellent option, assuming their solution meets your design.
A second place to look for guidance is the developers or users of your primary applications. They may know which HPC hardware and software systems have run their application successfully. Your application developers may even provide you with references of other clients who are running the software in the HPC environment. Seeking advice by posting questions on relevant LinkedIn groups has emerged as another fast and easy way to find (or avoid) certain potential vendors.
HPC vendors can be loosely divided into three ’tiers’. The first group is comprised of major providers such as Dell, HP and IBM. Specializing in hardware and software, they are well-known providers of large HPC clusters. The next tier includes specialists who provide highly customized HPC systems, such as Cray, SGI, and Aspen. Vendors in either of these groups can offer end-to-end solutions, including hardware, software and deployment services.
The third tier of providers is system integrators with HPC experience such as PCPC Direct or Dasher Technologies. They have well developed channels they will rely on to piece together the right hardware and software components to meet your requirements. They may also be able to handle end-to-end deployment. Aside from their ability to build a highly customized solution, a significant advantage here is their ability to present you with options to compare among their own channel suppliers providing price-competitiveness.
Choose at least three vendors and send your requirements document to each one. Let them know that you are looking for options and are happy to answer any questions or provide clarifications. If the vendor has a good HPC team, very likely, they will come back to you with questions asking for details on why you made certain specifications. Expect an iterative process. Have your entire committee involved at every step. Some of this discussion may take place by phone or online meeting. Take the questions and clarifications from the first round and re-submit a revised document to the vendors.
In the meantime, request and call references furnished by each vendor. Be sure to ask these references how the vendors performed in each phase of the project – procurement, deployment, and post-deployment.
Next, move forward with personal interviews. Invite representatives from the vendors into your facility to meet with the entire selection committee. At this point, the most minute details of the design document should be nailed down. If the committee is confident the vendors have workable solutions, it’s time for them to submit a written price proposal. The committee must review the proposals to ensure that each contains all of the desired HPC cluster components and that comparisons between vendors are apples-to-apples.
The committee should then vote on the vendor that offers the HPC cluster solution that most closely meets your design criteria and provides the best value. And remember, best value is not always the lowest price. The best value takes into account not only the price, but also the speed and quality with which the users can get productive with the applications running on the cluster, the reliability of the system, and the quality of the ongoing support.
And have fun with the process!