* Repurposed -OO so all sim run outputs including S_sie.resource are saved to the specified folder. The files are placed in the sub-dir either RUN_xxx or DP_Product of the specified folder.
* Updated for repurposed -OO.
* Added quoting code markdown for such as in order to show <name> as is.
* Added quoting code for missing items.
* Updated to raise an error when the --read-only-sim flag is used without the -O or -OO. Also made updates to the related document accordingly.
* Fixed the error message to be more clear.
* Possible speedup for requesting sie file #1555
When creating the sie file there is a marker string that Trick searches
for where it writes the run time allocated memory. The loop that was
searching for the string was iterating one character at a time and reading
from file each time. This was slow. Changed the loop to read 1Mb into
memory at a time and search for the string. Handled the case where the
marker string could straddle the 1Mb boundary by copying a small portion
of the previous part of the file for the next search. For my one test
point sie file generation dropped from 90+ seconds to 3.5 seconds.
* Possible speedup for requesting sie file #1555
Math was wrong on some offset values. Fixed them now.
* Possible speedup for requesting sie file #1555
The mac won't allow me to declare a "char buff[1000001];". It compiles
but throws an exception when run. Changed it to "char *buff = new char[1000001];"
* #1086 append runtime allocations when sie is requested instead of initialization
* #1088 change sie error to warning and improve warning message
* #1089 lowercase powertools in centOS 8 config
closes#1086closes#1088closes#1089
std::endl flushes the output stream. The SIE functions were using it
multiple times per variable. This can have significant performance
impacts on file I/O.
In testing, the S_sie.resource file for SIM_parachute was flushed over
14000 times, each resulting in a separate write system call. With this
patch, only ~40 write calls were performed, and writing the file took
~1/3 as long.
For more information, see
https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Rio-endl
Reorganized. Created a new top level include directory that will hold all of Trick's header files. Moved all of the Trick headers to this directory. Created a libexec directory that holds all of the executables that users don't need to execute directly. Changed all of the executables remaining in bin to start with "trick-". In the sim_services directories changed all source files to find the Trick headers in their new location. Since all of the include files are gone in sim_services, removed the src directories as well, moving all of the source files up a level. Moved the makefiles, docs, man, and other architecture independent files into a top level share directory. Renamed lib_${TRICK_HOST_CPU} to lib64 or lib depending on the platform we're currently on.
refs #63