Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

High performance computing means different things to different people. From a pure programming perspective what I gather is that these are loads of individual machines connected by extremely fast interconnect not necessarily based on usual TCP/IP.

My question is on the interconnect side of things: How do you make interconnects faster without changing your socket based code much?

share|improve this question
Give your machines a bigger pipe, say Fibre Channel? – Robert Harvey Nov 28 '10 at 17:27
up vote 2 down vote accepted

You can use TCP over just about any high-performance network. OpenFabrics (a software stack for RDMA networks like InfiniBand and iWARP) has the "sockets direct protocol". Further, 10 GigE in all its forms was built specifically to provide compatibility with legacy socket code.

So feel free to use TCP on your high-performance network. It won't have the absolute best latency advantages compared to, say, using the underlying verbs. But it should be fast enough for most customers' needs.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.