Commit Graph

15 Commits

Author SHA1 Message Date
Alex Lin
02f7203597
Possible speedup for requesting sie file #1555 (#1570)
* 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];"
2023-09-15 07:54:29 -05:00
Jacqueline Deans
d76de7e1ee
Allow for read only S_sie.resource (#1420) 2023-04-17 17:23:48 -05:00
Scott Fennell
939b3002d1
tv dynamic allocations post initialization and test update (#1090)
* #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 #1086
closes #1088
closes #1089
2020-12-15 12:48:21 -06:00
Scott Fennell
f825dc00fc
Merge test branch into master (#1047)
* #1041 filter -W workaround for ICG linking to LLVM 10 libclang-cpp.so (#1044)

* 1043 drg checkpoint memory leak (#1045)

* #1043 drg fix drg checkpoint memory leak

* 947 sie generation rework (#1046)

generate  S_sie.resource at during build instead of runtime
2020-09-01 15:55:19 -05:00
Scott Fennell
2deff169e0 require c++11 for trick_source/sie 2019-10-31 09:51:24 -05:00
Scott Fennell
994c8c0684 create S_sie.json 2019-09-09 10:56:02 -05:00
Derek Bankieris
d135353c90 Infer TRICK_HOME in Makefiles
Closes #358
2019-06-21 13:15:22 -05:00
iamthad
3187dd9012 Replace std::endl with "\n" in SIE (#772)
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
2019-05-13 14:31:46 -05:00
jmpenn
fccf32093b
Explicitly specify void arg for C functions that take no arguments. (#670)
* Clock empty args to void

* command_line func empty args to void

* DataRecord func empty args to void

* debug_pause func empty args to void

* echojobs func empty args to void

* ExternalApplication func empty args to void

* FrameLog func empty args to void

* MasterSlave func empty args to void

* MonteCarlo func empty args to void

* outdllist func proto empty args to void

* sie func empty args to void

* SimTime func empty args to void

* UnitTest func empty args to void

* var_server func empty args to void

* wcs func empty args to void
2018-09-19 11:25:04 -05:00
Derek Bankieris
f161ddb18c Made everything about Trick's build process better 2016-10-06 13:54:06 -05:00
Alex Lin
fcb63e0e06 Output "--" if that was specified in the header file.
Used the mods field in the attributes to indicate of "--" was specified in the header file.  We
still save the units as "1" to keep it compatible with udunits.  When outputting the variable
in data recording or variable server we check to see if the mods field for "--" is set.  We
output "--" if the mods field is set.  Also allowed "--" to persist in data products.

refs #254
2016-06-21 16:12:28 -05:00
Alex Lin
a95e8e086b Use udunits package for units conversions
Copied the units_conv.c from 15 that includes the new units to master.

Swept through the code removing includes to Unit.hh and UCF.h where they
are no longer needed.  Remade makefile dependencies.

refs #231
2016-05-17 09:01:37 -05:00
Alex Lin
19025d77ad Standardize directory names
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
2015-06-09 08:44:42 -05:00
Alex Lin
14a75508a3 Cleaning up once include variables and copyright cleanup.
Changed all header file once include variables to follow the same naming
convention and not start with any underscores.  Also deleted old
incorrect copyright notices.  Also removed $Id: tags from all files.

Fixes #14.  Fixes #22.
2015-03-23 16:03:14 -05:00
Alex Lin
f0c594f841 Initial commit of everything. 2015-02-26 09:02:31 -06:00