Coates is a compute cluster operated by ITaP and is a member of Purdue's Community Cluster Program. ITaP installed Coates on July 21, 2009. At installation, it was the largest entirely 10 Gigabit Ethernet (10GigE) academic cluster in the world. Coates consists of 982 64-bit, 8-core Hewlett-Packard Proliant and 11 64-bit, 16-core Hewlett-Packard Proliant DL585 G5 systems with between 16 GB and 128 GB of memory. All nodes have 10 Gigabit Ethernet interconnects.
Coates is named in honor of Ben Coates, former head of Electrical Engineering and founder of both the Computer Engineering degree program and the Engineering Computer Network (ECN) at Purdue. More information about his life and impact on Purdue is available in an ITaP Biography of Ben Coates.
Coates consists of five logical sub-clusters, each with a different memory/storage configuration as described in the following table. All nodes in the cluster feature 10 Gigabit Ethernet (10GigE).
|Sub-Cluster||Number of Nodes||Processors per Node||Cores per Node||Memory per Node||Interconnect||Disk|
|Coates-A||640||Two 2.5 GHz Quad-Core AMD 2380||8||32 GB||10 GigE||500 GB|
|Coates-B||45||Two 2.5 GHz Quad-Core AMD 2380||8||32 GB||10 GigE||2 TB|
|Coates-C||264||Two 2.5 GHz Quad-Core AMD 2380||8||16 GB||10 GigE||500 GB|
|Coates-D||33||Two 2.5 GHz Quad-Core AMD 2380||8||16 GB||10 GigE||2 TB|
|Coates-E||11||Four 2.5 GHz Quad-Core AMD 8380||16||128 GB||10 GigE||2 TB|
Coates nodes run Red Hat Enterprise Linux 5 (RHEL5) and use Moab Workload Manager 7 and TORQUE Resource Manager 4 as the portable batch system (PBS) for resource and job management. Coates also runs jobs for BoilerGrid whenever processor cores in it would otherwise be idle. The application of operating system patches occurs as security needs dictate. All nodes allow for unlimited stack usage, as well as unlimited core dump size (though disk space and server quotas may still be a limiting factor).
For more information about the TORQUE Resource Manager:
On Coates, ITaP recommends the following set of compiler, math library, and message-passing library for parallel code:
To load the recommended set:
$ module load devel
To verify what you loaded:
$ module list