Commit Graph

416 Commits

Author SHA1 Message Date
Jacqueline Deans
5ff52a01c5
Add option to terminate sim on python event error (#1434) 2023-01-20 15:46:10 -06:00
Jacqueline Deans
77fa8d78b0
Time tic precision fix and test (#1428) 2023-01-16 08:29:41 -06:00
Jacqueline Deans
86b0bc9d39
Fix undefined behavior in vs_format_ascii (#1409) 2022-11-29 16:29:54 -06:00
jmpenn
2a03ff5cf4
Replace sprintf with snprintf in all of Trick source. #1384 (#1392)
* Replace sprintf with snprintf in all of Trick source. #1384

* Don't add -Werror for MacOS because of deprecated sprintf warnings which we cant get rid of because SWIG. #1384

* Fixed an unbalanced parenthesis in S_overrides.mk. #1384
2022-11-15 15:00:05 -06:00
Jacqueline Deans
9d305fec09
Add a way to disable sim objects (#1364)
* Add set_sim_object_jobs_onoff, get_sim_object_on_off, and change set_sim_object_onoff to preserve the on/off status of jobs
2022-11-15 09:16:08 -06:00
Isaac Rowe
4cd6da34d8
Ensure MC slaves are set to ready after timeouts (#1370)
Co-authored-by: Isaac Rowe <isaac.s.rowe@nasa.gov>
2022-11-07 15:32:53 -06:00
Jacqueline Deans
1cf4ef58ad
Stop attaching a debugger on segfault on Mac (#1383) 2022-11-07 15:27:00 -06:00
Scott Fennell
d0511e8fb9
1372 use temporary job pointer instead of modifying curr_job in exec_set_time_tic_value
* add integration test sim SIM_exec_set_time_tic_value
* use temporary job pointer instead of modifying curr_job in exec_set_time_tic_value
closes #1372
2022-10-28 17:19:54 -05:00
Jacqueline Deans
900f7b18be
Generate test coverage and use Coveralls for tracking and visualization (#1366)
* Add code-coverage make target and github actions workflow
* Upload coverage to coveralls
* Add coverage badge to readme
* Fix some test makefiles to correctly propagate flags
2022-10-13 14:23:16 -05:00
Jacqueline Deans
2519c914a5
Pair checkpointing fix (#1356)
* Fix pair checkpointing bug, add tests
* Documentation update
2022-10-07 17:00:09 -05:00
Jacqueline Deans
3d2e8e52ca
Set checkpointing fix (#1357)
* Fix set checkpointing, add tests
* Documentation update
2022-10-07 14:24:21 -05:00
Jacqueline Deans
f19ba7df78
Test and Document STL Checkpointing (#1355)
* Updates SIM_stl to include checkpoint writing and checkpoint restore, as well as adding more data structures to test
* Thoroughly tests supported STL types with MM_stl_checkpoint and MM_stl_restore
* Adds an option to enable or disable STL restore in accessible interfaces and changes default to true
* Updates documentation on STL checkpointing to clearly state limitations and known bugs
2022-10-07 08:37:09 -05:00
John M. Penn
8eea9e9ab9 Make MemoryManager::reset_memory and class destructors coordinate the deletion of objects. #1348 2022-09-26 16:54:41 -05:00
Thomas Brain
e476f1fa9b Destructor restart fixes 2022-09-01 09:37:15 -05:00
Thomas Brain
32c409e139 Fix clearing arrays of strings 2022-08-24 16:59:13 -05:00
Thomas Brain
8132c00165 Fix issue with writing to an array of std::strings. Use sizeof(std::string) instead of sizeof(char *). 2022-08-24 09:53:57 -05:00
Jacqueline Deans
9c8799610f
Variable Server - var_send_once and integration test (#1330)
* Adds the send_once command and message type, which allows a user to request a variable to be sent immediately and only once (intended to replace the var_add, var_send, var_clear idiom that is commonly used for this purpose)
* Minor refactoring of variable server internals to reduce repeated code
* Adds SIM_test_varserv to integration test to test basic variable server functionality
* Changes graphics client for SIM_billiards to use var_send_once as an example of intended use
* Add documentation for var_send_once in docs and tutorial
* Set exit_code_enabled in trick unit tests to be true by default
* Patch for failing bookworm build
2022-08-18 10:47:07 -05:00
Scott Fennell
c390ca5ba6
replace GTEST_HAS_TR1_TUPLE with -std=c++11 (#1331) 2022-08-11 15:10:29 -05:00
Jacqueline Deans
77dae99fc8
Race condition patch (#1329)
* Add patch for an uncommon bug where some data recording threads hang forever
2022-08-10 13:10:18 -05:00
John M. Penn
58cbf24d5a Remove 2 arg delete_var unit test case. #1301 2022-07-28 16:43:26 -05:00
John M. Penn
d94d5fc863 Remove destroy flag from MemoryManager::delete_var(). #1301 2022-07-28 15:00:55 -05:00
Derek Bankieris
8fcd83e5e1 Omit cv_convert_double for trivial conversions
Refs #982
2022-07-08 12:32:43 -05:00
Alex Lin
afa71dbec9
JIT Compilation Fails on MacOS #1262 (#1263)
Adding compiler flag for mac to allow undefined symbols in shared library
closes #1262
2022-06-01 13:57:32 -05:00
Scott Fennell
878b895588 #1260 change get_user_tag_ref to const because its the right thing to do 2022-05-17 12:08:13 -05:00
Scott Fennell
3bece7f73e
#1260 access c_str of reference not temporary value for var_server_get_user_tag (#1264)
closes #1260
2022-05-17 11:42:08 -05:00
Scott Fennell
0d60ef0b6f
iss #1219 #1223 #1224 reference ignored in name from address (#1222)
* #1219 added code to check reference mod bit in ClassicCheckPointAgent::getCompositeSubReference, use reference width instead of size.

* #1219 refactor getCompositeSubReference for readability

* #1219 and #1223 add reference width to mod bits in ICG

* check for mod bits in TRICK_STRUCTURED section, refactor function

* #1219 adding MM_ref_name_from_address tests

* #1224 fix logic for offset into arrayed struct

closes #1219 closes #1223 closes #1224 

Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>
2022-02-08 09:59:26 -06:00
Scott Fennell
d6d7301d77
#1215 add a warning when var_set can't find ref_attribute for variable name (variable doesn't exist) (#1216)
Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>
closes #1215
2022-01-18 11:40:59 -06:00
Scott Fennell
087c98ce01
1191 monte exit code (#1196)
* #1191 refactor monte exit_string_status and fix char*[] array values

closes #1191
2021-10-18 16:08:47 -05:00
Derek Bankieris
40ef4acfe3 Always requeue timed-out MonteCarlo runs
Closes #1192
2021-10-07 10:27:08 -05:00
Scott Fennell
82c55d405d
Merge master into branch to fix web server tests (#1185)
* suppress warning for detached head during civitweb clone

closes #1180

* disable sigchld handler by default #931 (#1182)

* disable sigchld handler by default #931

* update test to set sigchld trap before testing

closes #931

* Fixed webserver http_alloc test (#1184)

Co-authored-by: cherpin00 <44306236+cherpin00@users.noreply.github.com>
2021-08-28 16:20:34 -05:00
Penn, John M 047828115
e487e5609f Initial excision of DMTCP from Trick. #28 2021-08-27 19:38:56 -05:00
Penn, John M 047828115
db45886625 Clock spin test can't assume code performance on an arbitrary machine. #87 2021-08-04 10:51:52 -05:00
Penn, John M 047828115
0825b32118 Up the allowance for time difference in GetTimeOfDayClock_test spin test. #87 2021-08-02 12:25:31 -05:00
Penn, John M 047828115
93b683540d Fix GetTimeOfDayClock_test for race condition. #87 2021-08-02 11:49:39 -05:00
Penn, John M 047828115
6df675c7ee Remove deprecated Clocks and unit tests, and update Trick::Clock documentation. #87 2021-08-02 00:40:55 -05:00
Scott Fennell
acdc60050c
change c_intf ref_attributes param to const char ptr, remove casts from calls to function in trick (#1135)
closes #1129 

Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>
2021-05-26 22:12:02 -05:00
Derek Bankieris
8d314fa1b1 Zip SWIG-generated python modules
Closes #1144
2021-05-19 17:23:33 -05:00
Scott Fennell
d75faecff8
add missing lock/unlock on pthread map mutex to VariableServer::shutdown fixes #1133 (#1134)
closes #1133
2021-04-26 23:28:26 -05:00
Scott Fennell
6356a87b9f
Update DataRecordGroup.cpp (#1124) 2021-04-09 07:57:16 -05:00
Fennell, Scott P 263712616
35014fc69f fix mm delete var bug #1093 2021-04-06 19:12:18 -05:00
Scott Fennell
f439d95775
Void ptr external application (#1121)
* #1119 allocate using memory manager

* #1119 replace void* vector with char* vector in external application

Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>
2021-03-25 13:17:21 -05:00
Scott Fennell
6691b14e9e
1093 c str (#1119)
* update checkpoint_map.hh #1093

* #1093 update checkpoint_pair.hh

* #1093 update checkpoint_queue.hh

* #1093 update MM_write_checkpoint.cc

* #1093 update units_attach.i

* #1093 update checkpoint_sequence_stl.hh

* #1093 update checkpoint_stack.hh

* #1093 update swig_extend_str.i

* #1093 update swig_int_templates.hh

* #1093 update checkpoint_stack.hh and swig_int_typemap.i

* #1093 fix c_str issue without adding memory leaks

* #1093 fix c_str issue without adding memory leaks

* #1093 remove dangling pointers in injector sim object (without causing memory leaks)

* #1093 remove dangling pointers in injector sim object (without causing memory leaks)

* #1093 remove dangling pointers in Event Manaager sim object (without causing memory leaks)

* #1093 fix MonteCarlo_c_intf dangling pointers

Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>

closes #1093
2021-03-12 13:23:35 -06:00
dbankieris
25d91e7852
Merge pull request #1111 from nasa/1110
Call follow_address_path for DR_Changes triggers
2021-02-22 12:29:02 -06:00
Derek Bankieris
c428bce49d Add support for references in MM::ref_name
Add an AO_DEREFERENCE ADDRESS_NODE to R->address_path and dereference the
address for REF2->address
2021-02-11 17:36:43 -06:00
Derek Bankieris
1506063a05 Call follow_address_path for DR_Changes triggers
Closes #1110
2021-02-11 15:38:47 -06: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
7277b16017
#1063 move sim service xml file (#1069)
Co-authored-by: Fennell, Scott P 263712616 <scott.p.fennell@nasa.gov>
2020-10-23 15:45:32 -05:00
Derek Bankieris
1e8228e344 Use -isystem for Trick and Python headers
Closes #1067
2020-10-23 08:28:01 -05: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
Penn, John M 047828115
9452f928d0 Breakout Regula Falsi Bounds setter functions. Ref #995 2020-05-04 16:10:35 -05:00
Penn, John M 047828115
e303b2ac9b Revert regula_falsi.c. Ref #995 2020-04-30 23:12:22 -05:00
Penn, John M 047828115
479f3458cd Add Recursive Dynamic Event Processing. Ref #995 2020-04-29 17:26:02 -05:00
jmpenn
5c49bf8fef
Add ability to reset the integrator state (#952)
* Add ability to reset the integrator state

* Make reset logic changes conditional on USE_ER7_UTILS_INTEGRATORS
2020-02-18 15:18:57 -06:00
Scott Fennell
b724f502b3
fix 32 bit test (#953)
* fix tests for 32 bit mode

* fix issues with mongoose build

* Update docker.yml
2020-02-14 10:23:19 -06:00
Scott Fennell
9864fe39f7 fix relative path from trick_algorithms Makefile to Makefile.common 2020-02-11 11:50:26 -06:00
Scott Fennell
3415996952
iss #909 add functions to turn on/off SIGCHLD handler (#924)
closes #909
2020-01-16 10:49:36 -06:00
Alex Lin
ce0cdc9636
Cmake merge (#901)
* Merging changes from cmake branch to master

* Fixing includes for renamed header files

* still need build rule

* Adding warning for swig code for gcc8+

* Adding CMakeLists.txt for data products

* Cmake merge #901

Making adjustments to get cmake working on the Mac (Mojave)

* Cmake merge #901

Changing string append to list append
2019-11-19 09:01:16 -06:00
Scott Fennell
2deff169e0 require c++11 for trick_source/sie 2019-10-31 09:51:24 -05:00
Scott Fennell
5ab51d42e6
Merge pull request #895 from nasa/S_sie.json
create S_sie.json
2019-10-30 16:07:32 -05:00
dbankieris
5e11a40a69
Merge pull request #877 from nasa/char_sized_enums
Add support for char-sized enums
2019-10-04 12:21:31 -05:00
Scott Fennell
c8eb44e1fc get rid of dangling pointer use closes #878 2019-10-04 10:04:38 -05:00
Derek Bankieris
04d5f5dd80 Add support for char-sized enums
Fixes #876
2019-10-01 12:26:57 -05:00
sfennell
8ac5cf7a59 changes to support llvm 9.0 closes #869 2019-09-27 16:04:16 -05:00
Scott Fennell
d978cdf4c6 move code out of conditional block to make sure slave_output_directory gets initialized fixes #848 2019-09-09 11:26:09 -05:00
Scott Fennell
994c8c0684 create S_sie.json 2019-09-09 10:56:02 -05:00
Derek Bankieris
3a03f7af53 Remove to_string from JITInputFile.cpp
Follow the existing error reporting pattern
2019-09-03 11:08:38 -05:00
Dung-Ru Tsai
0dffa8096f Add debug errno in the JIT compile (#854)
Thank you for your contribution!
2019-09-03 07:21:57 -05:00
Penn, John M 047828115
ba4c86858a Remove unused variable definition. 2019-08-13 16:32:21 -05:00
Scott Fennell
3609f76474 exit on invalid input file or command line argument #840 2019-07-10 15:23:29 -05:00
Scott Fennell
1d17aa579a fix sim help message and handle bad command line args #840 2019-07-10 13:53:03 -05:00
Scott Fennell
82bae3b0d0 #836 remove all S_default.dat stuff 2019-07-09 15:58:26 -05:00
Scott Fennell
c2d2fee474 #837 default input file to first argument if RUN_ is not present 2019-07-08 09:28:53 -05:00
Scott Fennell
ca5ddb429e iss #837 make command line arguments position independent 2019-07-02 09:03:09 -05:00
Derek Bankieris
40cf5c0b29 Note the process exit status of Monte Carlo runs
Closes #481
2019-06-21 14:02:03 -05:00
Derek Bankieris
d135353c90 Infer TRICK_HOME in Makefiles
Closes #358
2019-06-21 13:15:22 -05:00
Scott Fennell
b23b19195b
Merge pull request #818 from nasa/786-clock-stuff
Add C call to clock_tics_per_sec and also log init job elapsed time
2019-06-18 13:38:18 -05:00
Alex Lin
497f11f132
Make TRICK_CXX variable to specify c++ compiler #767 (#815)
Changed all references of TRICK_CPPC to TRICK_CXX.  Added a
warning message that TRICK_CPPC has been deprecated.
2019-06-18 11:00:08 -05:00
Alex Lin
187fa37540
Remove suppression of units conversion warnings in 19 #789 (#814)
Removed checks on dead units conversion messenger.  Units conversion
messages cannot be suppressed.  Added deprecated messages to the functions
that modified the message printouts.
2019-06-18 10:59:51 -05:00
Scott Fennell
4d247c94db remove unneccessary includes 2019-06-18 10:39:03 -05:00
Scott Fennell
97941ac073 move init_log_stream to Executive.hh, move Executive::process_sim_args from "default data" to Executive::init 2019-06-18 10:34:56 -05:00
Scott Fennell
fadda55abf Log elapsed time in default_data, input_processor, and init jobs in file
init_log.csv
2019-06-17 14:40:01 -05:00
Alex Lin
04b2185c2e TPROCTE_HOME Being Used In Place Of TPRO_HOME #778
I put the include for tsync.h in the wrong place.
2019-06-12 07:17:39 -05:00
Alex Lin
a420418443 TPROCTE_HOME Being Used In Place Of TPRO_HOME #778
Changed the Tsync routing from using the old TPro API to the
new Tsync API.
2019-06-11 15:50:49 -05:00
Alex Lin
a394f0d187 TPROCTE_HOME Being Used In Place Of TPRO_HOME #778
Needed to make some more fixes to work with modern tsync driver
code.
2019-06-11 09:48:29 -05:00
Scott Fennell
b1d791dc94 #805 add C call to clock_tics_per_sec 2019-06-07 08:29:47 -05:00
Scott Fennell
9be53ebb9b #776 default restore_stls to false 2019-06-03 09:44:35 -05:00
Scott Fennell
7f7adca0ac #776 .dat files don't call restore_stls in checkpoint restore 2019-06-01 10:48:31 -05:00
dbankieris
b694d5412b
Merge pull request #765 from nasa/763
Add ability to specify MC slave output directory
2019-05-29 14:29:04 -05:00
Alex Lin
7338dd32d3 Merge branch 'master' of https://github.com/nasa/trick 2019-05-14 09:09:13 -05:00
Alex Lin
fedf5bec72 Reduce number of real-time plots per page to 6 #775
Changed the hard coded 8 plots per page to a user settable number.
Defaulted the number to 6.
2019-05-14 09:08:11 -05:00
jmpenn
3f35388b49
Change std::endl to linefeed as appropriate. (#773)
* Fix endl issue in variable server JSON generation. Ref #766

* Change std::endl to line feed as appropraite. #766

* Change std::endl to line feed in MemoryManager as appropriate. #766

* Change std::endl to linefeed as appropriate. #766

* Change std::endl to line feed as appropriate in JSONVariableServer. #766

* Change std::endl to line feed as appropriate in still more files. #766
2019-05-13 16:05:01 -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
Derek Bankieris
4368d412b2 Add C functions for setting MC slave output dir
Refs #763
2019-05-06 12:03:26 -05:00
Derek Bankieris
7d7b461b38 Allow specification of MC slave output directory
Refs #763
2019-05-06 11:32:12 -05:00
Alex Lin
e6abfd21b8 Log frame scheduling time if not running real-time. #762
If real-time is off, we exit the rt_monitor function early.  The frame
scheduled time was calculated after the exit call.  Moved the frame
scheduled time calcuation before the exit.
2019-05-02 16:36:35 -05:00
Penn, John M 047828115
0f037e6817 Update trickTypeCharString() for STLs, so their names can be generated. #755 2019-04-17 16:43:12 -05:00
Penn, John M 047828115
05e9535518 Add MemoryManager methods to generate JSON for allocation info. #755 2019-04-17 16:35:29 -05:00
Penn, John M 047828115
be4372a831 Change dashes in JSON identifiers to underscores. ref #678 2019-03-07 10:44:56 -06:00
Penn, John M 047828115
531a94173e Fix output going to the wrong stream. ref #678 2019-03-07 10:43:40 -06:00
Scott Fennell
941a94d9ad never assume that syntax from github suggestions is correct 2019-02-28 08:38:47 -06:00