none
Microsoft HPC 2016 and C++

    Question

  • I have a C++ application that submits jobs to HPC. This app has been working for years and currently works with HPC 2008 and HPC 2016. We are trying to create a version of it that is compatible with HPC 2016 but it doesn't work. It can't find the assemblies that normally would be installed in the GAC directory, because they don't seem to be installed there any more with 2016. I also can't find an HPC 2016 SDK.

    Does HPC 2016 still support C++ programs to submit jobs? Or is this problem going to be solved in Update 1?  If so, when will Update 1 be coming out?  Our clients are asking us for HPC 2016 and we'd really like to be able to tell them when we can do this.

    Tuesday, September 26, 2017 2:50 PM

All replies

  • Hi,

      If you read the HPC Pack 2016 known issues, the backward compatibility is broken. And this will be solved in the upcoming release Update 1 which targeted this Nov. And before that we will have a preview with a new SDK (in a week or so, I'll have a post here) and you shall check that whether it still breaks your C++ application so that we can have time to fix.

      HPC Pack 2016 SDK now becomes Nuget, you shall check the Nuget instead of SDK any more in future.

      And please be noted that from HPC Pack 2016, we don't put assembly to GAC any more. And how your C++ application integrates with our API? Using COM interface, or interop with C# API? Both shall be supported.


    Qiufang Shi

    Wednesday, September 27, 2017 2:27 AM
  • Thank you very much!  I actually was mistaken.  Our application is written in C#.  Should that work now or do we have to wait for Update 1?  If the assemblies aren't in the GAC, does our application need to link with them somehow?
    Thursday, September 28, 2017 2:18 PM
  • You still need update 1, or the preview SDK.

    When there is assembly in GAC,  your application doesn't need to bring the assembly  but you still need reference to them during your development from the SDK. But now you need to include the assembly in your application folder, that shall be all. And this makes it all possible for side-by-side installation of your application as you can have different versions.


    Qiufang Shi

    Friday, September 29, 2017 12:30 AM
  • Thank you.
    Friday, September 29, 2017 2:56 PM
  • As you mentioned "But now you need to include the assembly in your application folder", is there distributable package available? From Nuget, there are lots of unrelated dlls. I am only able to see which dll is missing when I try to register service or when client sends request. Also if there is license file so I can download? Thanks.
    Wednesday, September 26, 2018 5:24 PM
  • Hi, you can redistribute the HPC Package, the license file is available here for download: https://www.microsoft.com/en-us/download/details.aspx?id=43972

    Basically all the dependencies are needed. When you refer to our sdk, all the dependencies will be included and you shall package them with your application and it shall just work.

    Otherwise, you can put your application under %CCP_HOME%BIN on a client where HPC Pack client installed.


    Qiufang Shi

    Thursday, September 27, 2018 8:22 AM