Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / cloud

Submitting an HPC job from on-premise - Part 2 of 2

5.00/5 (2 votes)
16 Jun 2012CPOL1 min read 10K  
How to submit a HPC job from on-premise.

Continuing with myprevious article, today I am going to share my one more experience with HPC. Nowadays, there are lots of links available on net, which tell, how to submit a job to Azure HPC Scheduler. I also explored most of them, and found that almost all are talking about job submission from cloud premise(Front or Head node). But nowhere was it mentioned how to submit a job from outside of cloud vicinity. I came across this issue, while working on one of my assignments.

After hitting my head, finally I found a way to do this. When we are talking about interaction between cloud and on-premise, then first thing come into our mind is network. Here definitely, TCP won’t work. There are few transport schemes available in Azure HPC framework. After exploring them, I found one as WebAPI and wow, that suits my requirement. I just used WebAPI as transport scheme, by modifying the name of the headnode to complete host name (i.e., <headNodeName>.cloudapp.net) and get my issue resolved. Sample code is as:

C#
string headNodeName = "myhpchost.cloudapp.net";
 
//Create a session
SessionStartInfo info=new SessionStartInfo(headNodeName, serviceName); 
 
// Assign TransportScheme to the session created above
info.TransportScheme=TransportScheme.WebAPI; 

Note: If everything (service name, head node, etc...) is configured properly, even then you are getting exception like, ‘Fail to get the cluster name’. Then just redeploy the HPC scheduler package and try it again. I know, this is painful but this is the only solution, I came across. And believe me, this was just clicked for me.

Hope it will be helpful, for those who get stuck with a similar kind of issue. 

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)