23. dubna 2012 18:06
I'm not an expert with C#, but hacked my way through the Progress Bar example provided in the SDK. I have it updating my job, but I'm curious as to how I can run this from the HPC GUI so it runs concurrently with my job. Right now I have it compiled into an executable and I fire it off as a new job in my HPC GUI. It will go and look at my job that is currently running so I know it works OK, but how do I associate it to the actual job so that I can submit the job and have the progress bar update with the job simultaneously? Is there a way to add this to the cluster so that it runs with every job like a filter? I don't think I can add it as a task since it would have to run either before, or after the task that it is going to be monitoring.
Thank you in advance for your help!
25. dubna 2012 16:10
The main idea behind Progress Bar example is to actually integrate that code into the application, which you are running on your cluster as a job. Same set of APIs can also be accessed from C++ using COM.
Please let me know if you have any questions.
25. dubna 2012 17:04
Thank you for your reply!
Ok, let me be a bit more specific...
I am running HPC server GUI that I use to run jobs in another piece of software. Each job is actually calling out, and launching another piece of software that does the actual solution. I am trying to keep track of the the other application that is running via HPC. Therefore, I can't integrate the code for the progress bar into the application that I am launching via the HPC interface. So my question remains - how do I set this up to run concurrently with the task so that it can keep track of the job?
26. dubna 2012 19:27
If I understand your scenario correctly, you have a 3rd party application for which you separately implemented a monitoring tool and they both need to run together on the same node of the cluster. Please let me know if I misunderstood you.
I think one possible solution will be to run your tool and the application using the same task. It can be accomplished by using Windows 'start' command in your task's command line. For example if you use 'New Single-Task Job' option of the HPC server GUI and create job with the following command line:
start notepad.exe & ping -n 10 localhost
as a result you will get 2 processes started on you computenode - notepad.exe and ping.exe. Important thing here is that command prefixed with 'start' will only run as long as the main command is executed. In this case, after about 10 seconds ping.exe will finish and notepad.exe will also be closed.
I think in your case notepad.exe can be replaced with your monitoring tool and ping with command line reponsible for starting your application.
- Označen jako odpověď onemadscientist 26. dubna 2012 20:26