test: Revert "separate process replay main loop (#5734)"

This reverts commit 94d578396f.
This commit is contained in:
qazal
2024-07-26 22:38:24 +03:00
parent 1c007d3c8e
commit e4ad7684d5

View File

@@ -19,7 +19,7 @@ SKIP_PROCESS_REPLAY = (k:="[skip_process_replay]") in os.getenv("COMMIT_MESSAGE"
early_stop = multiprocessing.Event()
logging.basicConfig(level=logging.INFO, format='%(message)s')
def diff_kernel(offset:int, ref_schedule:List[LazyOp], kernel_changed):
def process_replay(offset:int, ref_schedule:List[LazyOp]):
if early_stop.is_set(): return
conn = db_connection()
cur = conn.cursor()
@@ -39,7 +39,6 @@ def diff_kernel(offset:int, ref_schedule:List[LazyOp], kernel_changed):
logging.info(ast)
logging.info(applied_opts)
logging.info(e)
kernel_changed.value = True
if ASSERT_DIFF: raise e
continue
# try compare
@@ -56,7 +55,6 @@ def diff_kernel(offset:int, ref_schedule:List[LazyOp], kernel_changed):
diff = list(difflib.unified_diff(good_src.splitlines(), compare_src.splitlines()))
for line in diff:
logging.info(colored(line, "red" if line.startswith("-") else "green" if line.startswith("+") else None))
kernel_changed.value = True
if ASSERT_DIFF: raise e
if changed > MAX_DIFF_PCT:
logging.warning(f"detected changes in over {MAX_DIFF_PCT}% of kernels. skipping further diff generation.")
@@ -73,7 +71,10 @@ def get_ref_schedule(offset:int, ref_schedule):
conn.commit()
cur.close()
def process_replay():
if __name__ == "__main__":
if SKIP_PROCESS_REPLAY:
logging.info("skipping process replay.")
exit(0)
ref_schedule = multiprocessing.Manager().list()
# *** download the reference schedule
if COMPARE_SCHEDULE:
@@ -111,17 +112,7 @@ def process_replay():
conn.commit()
cur.close()
processes = []
changed = multiprocessing.Manager().Value('b', False)
for i in tqdm(range(0, row_count, PAGE_SIZE)):
processes.append(p:=multiprocessing.Process(target=diff_kernel, args=(i, ref_schedule, changed)))
processes.append(p:=multiprocessing.Process(target=process_replay, args=(i, ref_schedule)))
p.start()
for p in processes: p.join()
if changed.value and ASSERT_DIFF: raise Exception("process replay detected changes")
if __name__ == "__main__":
if SKIP_PROCESS_REPLAY:
logging.info("skipping process replay.")
exit(0)
try: process_replay()
except Exception as e:
if ASSERT_DIFF: raise e