Change in handling of intermediate computation results
Computations of PIAS often involve many steps, however, (paper) space and human attention span are too limited to present each and every intermediate computation sub result. So, only the most prominent results are printed — or listed, or exported, for that matter — and the experience over the past decades has shown that the standard PIAS output collection is adequate for the daily practice. So far, so good.
Yet, from time to time more detailed underlying sub-results are required, either for the insight of the program user / ship designer, or to show the computation’s foundation to others. For this purpose PIAS is equipped with a facility called “the intermediate results”, which simply collects a vast amount of computational sub results into plain text files. This feature is for some decades already available for stability (criteria) assessment, and for probabilistic damage stability.
However, times and habits are changing, and gradually some backsides of the conventional implementation became apparent:
- As mentioned, intermediate results were collected in text files, while the user was expected to find this file and open it with a text editor. Although this procedure induces no fundamental problem, the experience has shown that over the course of the years computer users have become less and less confident in browsing the Windows folder structure, in finding this file, and opening it with a text reading tool.
- Probabilistic damage stability computations may require quite some time. In particular with a detailed ship model, containing hundreds of compartments and thousands of damage cases. Although substantial computation cycles meet no fundamental limitation, their consequence is that mentioned files collection the intermediate results stay open for quite some time. Such as hours or a few day. Still, until so far there is no problem, but unfortunately some computer networks or Windows installation are not able to cope with files open for more than a day. And brutally abort the whole process. Quite annoying, but evaporating from Windows’ dungeons and as such unsolvable. Yet avoidable.
- PIAS simply writes its intermediate results to files, inherently in the order of its computations, For sequential computations the output order will be the same as the computation order, so, in single-processing the order of the final results and the order of the intermediate results are intrinsically synchronized. However, when computations are spread over multiple processes the order of computations is arbitrary. And, hence, is the order of reporting of intermediate results. To put it bluntly: if 20 cores are busy simultaneously processing bits and pieces of computations, all their intermediate results will be mixed up.
For reasons 2 and 3, the computational core of PIAS has been reorganized a bit, so intermediate results are stored internally, without sending it directly to an output file. Only after all computations have finished, the collected results are redirected to some output medium, nicely in the intended order. For reason #1, the file nature and the file location is now irrelevant for the user, while PIAS contains a new function to invoke the Windows editor with all relevant intermediate data, without hassling with files, file types and directories.