Commit Graph

431 Commits

Author SHA1 Message Date
0695391bac 1811 dont override users cc and cpp env for data products (#1819)
* Don't override the CC and C++ environment variables

Fixes an issue where some makefiles override the user's CC and C++
environment variables.

* Restore test makefiles

* Test to change from CC = cc to CC = gcc for only needed files.

* Restore the whitespaces to their original state before the update in order to show the necessary file changes for the PR.

---------

Co-authored-by: Nino Tarantino <antonio.tarantino@nasa.gov>
2025-01-07 10:42:56 -06:00
e8508ea575 Add calls for getting the total number of data recording groups and the data recording group pointer by its id number (#1799)
* Added new function calls to data_record_utilities for getting the total number of data recording groups and the data recording group pointer by its id number per customer request.

* Deleted unnecessary variable.

* Added a couple of more unit tests and fixed the return number to 0 instead of NULL for getting total number of drgs.
2024-11-12 10:42:46 -06:00
9e974e6a9b Addressed phantom frame log restart jobs (#1787)
* Frame Log DRG now manage their own jobs (no longer add a phantom restart job)

* Actually removed frame log drg restart jobs this time

* Refactored to avoid duplicate code

* Refactor

* Fixed DR constructors

* Fixed some syntax stuff centos was throwing a tantrum about

* More centos whining

* Centos...

* Centos...

* Clean up
2024-10-29 11:05:33 -05:00
b2403dcfc6 Fixed debug_pause semaphore name (#1793) 2024-10-15 10:50:33 -05:00
1bdabadcbe Fixed new job index calc (#1791)
* Fixed new job index calc

* Added additional index test
2024-09-30 13:53:02 -05:00
c007cfc88a Fixed error message for sims with the same port number (#1776)
* Fixed error message for same port number

* Fixed return values
2024-09-26 11:47:45 -05:00
c9cec718b4 Preserved job queue currant index after pushing a job. (#1781)
* Peserved job queue current index after pushing a job.

* Reconciled the heinous offense of using tabs.
2024-09-26 11:40:04 -05:00
1a842a6b89 Add deletions to tracking list if malloc or new (#1778)
* Add deletions to tracking list if malloc or new

* Add all TRICK_LOCAL deletions to deletion_list
2024-09-26 11:23:50 -05:00
077064f225 Fixed one warning message at shutdown after checkpoint load and kept the current multicast group after checkpoint load. (#1784)
* Added a check before calling MM delete_var in ExternalApplication destructor;
Made sure that the MulticastGroup is not initialized before initializing it in VariableServerListenThread.cpp;

* Updated to call multicast group initialization to be consistent for the unit test.

* Removed unnecessary command c str pointer.

* Removed unnecessary command c str pointer.
2024-09-26 11:17:57 -05:00
eed8707638 Added sub second information to message time stamps. (#1773)
* Added sub second information to message time stamps.

* Removed "0." for sub-second portion of time stamp.
2024-09-17 11:03:40 -05:00
b46ba50fd0 Added optional remote shell config file for the remote startup command. (#1771)
* Added optional remote sheel config file for the remote startup command.

* Updated to cd to the sim directory after sourcing a config file in case the config file changed pwd.
2024-09-17 10:59:52 -05:00
26f6a02e44 Added "target_integ_time" to Integrator class. It can be useful to know the integration time. (#1760)
Co-authored-by: Thomas Brain <thomas.a.brain@nasa.gov>
2024-08-13 10:51:24 -05:00
92b0168b7b Speed up Trick::ScheduledJobQueue::push (#1694)
* Speed up Trick::ScheduledJobQueue::push

* Make comparator a static function

* Use upper_bound instead

* Use explicit types

* Update comment

* Fix formatting
2024-07-23 12:16:57 -05:00
f892b41d2d Added TRICK_LDFLAGS to the rule for linking shared library for jit input. (#1745)
* Added TRICK_LDFLAGS to the rule for linking shared library so user can use TRICK_LDFLAGS for linking shared library if necessary.

* Removed the new line added by accident.
2024-07-23 11:53:33 -05:00
f666708374 Repurposed -OO for all sim run outputs including S_sie.resource being saved in the specified directory. (#1714)
* 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.
2024-07-16 10:31:52 -05:00
37e273a024 Corrected .d file path for the clean target in Makefile.input file. (#1735) 2024-06-27 10:34:44 -05:00
5219c1d279 message (#1712) 2024-05-23 10:29:53 -05:00
5065d96a15 Pre-increment (rather than post-increment) STL iterators in for loops… (#1692)
* Pre-increment (rather than post-increment) STL iterators in for loops. #1594

* Fix a goof. #1594
2024-04-18 11:41:35 -05:00
04822023de In MemoryManager change delete_var(const char*) to delete_var(std::string) (#1687) 2024-04-04 10:33:18 -05:00
c4e60d9f9a Proposed fix for deadlock on shutdown (#1673)
* Proposed fix for deadlock on shutdown

* Terminate C style comment.

* Added needed libs for applicable tests and updated the logic for when allowing/disallowing connections.

* Need to load additional trick libs for applicable tests for Linux.

---------

Co-authored-by: Hong Chen <hong.chen-1@nasa.gov>
2024-03-28 15:15:19 -05:00
48924d585a python3 GIL locking solution (#1675)
* Implemented use of the python GIL API to replace the less portable mutex solution.

* Replaced nullptr with NULL

---------

Co-authored-by: Thomas Brain <thomas.a.brain@nasa.gov>
2024-03-27 14:20:58 -05:00
d4f92cc501 Update frame_time attribute in FrameDataRecordGroup from unitless to s. (#1672) 2024-03-21 09:52:30 -05:00
2ac342cfc5 More rusage info added to the end of the run summary output enhancement (#1645)
* Added additional resource usage info for sim run.

* Fixed so voluntary context switches output uses corresponding ru_nvcsw instead of ru_nivcsw due to copy and paste error.

* Removed added resource usage data for page faults and block operations due to inconsistency on different OS.

* Updated to have voluntary and involuntary usage data for both initilization and run for sim shutdown run summary.
2024-02-29 14:52:41 -06:00
a2183fb60e Fix Issue #1386 (#1659) 2024-02-27 15:07:48 -06:00
bfb6419637 Fix the alloc_type of allocations performed by declare_var. #1529 (#1639) 2024-01-24 14:06:04 -06:00
7547d36ab4 Repurpose the "Sim/Real Time" field on the sim control panel #1626 (#1627)
* Repurpose the "Sim/Real Time" field on the sim control panel #1626

Added calculations in the realtime sync monitor job to calculate the
average sim/realtime ratio for the past 100 frames.  This is saved to
a new variable, actual_run_ratio.  Changed the sim control panel to
display the actual_run_ratio value.

* Repurpose the "Sim/Real Time" field on the sim control panel #1626

how does this compile locally but not in CI?  Didn't include cmath.
2024-01-23 10:46:55 -06:00
fe105451b9 Dump cycle time for all type instead of just PROCESS_TYPE_AMF_CHILD. (#1638) 2024-01-18 10:40:19 -06:00
6d86a0fd97 Updated to log applicable time in seconds instead of tics for frame logging (#1623)
* Updated to log applicable time in seconds instead of tics, remove scale attribute in dp product XMLs, and reset clock before realtime clock sync to avoid logging epoch time for frame logging.

* Removed "_seconds" from applicable time variable names.
2024-01-18 10:17:54 -06:00
483cacfafd MonteCarloGenerate: Provide more metadata on dispersions (#1608)
* Add type, dispersion, min_value, max_value and other relevant internal
  members of MonteCarloVariable* classes to the output of
  MonteCarlo_Meta_data_output. Motivation is for users wanting to post-process
  dispersion parameters used during generation of runs
* Protect against invalid memory access when length of values is zero in
  MonteCarloVariableRandomStringSet::generate_assignment(). Add a new
  verif sim warning case to cover these new lines
* Update new verif data for SIM_mc_generation to support these changes

Closes #1574

Co-authored-by: Dan Jordan <daniel.d.jordan@nasa.gov>
2023-12-01 10:09:17 -06:00
25b692d055 Added executive time tic value information to S_job_execution. (#1605) 2023-10-31 10:30:41 -05:00
9076a3e88f 1592 send hs run stats improvement (#1604)
* Added system CPU time and initialization system CPU time and added user wording for existing CPU time to distinguish it from system CPU time used for trick run summary.

* Updated the order of a couple of times of shutdown messages printed on screen and sim/cpu time ratio to both user and system cpu time.

* Minor change for lining up the shutdown message.
2023-10-31 10:20:17 -05:00
73cc7aabfa checksum enhancement for -d option (#1579)
* Added input file SHA1 info being printed on screen when running a trick sim with -d option (basically verifying the input)

* Added additional checks to exclude trace info printout for file in /opt or .trick/ or not a real file such as <xxx> as the filename.
2023-10-05 10:56:02 -05:00
cdc8927234 Fix status return logic in process_dynamic_events. #1557 (#1573) 2023-09-21 10:16:12 -05:00
fd260bfc34 In DPV_textbuffer.cpp, close the opened file on read failure, so we d… (#1572)
* In DPV_textbuffer.cpp, close the opened file on read failure, so we don't have a resource leak. #1561

* Disable 2 tests in VariableServerSessionThread_test.cc: exit_if_handle_message_fails, and exit_if_write_fails.
2023-09-21 10:15:53 -05:00
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
cca7191129 1504 trick run summary enhancement for memory used (#1545)
* Added SIM RAM usage info to trick run summary.

* Fixed to use #if for determing which OS.

* Removed the system print out statement when MonitorHealthStatusTask is finished.

* Changed "M" to "MB" for RAM usage info on run summery.
2023-08-24 13:51:19 -05:00
3fb82f9d84 Add return codes to var_set (#1543) 2023-08-14 09:32:04 -05:00
520e8a78ff Fixed an issue where MonteVarCalculated variables of data type int were not passed correctly to child processes (#1546) (#1547)
Co-authored-by: Noah Brewer-Houghton <Noah.A.Brewer-Houghton@nasa.gov>
2023-08-11 10:29:51 -05:00
682f218391 Correct typo in VariableServerSession_write_data.cpp
Thanks to @Fjolnirr for pointing this out!
2023-07-13 13:49:42 -05:00
d3cc021cca Move VariableServerSession logs into subdirectory; make separate toggle for session logs 2023-06-26 12:23:58 -05:00
a4d49850f3 Add per-session variable server logs 2023-06-26 12:23:58 -05:00
99ee88a686 Add more Variable Server unit and integration tests, clean up and clarify naming 2023-06-26 12:23:58 -05:00
0788dcfa9b Replace TrickComm with new connection_handler library 2023-06-26 12:23:58 -05:00
c2e42f4ef4 Refactor and test Variable Server.
- Split VariableServerThread into VariableServerSession and VariableReference classes
- Use C++ streams for data handling
- Unit tests
2023-06-26 12:23:58 -05:00
2e0e580c98 Add make spotless target to get rid of config info, patch together various other spots missed by clean (#1515) 2023-06-13 09:50:19 -05:00
f64a16ecaa Fixed an error with checkpointing change variables (#1518)
* Fixed SIGABRT for checkpointing change variables

* Expanded the Data Recording Checkpoint test sim
  - Added a case for checkpointing change variables

* Updated the test case for checkpointing change vars
  - Changed the header, input, and log files to get better data representation

* Expanded the Checkpoint test sim
  - Added a test case covering when the only tracked variable is the change var.
2023-06-07 15:17:24 -05:00
ad42376d5e Variable Server byteswapping crashes the sim #1513 (#1514)
* Variable Server byteswapping crashes the sim #1513

The code to byteswap a variable server buffer has a comment saying there is a bug. The comment is
correct.  The original code would swap the parameter and anything else that followed that parameter
in the structure.  Crashes everywhere.  Created a new routine that byteswaps a single parameter.
Strangely we didn't have such a routine until now.  Did some testing of doubles, floats, ints,
shorts, and chars and all were swapped correctly.

* Variable Server byteswapping crashes the sim #1513

enabling binary byteswap test.
2023-06-01 13:20:14 -05:00
33823f1a0b Correct path and remove Mac attaching a debugger in Executive_fpe_handler.cpp (#1495) 2023-05-04 15:29:32 -05:00
746311c06e Exclude memory manager int64_t tests on 32 bit architectures (#1494) 2023-05-01 15:50:39 -05:00
008bc6a621 Merge branch 'master' of https://github.com/nasa/trick 2023-04-28 18:00:27 -05:00