Starting Help & Manual command prompt on multiple cores

Please post all questions and comments regarding Help & Manual 7 here.

Moderators: Alexander Halser, Tim Green

Post Reply
User avatar
julio
Posts: 114
Joined: Wed May 28, 2008 12:06 am
Location: Porto Alegre, RS - Brasil
Contact:

Starting Help & Manual command prompt on multiple cores

Unread post by julio » Fri Jan 10, 2020 3:29 pm

Hi,

We are trying to improve our build process for a product that usually takes three hours to build a full product, including compilation, translation, documentation, etc. Currently, our process involves a script that creates command lines for each document we want to create and then starts this command line by calling our Help & Manual (a 7.5.2 build 4720) server. That script waits for this command line to return a 0 (zero) error level and then moves to the next command line.
This process works absolutely fine but, of course, takes approximately one hour for all documents (PDF and CHM versions in a single command line for each document). So we had this idea of creating a way to reduce this time by creating a program that starts those command lines and takes advantage of multiple cores in our servers, so command lines are running in parallel and thus, we hope, decreasing compilation time.
The question is that in our first attempt with this new program, all command lines are created but we receive a lot of warning messages from our Help & Manual server saying that it cannot compile because the .hmxp file is currently in use, even though these command lines use a different project each. We suspect that Help & Manual is not optimized to run in multiple cores, but we want to hear some thoughts on this matter or maybe if someone has already faced that kind of situation.

Thank you,

User avatar
Tim Green
Site Admin
Posts: 21844
Joined: Mon Jun 24, 2002 9:11 am
Location: Bruehl, Germany
Contact:

Re: Starting Help & Manual command prompt on multiple cores

Unread post by Tim Green » Fri Jan 10, 2020 4:26 pm

Hi Julio,

This problem isn't due to multiple core issues because if you run multiple command lines in parallel you are running multiple instances of the program and Windows will automatically assign the processing loads to multiple cores. The issue is due to the license. If you are using a Professional license as an ad hoc build server you can only run one instance at a time. That is an absolute limit for that solution. If you are running the Server version you will only be able to start as many instances as you have server licenses. :?
Regards,
Tim (EC Software Documentation & User Support)

Private support:
Please do not email or PM me with private support requests -- post to the forum directly.

User avatar
julio
Posts: 114
Joined: Wed May 28, 2008 12:06 am
Location: Porto Alegre, RS - Brasil
Contact:

Re: Starting Help & Manual command prompt on multiple cores

Unread post by julio » Fri Jan 10, 2020 6:03 pm

I tried the following scenario and it did not work either:

- A Server with four unused licenses, as in the next figure:
helpman_key_monitor.png

- Started three command lines in parallel but received an error message as the next image for each command line:
helpman_cannot_print.png

Tim Green wrote:
Fri Jan 10, 2020 4:26 pm
Hi Julio,

This problem isn't due to multiple core issues because if you run multiple command lines in parallel you are running multiple instances of the program and Windows will automatically assign the processing loads to multiple cores. The issue is due to the license. If you are using a Professional license as an ad hoc build server you can only run one instance at a time. That is an absolute limit for that solution. If you are running the Server version you will only be able to start as many instances as you have server licenses. :?
You do not have the required permissions to view the files attached to this post.

User avatar
Tim Green
Site Admin
Posts: 21844
Joined: Mon Jun 24, 2002 9:11 am
Location: Bruehl, Germany
Contact:

Re: Starting Help & Manual command prompt on multiple cores

Unread post by Tim Green » Sat Jan 11, 2020 7:57 am

Hi Julio,

Ah, that makes sense. Help+Manual is opening the project exclusively during publishing to make sure that nobody can edit it while publishing is in progress. That will be a show-stopper for you at the moment. I'll see if an additional command line switch can be added in a future version to allow you to disable this at your own risk. 8)
Regards,
Tim (EC Software Documentation & User Support)

Private support:
Please do not email or PM me with private support requests -- post to the forum directly.

User avatar
julio
Posts: 114
Joined: Wed May 28, 2008 12:06 am
Location: Porto Alegre, RS - Brasil
Contact:

Re: Starting Help & Manual command prompt on multiple cores

Unread post by julio » Mon Jan 13, 2020 12:56 pm

OK, now I see what is going on here. But just to make it perfectly clear, that exclusivity also applies to shared skins and repositories, not just projects?

Thank you,
Tim Green wrote:
Sat Jan 11, 2020 7:57 am
Hi Julio,

Ah, that makes sense. Help+Manual is opening the project exclusively during publishing to make sure that nobody can edit it while publishing is in progress. That will be a show-stopper for you at the moment. I'll see if an additional command line switch can be added in a future version to allow you to disable this at your own risk. 8)

User avatar
Tim Green
Site Admin
Posts: 21844
Joined: Mon Jun 24, 2002 9:11 am
Location: Bruehl, Germany
Contact:

Re: Starting Help & Manual command prompt on multiple cores

Unread post by Tim Green » Mon Jan 13, 2020 3:54 pm

Hi Julio,

I've discussed this with the developers: At the moment it's really exclusive, and you won't be able to do multiple publishes of the same project at the same time because it is set to read-only to make absolutely certain that no changes are made during publishing. I didn't ask about assets like skins and repositories but my guess is that it applies there too: Everything you are using for the publish operation is locked down while it is in process to ensure that nothing being used gets changed until publishing is complete.
Regards,
Tim (EC Software Documentation & User Support)

Private support:
Please do not email or PM me with private support requests -- post to the forum directly.

User avatar
Tim Green
Site Admin
Posts: 21844
Joined: Mon Jun 24, 2002 9:11 am
Location: Bruehl, Germany
Contact:

Re: Starting Help & Manual command prompt on multiple cores

Unread post by Tim Green » Mon Jan 13, 2020 6:31 pm

Update: Confirmation, the assets used in the export are locked in exactly the same way as the project itself for the duration of the export to ensure that they can't be changed while the export is in progress. :)
Regards,
Tim (EC Software Documentation & User Support)

Private support:
Please do not email or PM me with private support requests -- post to the forum directly.

User avatar
julio
Posts: 114
Joined: Wed May 28, 2008 12:06 am
Location: Porto Alegre, RS - Brasil
Contact:

Re: Starting Help & Manual command prompt on multiple cores

Unread post by julio » Wed Jan 15, 2020 12:40 pm

OK, thanks for your answers and yes, a command switch to turn it off would be useful because when we start a build, TFS just download all files to a build machine and therefore there is no need to worry about changes to those specific files.
Tim Green wrote:
Mon Jan 13, 2020 6:31 pm
Update: Confirmation, the assets used in the export are locked in exactly the same way as the project itself for the duration of the export to ensure that they can't be changed while the export is in progress. :)

Post Reply