|
GCSIM
|
#include <format>#include <memory>#include <string>#include <latch>#include <random>#include <utility>#include <concepts>#include <iostream>#include "../heap-manager/heap-manager.hpp"#include "../common/thread-pool/thread-pool.hpp"#include "../root-set-table/thread-local-stack.hpp"#include "../root-set-table/global-root.hpp"#include "../root-set-table/register-root.hpp"Classes | |
| class | allocators |
| simulates the allocations on the heap. More... | |
Enumerations | |
| enum class | simulation_mode { stress , relaxed } |
| defines the type of the simulation. More... | |
Variables | |
| size_t constexpr | TLS_ALLOC_STRESS_THRESHOLD = 8192 |
| number of allocations per tls in stress mode. | |
| size_t constexpr | TLS_SCOPE_COUNT_STRESS = 8 |
| number of scopes per tls for stress mode. | |
| size_t constexpr | TLS_ALLOC_STRESS_THRESHOLD_PER_SCOPE = TLS_ALLOC_STRESS_THRESHOLD / TLS_SCOPE_COUNT_STRESS |
| number of allocations per scope for tls in stress mode. | |
| size_t constexpr | TLS_MAP_CAPACITY_STRESS = TLS_ALLOC_STRESS_THRESHOLD_PER_SCOPE << 1 |
| capacity of the hash-map that maps tls variable to its index in stress mode. | |
| size_t constexpr | TLS_ALLOC_RELAXED_THRESHOLD = 1024 |
| number of allocations per tls in relaxed mode. | |
| size_t constexpr | TLS_SCOPE_COUNT_RELAXED = 8 |
| number of scopes per tls in relaxed mode. | |
| size_t constexpr | TLS_ALLOC_RELAXED_THRESHOLD_PER_SCOPE = TLS_ALLOC_RELAXED_THRESHOLD / TLS_SCOPE_COUNT_RELAXED |
| number of allocations per scope for tls in relaxed mode. | |
| size_t constexpr | TLS_MAP_CAPACITY_RELAXED = TLS_ALLOC_STRESS_THRESHOLD_PER_SCOPE << 1 |
| capacity of the hash-map that maps tls variable to its index in relaxed mode. | |
| size_t constexpr | GLOBAL_ALLOC_STRESS_THRESHOLD = 128 |
| number of allocations per global in stress mode. | |
| size_t constexpr | GLOBAL_ALLOC_RELAXED_THRESHOLD = 32 |
| number of allocations per global in relaxed mode. | |
| size_t constexpr | REGISTER_ALLOC_STRESS_THRESHOLD = 128 |
| number of allocations per register in stress mode. | |
| size_t constexpr | REGISTER_ALLOC_RELAXED_THRESHOLD = 32 |
| number of allocations per register in relaxed mode. | |
|
strong |
|
constexpr |
number of allocations per global in relaxed mode.
|
constexpr |
number of allocations per global in stress mode.
|
constexpr |
number of allocations per register in relaxed mode.
|
constexpr |
number of allocations per register in stress mode.
|
constexpr |
number of allocations per tls in relaxed mode.
|
constexpr |
number of allocations per scope for tls in relaxed mode.
|
constexpr |
number of allocations per tls in stress mode.
|
constexpr |
number of allocations per scope for tls in stress mode.
|
constexpr |
capacity of the hash-map that maps tls variable to its index in relaxed mode.
|
constexpr |
capacity of the hash-map that maps tls variable to its index in stress mode.
|
constexpr |
number of scopes per tls in relaxed mode.
|
constexpr |
number of scopes per tls for stress mode.