Windows Race Conditions Issues #184
-
Hello! I am fairly new to Dakota and was looking to work with a centered parameters study using the Cantilever example that has been provided with the standard windows install. Here is my interface code:
I am having an issue almost identical to the one discussed here, in which using the "system" keyword (since Windows cannot handle "fork") seems to have the process check only when results.out files are created, often trying to delete or read from them before Dakota is done with them. This happens when running with the exact interface above. As described in the linked discussion, using directory_save does fix this, but is not ideal. It does work without directory_save when limiting evaluation_concurrency to 1 (or just removing the keyword entirely, which I believe functions the same), but this blocks all of the work, making even trivial simulations exceptionally slow. The reason I am bumping the topic is that I will not have the ability to delete workdir files to keep up with the pace of the simulations run by other users, so I likely will not be able to use directory_save for real projects. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
It's not generally accurate to say that Windows can't use the 'fork' interface. I unfortunately can't give good guidance about when it works and when it doesn't because it seems to change with Windows version and we've never made an effort to sort it all out. It was at least once true that .bat scripts could not be executed using the fork interface, but I believe I've seen that work on recent versions of Windows. I expect that using powershell as you are here would work with fork. It's definitely worth a shot if you haven't tried it. |
Beta Was this translation helpful? Give feedback.
It's not generally accurate to say that Windows can't use the 'fork' interface. I unfortunately can't give good guidance about when it works and when it doesn't because it seems to change with Windows version and we've never made an effort to sort it all out. It was at least once true that .bat scripts could not be executed using the fork interface, but I believe I've seen that work on recent versions of Windows.
I expect that using powershell as you are here would work with fork. It's definitely worth a shot if you haven't tried it.