Shows how to implement a classical communication pattern, where a token is exchanged along a ring to reach every
participant.
- - <b>Master Workers:</b> @ref examples/s4u/app-masterworker/s4u-app-masterworkers-class.cpp
- @ref examples/s4u/app-masterworker/s4u-app-masterworkers-fun.cpp @n
+ - <b>Master Workers:</b> @ref examples/s4u/app-masterworkers/s4u-app-masterworkers-class.cpp
+ @ref examples/s4u/app-masterworkers/s4u-app-masterworkers-fun.cpp @n
Another good old example, where one Master process has a bunch of task to dispatch to a set of several Worker
processes. This example comes in two equivalent variants, one
where the actors are specified as simple functions (which is easier to
@example examples/s4u/async-waitany/s4u-async-waitany.cpp
@example examples/s4u/app-bittorrent/s4u-bittorrent.cpp
@example examples/s4u/app-chainsend/s4u-app-chainsend.cpp
-@example examples/s4u/app-masterworker/s4u-app-masterworker.cpp
+@example examples/s4u/app-masterworkers/s4u-app-masterworkers-class.cpp
+@example examples/s4u/app-masterworkers/s4u-app-masterworkers-fun.cpp
@example examples/s4u/app-pingpong/s4u-app-pingpong.cpp
@example examples/s4u/app-token-ring/s4u-app-token-ring.cpp
@example examples/s4u/dht-chord/s4u-dht-chord.cpp
-/* Copyright (c) 2015-2018. The SimGrid Team.
- * All rights reserved. */
+/* Copyright (c) 2015-2018. The SimGrid Team. All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
// ***** snapshot_page_manager
-PageStore::PageStore(size_t size) : memory_(nullptr), capacity_(size), top_index_(0)
+PageStore::PageStore(std::size_t size) : memory_(nullptr), capacity_(size), top_index_(0)
{
// Using mmap in order to be able to expand the region by relocating it somewhere else in the virtual memory space:
void* memory =
*
* @param addr Pointer
* @param snapshot Snapshot
- * @param Snapshot region in the snapshot this pointer belongs to
- * (or nullptr if it does not belong to any snapshot region)
+ * @param process_index rank requesting the region
* */
mc_mem_region_t mc_get_snapshot_region(const void* addr, const simgrid::mc::Snapshot* snapshot, int process_index)
{
/** Compare memory between snapshots (with known regions)
*
* @param addr1 Address in the first snapshot
- * @param snapshot2 Region of the address in the first snapshot
+ * @param region1 Region of the address in the first snapshot
* @param addr2 Address in the second snapshot
- * @param snapshot2 Region of the address in the second snapshot
- * @return same as memcmp
- * */
+ * @param region2 Region of the address in the second snapshot
+ * @return same semantic as memcmp
+ */
int MC_snapshot_region_memcmp(const void* addr1, mc_mem_region_t region1, const void* addr2, mc_mem_region_t region2,
size_t size)
{
* to create the SIMIX synchro. It can raise a host_error exception if the host crashed.
*
* @param name Name of the execution synchro to create
+ * @param category Tracing category
* @param flops_amount amount Computation amount (in flops)
* @param priority computation priority
- * @param bound
+ * @param bound Maximal speed for this execution (in flops) or -1 if no limit
* @param host host where the synchro will be executed
* @return A new SIMIX execution synchronization
*/