def _cpu_memory()

in optimum_benchmark/trackers/memory.py [0:0]


    def _cpu_memory(self):
        child_connection, parent_connection = Pipe()
        memory_process = Process(
            target=monitor_cpu_ram_memory, args=(self.monitored_pid, child_connection), daemon=True
        )
        memory_process.start()

        if memory_process.is_alive():
            _ = parent_connection.recv()
        else:
            raise ValueError("Could not start memory tracking process for CPU.")

        yield

        if memory_process.is_alive():
            parent_connection.send(0)
        else:
            raise ValueError("Could not stop memory tracking process for CPU.")

        if memory_process.is_alive():
            self.max_ram_memory = parent_connection.recv()
        else:
            raise ValueError("Could not get memory tracking results for CPU.")

        parent_connection.close()