Skip to main content
Sign in
Snippets Groups Projects
Commit 3cc83b3f authored by Emmanuelle Saillard's avatar Emmanuelle Saillard
Browse files

add CallOrdering script

parent 362b8c02
Branches
No related tags found
No related merge requests found
......@@ -212,8 +212,8 @@ def get_collective_template(collective_func, seperate=True):
b = InstructionBlock("MPICALL")
if seperate:
b.register_instruction(c, 1)
b.register_instruction(c, 0)
b.register_instruction(c, 'not0')
else:
b.register_instruction(c, 'all')
......
......
#! /usr/bin/python3
from scripts.Infrastructure.ErrorGenerator import ErrorGenerator
from scripts.Infrastructure.InstructionBlock import InstructionBlock
from scripts.Infrastructure.MPICallFactory import MPICallFactory, CorrectMPICallFactory
from scripts.Infrastructure.CorrectParameter import CorrectParameterFactory, get_matching_recv
from scripts.Infrastructure.Template import TemplateManager
from scripts.Infrastructure.TemplateFactory import get_send_recv_template, get_collective_template
class InvalidRankErrorColl(ErrorGenerator):
functions_to_use = ["mpi_reduce", "mpi_bcast"]
def __init__(self):
pass
def get_feature(self):
return ["COLL"]
def generate(self, generate_full_set):
for func_to_use in self.functions_to_use:
tm = get_collective_template(func_to_use, seperate=True)
tm.set_description("CallOrdering-unmatched-"+func_to_use, func_to_use+" is not called by all processes")
tm.get_block("MPICALL").get_instruction(kind='not0', index=0).set_has_error()
yield tm
if not generate_full_set:
return
......@@ -14,6 +14,6 @@ if __name__ == "__main__":
os.remove(os.path.join(gencodes_dir, f))
#gm.generate(gencodes_dir, try_compile=True, generate_full_set=False) # default
gm.generate(gencodes_dir, try_compile=True, generate_full_set=True, max_mpi_version="3.1") #all cases that can compile for my local mpi installation
gm.generate(gencodes_dir, try_compile=False, generate_full_set=True, max_mpi_version="3.1") #all cases that can compile for my local mpi installation
pass
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment