AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
memory.h
1#ifndef UTILS_MEMORY_H
2#define UTILS_MEMORY_H
3
4#include <memory>
5#include <utility>
6
7namespace utils {
8
9/*
10 Reserve some memory that we can release and be able to continue
11 afterwards, once we hit the memory limit. Due to memory fragmentation
12 the planner often doesn't have enough memory to continue if we don't
13 reserve enough memory. For CEGAR heuristics reserving 75 MB worked
14 best.
15
16 The interface assumes a single user. It is not possible for two parts
17 of the planner to reserve extra memory padding at the same time.
18*/
19extern void reserve_extra_memory_padding(int memory_in_mb);
20extern void release_extra_memory_padding();
21extern bool extra_memory_padding_is_reserved();
22extern bool is_out_of_memory();
23}
24
25#endif