Skip to content

Commit

Permalink
contrib/intel/jenkins: Add IO_URING test support to tcp fabtests
Browse files Browse the repository at this point in the history
Signed-off-by: Zach Dworkin <zachary.dworkin@intel.com>
  • Loading branch information
zachdworkin committed Jan 30, 2024
1 parent 8d1108b commit fa38bf8
Show file tree
Hide file tree
Showing 6 changed files with 37 additions and 9 deletions.
20 changes: 20 additions & 0 deletions contrib/intel/jenkins/Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -333,6 +333,9 @@ pipeline {
dir ("${CUSTOM_WORKSPACE}/ucx/libfabric") {
checkout scm
}
dir ("${CUSTOM_WORKSPACE}/iouring/libfabric") {
checkout scm
}
dir (CUSTOM_WORKSPACE) {
checkout_external_resources()
}
Expand Down Expand Up @@ -416,6 +419,13 @@ pipeline {
}
}
}
stage ('build-iouring') {
steps {
script {
slurm_build(BUILD_MODES, "ivysaur", "iouring", "ivysaur")
}
}
}
stage ('build-daos') {
agent {
node {
Expand Down Expand Up @@ -517,6 +527,16 @@ pipeline {
}
}
}
stage('tcp-iouring') {
steps {
script {
dir (RUN_LOCATION) {
run_fabtests("tcp-iouring", "ivysaur", "ivysaur", "2",
"tcp", null, "FI_TCP_IO_URING=1")
}
}
}
}
stage('verbs-rxm') {
steps {
script {
Expand Down
2 changes: 1 addition & 1 deletion contrib/intel/jenkins/build.py
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ def log_dir(install_path, release=False):
'mpich'])
parser.add_argument('--build_hw', help="HW type for build",
choices=['water', 'grass', 'fire', 'electric', 'ucx',
'daos', 'gpu'])
'daos', 'gpu', 'ivysaur'])
parser.add_argument('--ofi_build_mode', help="select buildmode libfabric "\
"build mode", choices=['reg', 'dbg', 'dl'])
parser.add_argument('--build_loc', help="build location for libfabric "\
Expand Down
4 changes: 4 additions & 0 deletions contrib/intel/jenkins/common.py
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,10 @@ def run(self):
'enable' : ['shm'],
'disable' : []
},
'ivysaur': {
'enable' : ['tcp'],
'disable' : []
},
'electric' : {
'enable' : ['shm'],
'disable' : []
Expand Down
2 changes: 1 addition & 1 deletion contrib/intel/jenkins/runtests.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ def __call__(self, parser, namespace, values, option_string=None):
parser = argparse.ArgumentParser()
parser.add_argument('--build_hw', help="HW type for build",
choices=['water', 'grass', 'fire', 'electric', 'daos',\
'gpu', 'ucx'])
'gpu', 'ucx', 'ivysaur'])
parser.add_argument('--prov', help="core provider", choices=['verbs', \
'tcp', 'udp', 'sockets', 'shm', 'psm3', 'ucx'])
parser.add_argument('--util', help="utility provider", choices=['rxd', 'rxm'])
Expand Down
3 changes: 2 additions & 1 deletion contrib/intel/jenkins/summary.py
Original file line number Diff line number Diff line change
Expand Up @@ -783,8 +783,9 @@ def summarize_items(summary_item, logger, log_dir, mode):
err = 0
mpi_list = ['impi', 'mpich', 'ompi']
logger.log(f"Summarizing {mode} build mode:")
provs = common.prov_list + [('tcp-iouring', None)]
if summary_item == 'fabtests' or summary_item == 'all':
for prov,util in common.prov_list:
for prov,util in provs:
if util:
prov = f'{prov}-{util}'
ret = FabtestsSummarizer(
Expand Down
15 changes: 9 additions & 6 deletions contrib/intel/jenkins/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -110,13 +110,16 @@ def get_exclude_file(self):
path = self.libfab_installpath
efile_path = f'{path}/share/fabtests/test_configs'

prov = self.util_prov if self.util_prov else self.core_prov
efile_old = f'{efile_path}/{prov}/{prov}.exclude'

if self.util_prov:
efile = f'{efile_path}/{self.util_prov}/{self.core_prov}/exclude'
if self.hw == 'ivysaur':
efile = f'{efile_path}/{self.core_prov}/io_uring.exclude'
else:
efile = f'{efile_path}/{self.core_prov}/exclude'
prov = self.util_prov if self.util_prov else self.core_prov
efile_old = f'{efile_path}/{prov}/{prov}.exclude'

if self.util_prov:
efile = f'{efile_path}/{self.util_prov}/{self.core_prov}/exclude'
else:
efile = f'{efile_path}/{self.core_prov}/exclude'

if os.path.isfile(efile):
return efile
Expand Down

0 comments on commit fa38bf8

Please sign in to comment.