def METHOD_NAME(cutout: dace.SDFG, dreport, repetitions: int = 30, timeout: float = 600.0) -> float:
    q = mp.Queue()
    proc = MeasureProcess(target=_subprocess_measure, args=(cutout.to_json(), dreport, repetitions, q))
    proc.start()
    proc.join(timeout)
    if proc.exitcode != 0:
        print("Error occured during measuring")
        return math.inf
    if proc.exception:
        error, traceback = proc.exception
        print(traceback)
        print("Error occured during measuring: ", error)
        runtime = math.inf
    try:
        runtime = q.get(block=True, timeout=30)
    except:
        return math.inf
    return runtime