Arnaud Giersch [Mon, 12 Apr 2021 09:01:11 +0000 (11:01 +0200)]
Simcall COMM_TESTANY is not blocking either. Simplify.
Arnaud Giersch [Mon, 12 Apr 2021 08:36:00 +0000 (10:36 +0200)]
Define CommImpl::test().
Arnaud Giersch [Mon, 12 Apr 2021 08:32:34 +0000 (10:32 +0200)]
Simcall COMM_TEST is not blocking.
Arnaud Giersch [Sun, 11 Apr 2021 19:44:35 +0000 (21:44 +0200)]
Little simplification.
Arnaud Giersch [Mon, 12 Apr 2021 08:25:12 +0000 (10:25 +0200)]
Finalize current CommImpl only once.
Arnaud Giersch [Mon, 12 Apr 2021 08:18:15 +0000 (10:18 +0200)]
Homogenize debug messages across ActivityImpl's finish() methods.
Arnaud Giersch [Mon, 12 Apr 2021 07:56:48 +0000 (09:56 +0200)]
Ensure there is only one simcall waiting.
Augustin Degomme [Fri, 9 Apr 2021 17:24:33 +0000 (19:24 +0200)]
[ci-skip] we want to order by the largest first ..
Augustin Degomme [Fri, 9 Apr 2021 09:26:22 +0000 (11:26 +0200)]
try to be preemptive about 32 bits complaints
Augustin Degomme [Fri, 9 Apr 2021 01:38:21 +0000 (03:38 +0200)]
this value was actually wrong, and caught by the new buffer overflow check.
this is due to the fact that actual mpich test uses 10 times higher values, so just removing last digit was breaking the BIGDFT=4*NUM_X-1 condition
Augustin Degomme [Fri, 9 Apr 2021 01:35:35 +0000 (03:35 +0200)]
adapt test for leak check
Augustin Degomme [Fri, 9 Apr 2021 01:35:07 +0000 (03:35 +0200)]
Add initialization/finalization check at each call.
Side effect was to break calls from external threads (gh-139).. So mark them as initialized properly at creation.
Augustin Degomme [Fri, 9 Apr 2021 01:29:52 +0000 (03:29 +0200)]
use previous buffer check feature in MPI checks, to crash when a buffer overflow is detected and provide good information.
Augustin Degomme [Fri, 9 Apr 2021 01:28:02 +0000 (03:28 +0200)]
Count all intercepted allocations/deallocations in order to build a small leak-checker.
This allows to check for leaks, but also to provide debug information on the involved buffers (file, line, size) when a crash happens
todo: evaluate memory cost and slowdown for real apps (disabled by default, needs --cfg=smpi/display-allocs or -analyze flag to be activated)
Bruno Donassolo [Fri, 9 Apr 2021 08:36:52 +0000 (10:36 +0200)]
Use directly std::string instead of c_str.
Bruno Donassolo [Thu, 8 Apr 2021 16:47:41 +0000 (18:47 +0200)]
s4u::Host::create_disk, human-friendly string version
Bruno Donassolo [Thu, 8 Apr 2021 16:33:03 +0000 (18:33 +0200)]
s4u::Host: moving create_disk impl to HostImpl
Bruno Donassolo [Thu, 8 Apr 2021 16:22:18 +0000 (18:22 +0200)]
s4u::Disk allow chaining set_property
Bruno Donassolo [Thu, 8 Apr 2021 14:32:02 +0000 (16:32 +0200)]
s4u: allows full single-line initialization
seal() returns a pointer to the s4u object.
Allows users to use the object after its seal, without having to do it
in another line
Arnaud Giersch [Thu, 8 Apr 2021 09:03:26 +0000 (11:03 +0200)]
Make fields private, and static functions class-member.
Arnaud Giersch [Thu, 8 Apr 2021 08:22:10 +0000 (10:22 +0200)]
Useless forward declaration.
Arnaud Giersch [Thu, 8 Apr 2021 08:15:07 +0000 (10:15 +0200)]
Redundant code (ctor is already inherited).
Arnaud Giersch [Wed, 7 Apr 2021 13:16:39 +0000 (15:16 +0200)]
Prefer nullptr.
Arnaud Giersch [Wed, 7 Apr 2021 13:08:26 +0000 (15:08 +0200)]
Kill erroneous constant.
Arnaud Giersch [Wed, 7 Apr 2021 12:54:52 +0000 (14:54 +0200)]
Const/override for member functions.
Arnaud Giersch [Wed, 7 Apr 2021 12:49:19 +0000 (14:49 +0200)]
Inherited constructor.
Arnaud Giersch [Wed, 7 Apr 2021 12:48:21 +0000 (14:48 +0200)]
Pointer-to-const parameter.
SUTER Frederic [Wed, 7 Apr 2021 08:15:41 +0000 (10:15 +0200)]
continue to mess with platform creation
Arnaud Giersch [Wed, 7 Apr 2021 11:34:43 +0000 (13:34 +0200)]
Kill empty statement.
Arnaud Giersch [Wed, 7 Apr 2021 09:07:16 +0000 (11:07 +0200)]
Make BacktraceImpl::resolve a bit faster.
Print the full frame information all at once.
Arnaud Giersch [Tue, 6 Apr 2021 10:19:14 +0000 (12:19 +0200)]
Replace void* used for RemoteProcess pointers.
Arnaud Giersch [Tue, 6 Apr 2021 21:38:54 +0000 (23:38 +0200)]
Use a RemotePtr<> for RemoteProcess::heap_address.
Arnaud Giersch [Tue, 6 Apr 2021 18:57:36 +0000 (20:57 +0200)]
Stop using void* for xbt_mheap_t.
Arnaud Giersch [Tue, 6 Apr 2021 16:12:06 +0000 (18:12 +0200)]
Fix cloud.xml: symmetrical routes are implicit.
Add file to basic_parsing_test so that it doesn't remain untested..
Arnaud Giersch [Wed, 7 Apr 2021 07:43:23 +0000 (09:43 +0200)]
Make NetworkConstantAction "final": virtual set_state() called from constructor.
Arnaud Giersch [Sat, 3 Apr 2021 21:59:15 +0000 (23:59 +0200)]
Make virtual functions called from constructor "final".
Sonar S1699: Constructors and destructors should only use defined methods and fields
Augustin Degomme [Wed, 7 Apr 2021 09:04:52 +0000 (11:04 +0200)]
please sonar
Augustin Degomme [Wed, 7 Apr 2021 08:29:07 +0000 (10:29 +0200)]
Display leak origin in message, if -trace-call-location is used.
+ downgrade messages to INFO.
Augustin Degomme [Wed, 7 Apr 2021 08:27:44 +0000 (10:27 +0200)]
hide references to current_handle inside *.cpp file, to avoid breaking if SMPI is not compiled
Augustin Degomme [Tue, 6 Apr 2021 20:53:45 +0000 (22:53 +0200)]
appease 32 bits
Arnaud Giersch [Tue, 6 Apr 2021 20:42:00 +0000 (22:42 +0200)]
Use a Remote<> for remote smpi::Request.
Augustin Degomme [Tue, 6 Apr 2021 18:34:27 +0000 (20:34 +0200)]
appease clang
Augustin Degomme [Tue, 6 Apr 2021 18:06:47 +0000 (20:06 +0200)]
change the way we display leak types, skipping demangling
Augustin Degomme [Tue, 6 Apr 2021 18:05:22 +0000 (20:05 +0200)]
try to improve handling of comm_self a bit.
Augustin Degomme [Tue, 6 Apr 2021 16:42:02 +0000 (18:42 +0200)]
fix for potentially empty names
Augustin Degomme [Tue, 6 Apr 2021 15:43:28 +0000 (17:43 +0200)]
Add the option to print origin of a failing handle.
This uses trace-call-location flag for smpicc, store the value at handle creation, and tries to return the most relevant one on a crash (that's actually a pain and will have to be checked)
Augustin Degomme [Tue, 6 Apr 2021 15:39:50 +0000 (17:39 +0200)]
add a name() to all F2C objects.
This avoids demangling need for leak check (and should fix tests, as freebsd has a broken demangler on our ci system).
Augustin Degomme [Tue, 6 Apr 2021 15:22:36 +0000 (17:22 +0200)]
oops
Augustin Degomme [Tue, 6 Apr 2021 15:13:51 +0000 (17:13 +0200)]
same for win, get_info needs a copy.
Augustin Degomme [Tue, 6 Apr 2021 15:08:47 +0000 (17:08 +0200)]
remove unwanted s4u include in all smpi files
Augustin Degomme [Tue, 6 Apr 2021 15:06:50 +0000 (17:06 +0200)]
get_info calls actually must return a copy.
Augustin Degomme [Tue, 6 Apr 2021 15:06:17 +0000 (17:06 +0200)]
generalize mark_as_deleted call
Augustin Degomme [Mon, 5 Apr 2021 21:57:12 +0000 (23:57 +0200)]
Don't add handles to the lookup for the sake of just removing them immediately...
if they're not there .. well they are not.
Augustin Degomme [Mon, 5 Apr 2021 21:55:13 +0000 (23:55 +0200)]
add two fortran declarations
Augustin Degomme [Mon, 5 Apr 2021 12:33:30 +0000 (14:33 +0200)]
Add message to help improve backtrace
Augustin Degomme [Mon, 5 Apr 2021 10:28:27 +0000 (12:28 +0200)]
\t removed
Augustin Degomme [Mon, 5 Apr 2021 10:28:18 +0000 (12:28 +0200)]
print backtrace when we exit due to an MPI failure
SUTER Frederic [Tue, 6 Apr 2021 17:51:34 +0000 (19:51 +0200)]
factor on_creation signal trigger in Host::seal()
SUTER Frederic [Tue, 6 Apr 2021 16:53:42 +0000 (18:53 +0200)]
prefer create_host than creating the creation args
SUTER Frederic [Tue, 6 Apr 2021 16:15:23 +0000 (18:15 +0200)]
cleanups
SUTER Frederic [Tue, 6 Apr 2021 12:23:08 +0000 (14:23 +0200)]
simplify kernel part of disk. It's really shallow now
SUTER Frederic [Tue, 6 Apr 2021 11:56:22 +0000 (13:56 +0200)]
cosmetics
SUTER Frederic [Tue, 6 Apr 2021 10:32:18 +0000 (12:32 +0200)]
Match Io and Exec creation
SUTER Frederic [Tue, 6 Apr 2021 07:53:01 +0000 (09:53 +0200)]
Save one assert and do not use shring policy to determine if WifiLink
SUTER Frederic [Tue, 6 Apr 2021 07:45:11 +0000 (09:45 +0200)]
cosmetics
Bruno Donassolo [Tue, 6 Apr 2021 09:30:04 +0000 (11:30 +0200)]
Single way to create links in NetZone
With the refactoring, we don't need 2 methods in NetZoneImpl to create
new links.
The link type (wifi or wired) is determined by the NetZone type
(WifiZone).
Bruno Donassolo [Tue, 6 Apr 2021 08:52:21 +0000 (10:52 +0200)]
Simplify NetZone's hierarchy
A NetZone is RoutingMode::base by default. When we add a child to it, it
becomes RoutingMode::recursive.
Bruno Donassolo [Tue, 6 Apr 2021 08:27:02 +0000 (10:27 +0200)]
One method to set netzone's relationship
A netzone is child of its parent, set_parent() is enough to determine
the relationship parent/child of netzones.
Bruno Donassolo [Tue, 6 Apr 2021 08:01:21 +0000 (10:01 +0200)]
Copy models from parent netzone
Allows user creating new netzones without explicitly setting models
Bruno Donassolo [Tue, 6 Apr 2021 07:55:01 +0000 (09:55 +0200)]
Minor fix in doc
Arnaud Giersch [Sun, 4 Apr 2021 21:55:42 +0000 (23:55 +0200)]
[appveyor] Stick to the stable branch of pybind11.
Arnaud Giersch [Sat, 3 Apr 2021 19:50:47 +0000 (21:50 +0200)]
Missing space (?).
Augustin Degomme [Sun, 4 Apr 2021 17:14:21 +0000 (19:14 +0200)]
checks for PMPI_Type_create_subarray
Augustin Degomme [Sun, 4 Apr 2021 17:13:53 +0000 (19:13 +0200)]
check for alloc mem
Augustin Degomme [Sun, 4 Apr 2021 15:11:27 +0000 (17:11 +0200)]
check illegal in_place for gather/scatter
also stop calling pid rank, it's confusing.
Augustin Degomme [Sun, 4 Apr 2021 15:11:09 +0000 (17:11 +0200)]
check ranks for probes/iprobes
Augustin Degomme [Sun, 4 Apr 2021 15:10:53 +0000 (17:10 +0200)]
increase rank checking for RMA comms
Augustin Degomme [Sat, 3 Apr 2021 23:05:38 +0000 (01:05 +0200)]
this test is invalid with 1 process. Align with mpich and use 8.
Augustin Degomme [Sat, 3 Apr 2021 23:05:01 +0000 (01:05 +0200)]
group inputs validation
Augustin Degomme [Sat, 3 Apr 2021 23:04:12 +0000 (01:04 +0200)]
set keyval to invalid after free
Augustin Degomme [Sat, 3 Apr 2021 13:49:56 +0000 (15:49 +0200)]
MPI_Abort : try to kill other processes from the communicator.
No idea if this helps
Augustin Degomme [Sat, 3 Apr 2021 13:48:18 +0000 (15:48 +0200)]
Keyvals : handle MPI_KEYVAL_INVALID
Augustin Degomme [Sat, 3 Apr 2021 13:47:51 +0000 (15:47 +0200)]
Errhandler : inputs + cleanup
Augustin Degomme [Sat, 3 Apr 2021 12:52:03 +0000 (14:52 +0200)]
oops.
Augustin Degomme [Sat, 3 Apr 2021 12:51:49 +0000 (14:51 +0200)]
Abort : check input, and remove fixme... Actual implementations do the same
Augustin Degomme [Sat, 3 Apr 2021 12:51:22 +0000 (14:51 +0200)]
Init : dont just crash with asserts, return errors (they will crash if errhandler is configured to)
Augustin Degomme [Sat, 3 Apr 2021 12:49:58 +0000 (14:49 +0200)]
comm, input validation
Augustin Degomme [Sat, 3 Apr 2021 12:48:13 +0000 (14:48 +0200)]
use MPI_COMM_WORLD errhandler if MPI_COMM_NULL is given
Arnaud Giersch [Sat, 3 Apr 2021 13:40:26 +0000 (15:40 +0200)]
Fix null dereference.
Arnaud Giersch [Sat, 3 Apr 2021 13:11:46 +0000 (15:11 +0200)]
Sort the list of leaks before print.
Augustin Degomme [Sat, 3 Apr 2021 08:30:12 +0000 (10:30 +0200)]
avoid allocating comm_self if not needed
Martin Quinson [Sat, 3 Apr 2021 07:42:34 +0000 (09:42 +0200)]
Tell when we have more leaked handles to display
Martin Quinson [Sat, 3 Apr 2021 07:39:52 +0000 (09:39 +0200)]
Display the leaked handles in the tests (using no_loc to hide pointers)
Martin Quinson [Sat, 3 Apr 2021 07:09:12 +0000 (09:09 +0200)]
Cosmetics in an error message
To ease the grepping of this message in a child project ;)
Martin Quinson [Sat, 3 Apr 2021 07:05:37 +0000 (09:05 +0200)]
Merge branch 'master' of framagit.org:simgrid/simgrid
Augustin Degomme [Sat, 3 Apr 2021 00:40:40 +0000 (02:40 +0200)]
validate that MPI_Op can be applied at entrance of MPI call, instead of xbt_dying deep inside SMPI.
For RMA comms, somehow derived datatypes also are allowed. and it's too late for me to add this, so keep the previous checks for now.
Augustin Degomme [Fri, 2 Apr 2021 22:19:17 +0000 (00:19 +0200)]
Pack_size is meant to return the upper bound of the size.
Thanks agier
Arnaud Giersch [Fri, 2 Apr 2021 21:03:11 +0000 (23:03 +0200)]
A bool is OK in boolean context.
Arnaud Giersch [Fri, 2 Apr 2021 20:45:36 +0000 (22:45 +0200)]
Cosmetics.
SUTER Frederic [Fri, 2 Apr 2021 21:38:48 +0000 (23:38 +0200)]
change way WIFI are create + make sharing_policy optional