From 6cdfd84bf7ac34efb12a363d7d9d15de4b4c5e3e Mon Sep 17 00:00:00 2001 From: Henry Zhou Date: Sun, 16 Jun 2024 13:29:23 -0400 Subject: [PATCH 01/61] reinit and reclone the submodules, added compression_filter enum, json and param passing. Currently testing SZ functionality. --- .gitmodules | 8 +- CMakeLists.txt | 2 +- build/DartConfiguration.tcl | 106 ++ build/h5bench | 1021 ++++++++++++++++ build/h5bench_append | Bin 0 -> 222528 bytes build/h5bench_configuration.py | 1 + build/h5bench_overwrite | Bin 0 -> 222288 bytes build/h5bench_read | Bin 0 -> 227560 bytes build/h5bench_version.py | 1 + build/h5bench_write | Bin 0 -> 240736 bytes build/h5bench_write_normal_dist | Bin 0 -> 259520 bytes build/h5bench_write_unlimited | Bin 0 -> 241104 bytes build_1.0/DartConfiguration.tcl | 106 ++ build_1.0/h5bench | 1022 +++++++++++++++++ build_1.0/h5bench_append | Bin 0 -> 226888 bytes build_1.0/h5bench_configuration.py | 1 + build_1.0/h5bench_overwrite | Bin 0 -> 222544 bytes build_1.0/h5bench_read | Bin 0 -> 227824 bytes build_1.0/h5bench_version.py | 1 + build_1.0/h5bench_write | Bin 0 -> 245312 bytes build_1.0/h5bench_write_normal_dist | Bin 0 -> 259784 bytes build_1.0/h5bench_write_unlimited | Bin 0 -> 245464 bytes commons/h5bench_util.c | 26 + commons/h5bench_util.h | 12 + configuration-h5bench.log | 28 + docs/source/macsio.rst | 4 +- h5bench_patterns/h5bench_write.c | 33 +- ...te-1d-contig-contig-gpfs-align-h5bench.log | 13 + samples/metrics-perlmutter.json | 4 +- src/h5bench.py | 1 + 30 files changed, 2378 insertions(+), 12 deletions(-) create mode 100644 build/DartConfiguration.tcl create mode 100755 build/h5bench create mode 100755 build/h5bench_append create mode 100644 build/h5bench_configuration.py create mode 100755 build/h5bench_overwrite create mode 100755 build/h5bench_read create mode 100644 build/h5bench_version.py create mode 100755 build/h5bench_write create mode 100755 build/h5bench_write_normal_dist create mode 100755 build/h5bench_write_unlimited create mode 100644 build_1.0/DartConfiguration.tcl create mode 100755 build_1.0/h5bench create mode 100755 build_1.0/h5bench_append create mode 100644 build_1.0/h5bench_configuration.py create mode 100755 build_1.0/h5bench_overwrite create mode 100755 build_1.0/h5bench_read create mode 100644 build_1.0/h5bench_version.py create mode 100755 build_1.0/h5bench_write create mode 100755 build_1.0/h5bench_write_normal_dist create mode 100755 build_1.0/h5bench_write_unlimited create mode 100644 configuration-h5bench.log create mode 100644 samples/async-write-1d-contig-contig-gpfs-align-h5bench.log diff --git a/.gitmodules b/.gitmodules index 59b94cef..3584c84f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,14 +1,14 @@ [submodule "amrex"] path = amrex - url = https://github.com/AMReX-Codes/amrex + url = https://github.com/AMReX-Codes/amrex.git [submodule "openpmd"] path = openpmd - url = https://github.com/openPMD/openPMD-api + url = https://github.com/openPMD/openPMD-api.git [submodule "e3sm"] path = e3sm - url = https://github.com/Parallel-NetCDF/E3SM-IO + url = https://github.com/Parallel-NetCDF/E3SM-IO.git [submodule "macsio"] path = macsio - url = https://github.com/LLNL/MACSio + url = https://github.com/LLNL/MACSio.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 71959922..ecf3f0f5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -233,7 +233,7 @@ if(H5BENCH_E3SM) ExternalProject_Add(h5bench_e3sm SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/e3sm CONFIGURE_COMMAND autoreconf -i COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/e3sm/configure --prefix=${CMAKE_BINARY_DIR} --with-hdf5=${HDF5_HOME} - BUILD_COMMAND make -j 1 + BUILD_COMMAND make INSTALL_COMMAND ${CMAKE_COMMAND} -E copy src/e3sm_io ${CMAKE_BINARY_DIR}/h5bench_e3sm BUILD_IN_SOURCE 1 LOG_CONFIGURE 1 diff --git a/build/DartConfiguration.tcl b/build/DartConfiguration.tcl new file mode 100644 index 00000000..e96dd3d2 --- /dev/null +++ b/build/DartConfiguration.tcl @@ -0,0 +1,106 @@ +# This file is configured by CMake automatically as DartConfiguration.tcl +# If you choose not to use CMake, this file may be hand configured, by +# filling in the required variables. + + +# Configuration directories and files +SourceDirectory: /users/PAS2406/henryzhou1201/h5bench_project/h5bench +BuildDirectory: /users/PAS2406/henryzhou1201/h5bench_project/h5bench/build + +# Where to place the cost data store +CostDataFile: + +# Site is something like machine.domain, i.e. pragmatic.crd +Site: owens-login04.hpc.osc.edu + +# Build name is osname-revision-compiler, i.e. Linux-2.4.2-2smp-c++ +BuildName: Linux-c++ + +# Subprojects +LabelsForSubprojects: + +# Submission information +SubmitURL: http:// +SubmitInactivityTimeout: + +# Dashboard start time +NightlyStartTime: 00:00:00 EDT + +# Commands for the build/test/submit cycle +ConfigureCommand: "/users/PAS2406/henryzhou1201/.local/bin/cmake" "/users/PAS2406/henryzhou1201/h5bench_project/h5bench" +MakeCommand: /users/PAS2406/henryzhou1201/.local/bin/cmake --build . --config "${CTEST_CONFIGURATION_TYPE}" +DefaultCTestConfigurationType: Release + +# version control +UpdateVersionOnly: + +# CVS options +# Default is "-d -P -A" +CVSCommand: +CVSUpdateOptions: + +# Subversion options +SVNCommand: +SVNOptions: +SVNUpdateOptions: + +# Git options +GITCommand: /usr/bin/git +GITInitSubmodules: +GITUpdateOptions: +GITUpdateCustom: + +# Perforce options +P4Command: +P4Client: +P4Options: +P4UpdateOptions: +P4UpdateCustom: + +# Generic update command +UpdateCommand: /usr/bin/git +UpdateOptions: +UpdateType: git + +# Compiler info +Compiler: /usr/local/gnu/8.4.0/bin/c++ +CompilerVersion: 8.4.0 + +# Dynamic analysis (MemCheck) +PurifyCommand: +ValgrindCommand: +ValgrindCommandOptions: +DrMemoryCommand: +DrMemoryCommandOptions: +CudaSanitizerCommand: +CudaSanitizerCommandOptions: +MemoryCheckType: +MemoryCheckSanitizerOptions: +MemoryCheckCommand: /usr/bin/valgrind +MemoryCheckCommandOptions: +MemoryCheckSuppressionFile: + +# Coverage +CoverageCommand: /usr/local/gnu/8.4.0/bin/gcov +CoverageExtraFlags: -l + +# Testing options +# TimeOut is the amount of time in seconds to wait for processes +# to complete during testing. After TimeOut seconds, the +# process will be summarily terminated. +# Currently set to 25 minutes +TimeOut: 1500 + +# During parallel testing CTest will not start a new test if doing +# so would cause the system load to exceed this value. +TestLoad: + +UseLaunchers: +CurlOptions: +# warning, if you add new options here that have to do with submit, +# you have to update cmCTestSubmitCommand.cxx + +# For CTest submissions that timeout, these options +# specify behavior for retrying the submission +CTestSubmitRetryDelay: 5 +CTestSubmitRetryCount: 3 diff --git a/build/h5bench b/build/h5bench new file mode 100755 index 00000000..b50b7850 --- /dev/null +++ b/build/h5bench @@ -0,0 +1,1021 @@ +#!/usr/bin/env python3 + +import os +import sys +import json +import time +import uuid +import shlex +import errno +import distutils.spawn +import argparse +import collections +import subprocess +import h5bench_version +import h5bench_configuration +import logging +import logging.handlers + + +class H5bench: + """H5bench benchmark suite.""" + + H5BENCH_PATTERNS_WRITE = 'h5bench_write' + H5BENCH_PATTERNS_WRITE_UNLIMITED = 'h5bench_write_unlimited' + H5BENCH_PATTERNS_WRITE_VAR_NORMAL_DIST = 'h5bench_write_var_normal_dist' + H5BENCH_PATTERNS_APPEND = 'h5bench_append' + H5BENCH_PATTERNS_OVERWRITE = 'h5bench_overwrite' + H5BENCH_PATTERNS_READ = 'h5bench_read' + H5BENCH_EXERCISER = 'h5bench_exerciser' + H5BENCH_METADATA = 'h5bench_hdf5_iotest' + H5BENCH_AMREX_SYNC = 'h5bench_amrex_sync' + H5BENCH_AMREX_ASYNC = 'h5bench_amrex_async' + H5BENCH_OPENPMD_WRITE = 'h5bench_openpmd_write' + H5BENCH_OPENPMD_READ = 'h5bench_openpmd_read' + H5BENCH_E3SM = 'h5bench_e3sm' + H5BENCH_MACSIO = 'h5bench_macsio' + + def __init__(self, setup, prefix=None, debug=None, abort=None, validate=None, filter=None): + """Initialize the suite.""" + self.LOG_FILENAME = '{}-h5bench.log'.format(setup.replace('.json', '')) + + self.check_parallel() + + self.configure_log(debug) + + self.prefix = prefix + self.setup = setup + self.abort = abort + self.validate = validate + + if filter: + self.filter = filter.split(',') + else: + self.filter = None + + def check_parallel(self): + """Check for parallel overwrite command.""" + mpi = [ + 'mpirun', 'mpiexec', + 'srun' + ] + + # Get user defined shell + if 'SHELL' in os.environ: + shell = os.environ['SHELL'] + + for m in mpi: + if m in shell: + print('You should not call MPI directly when running h5bench.') + + sys.exit(os.EX_USAGE) + else: + shell = None + + def configure_log(self, debug): + """Configure the logging system.""" + self.logger = logging.getLogger('h5bench') + + if debug: + self.logger.setLevel(logging.DEBUG) + else: + self.logger.setLevel(logging.INFO) + + # Defines the format of the logger + formatter = logging.Formatter( + '%(asctime)s %(module)s - %(levelname)s - %(message)s' + ) + + # Configure the log rotation + handler = logging.handlers.RotatingFileHandler( + self.LOG_FILENAME, + maxBytes=268435456, + backupCount=50, + encoding='utf8' + ) + + handler.setFormatter(formatter) + + self.logger.addHandler(handler) + + if debug: + console = logging.StreamHandler() + console.setFormatter(formatter) + + self.logger.addHandler(console) + + def prepare(self, setup): + """Create a directory to store all the results of the benchmark.""" + self.directory = setup['directory'] + + try: + # Create a temporary directory to store all configurations + os.makedirs(self.directory) + except OSError as exc: + if exc.errno != errno.EEXIST: + raise + + self.logger.warning('Base directory already exists: {}'.format(self.directory)) + + pass + except Exception as e: + self.logger.debug('Unable to create {}: {}'.format(self.directory, e)) + + # Check for Lustre support to set the data stripping configuration + try: + command = 'lfs getstripe {}'.format(self.directory) + + arguments = shlex.split(command) + + s = subprocess.Popen(arguments, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + sOutput, sError = s.communicate() + + if s.returncode == 0: + self.logger.info('Lustre support detected') + + if 'file-system' in setup: + if 'lustre' in setup['file-system']: + command = 'lfs setstripe' + + if 'stripe-size' in setup['file-system']['lustre']: + command += ' -S {}'.format(setup['file-system']['lustre']['stripe-size']) + + if 'stripe-count' in setup['file-system']['lustre']: + command += ' -c {}'.format(setup['file-system']['lustre']['stripe-count']) + + command += ' {}'.format(self.directory) + + self.logger.debug('Lustre stripping configuration: {}'.format(command)) + + arguments = shlex.split(command) + + s = subprocess.Popen(arguments, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + sOutput, sError = s.communicate() + + else: + self.logger.info('Lustre support not detected') + except Exception: + self.logger.info('Lustre support not detected') + + def validate_json(self, setup): + """Make sure JSON contains all the necessary properties.""" + properties = [ + 'mpi', + 'vol', + 'file-system', + 'directory', + 'benchmarks' + ] + + for p in properties: + if p not in setup: + self.logger.critical('JSON configuration file is invalid: "{}" property is missing'.format(p)) + + sys.exit(os.EX_DATAERR) + + def run(self): + """Run all the benchmarks/kernels.""" + self.logger.info('Starting h5bench Suite') + + try: + with open(self.setup) as file: + setup = json.load(file, object_pairs_hook=collections.OrderedDict) + except FileNotFoundError: + self.logger.critical('Unable to open the input configuration file') + + sys.exit(os.EX_NOINPUT) + except Exception as e: + self.logger.critical('Unable to parse the input configuration file)') + self.logger.critical(e) + + sys.exit(os.EX_NOINPUT) + + self.validate_json(setup) + self.prepare(setup) + + self.vol_environment = os.environ.copy() + self.prepare_vol(setup['vol']) + + benchmarks = setup['benchmarks'] + + for benchmark in benchmarks: + name = benchmark['benchmark'] + + # Check if filters were enabled + if self.filter: + if name not in self.filter: + self.logger.warning('Skipping "{}" due to active filters'.format(name)) + + continue + + id = str(uuid.uuid4()).split('-')[0] + if 'SLURM_JOB_ID' in os.environ: + jobid = os.environ['SLURM_JOB_ID'] # nersc + elif 'COBALT_JOBID' in os.environ: + jobid = os.environ['COBALT_JOBID'] # alcf_theta + elif 'PBS_JOBID' in os.environ: + jobid = os.environ['PBS_JOBID'] # alcf_polaris + elif 'LSB_JOBID' in os.environ: + jobid = os.environ['LSB_JOBID'] # olcf + else: + jobid = None + + if jobid is not None: + id = id + "-" + jobid + self.logger.info('JOBID: {}'.format(jobid)) + + self.logger.info('h5bench [{}] - Starting'.format(name)) + self.logger.info('h5bench [{}] - DIR: {}/{}/'.format(name, setup['directory'], id)) + + os.makedirs('{}/{}'.format(setup['directory'], id)) + + self.prepare_parallel(setup['mpi']) + + if name in ['write', 'write-unlimited', 'overwrite', 'append', 'read', 'write_var_normal_dist']: + self.run_pattern(id, name, benchmark, setup['vol']) + elif name == 'exerciser': + self.run_exerciser(id, benchmark) + elif name == 'metadata': + self.run_metadata(id, benchmark) + elif name == 'amrex': + self.run_amrex(id, benchmark, setup['vol']) + elif name == 'openpmd': + self.run_openpmd(id, benchmark) + elif name == 'e3sm': + self.run_e3sm(id, benchmark) + elif name == 'macsio': + self.run_macsio(id, benchmark) + else: + self.logger.critical('{} - Unsupported benchmark/kernel') + + self.logger.info('h5bench [{}] - Complete'.format(name)) + + self.logger.info('Finishing h5bench Suite') + + def prepare_parallel(self, mpi): + """Prepare the MPI launch command.""" + if 'configuration' in mpi: + self.mpi = '{} {}'.format(mpi['command'], mpi['configuration']) + else: + if mpi['command'] in ['mpirun', 'mpiexec']: + self.mpi = '{} -np {}'.format(mpi['command'], mpi['ranks']) + elif mpi['command'] == 'srun': + self.mpi = '{} --cpu_bind=cores -n {}'.format(mpi['command'], mpi['ranks']) + else: + self.logger.warning('Unknown MPI launcher selected!') + + self.mpi = '' + + return + + self.logger.info('Parallel setup: {}'.format(self.mpi)) + + def prepare_vol(self, vol): + """Prepare the environment variables for the VOL.""" + + if vol is not None: + if 'LD_LIBRARY_PATH' not in self.vol_environment: + self.vol_environment['LD_LIBRARY_PATH'] = '' + + if 'DYLD_LIBRARY_PATH' not in self.vol_environment: + self.vol_environment['DYLD_LIBRARY_PATH'] = '' + + if 'LD_PRELOAD' not in self.vol_environment: + self.vol_environment['LD_PRELOAD'] = '' + + if 'library' in vol: + self.vol_environment['LD_LIBRARY_PATH'] += ':' + vol['library'] + self.vol_environment['DYLD_LIBRARY_PATH'] += ':' + vol['library'] + if 'path' in vol: + self.vol_environment['HDF5_PLUGIN_PATH'] = vol['path'] + if 'preload' in vol: + self.vol_environment['LD_PRELOAD'] += vol['preload'] + + self.vol_environment['ABT_THREAD_STACKSIZE'] = '100000' + + if 'HDF5_PLUGIN_PATH' in self.vol_environment: + self.logger.debug('HDF5_PLUGIN_PATH: %s', self.vol_environment['HDF5_PLUGIN_PATH']) + + if 'LD_LIBRARY_PATH' in self.vol_environment: + self.logger.debug('LD_LIBRARY_PATH: %s', self.vol_environment['LD_LIBRARY_PATH']) + + if 'DYLD_LIBRARY_PATH' in self.vol_environment: + self.logger.debug('DYLD_LIBRARY_PATH: %s', self.vol_environment['DYLD_LIBRARY_PATH']) + + if 'LD_PRELOAD' in self.vol_environment: + self.logger.debug('LD_PRELOAD: %s', self.vol_environment['LD_PRELOAD']) + + def enable_vol(self, vol): + """Enable VOL by setting the connector.""" + if 'connector' in vol: + self.vol_environment['HDF5_VOL_CONNECTOR'] = vol['connector'] + + self.logger.info('HDF5 VOL connector: %s', vol['connector']) + + def disable_vol(self, vol): + """Disable VOL by setting the connector.""" + if 'HDF5_VOL_CONNECTOR' in self.vol_environment: + del self.vol_environment['HDF5_VOL_CONNECTOR'] + + def reset_vol(self): + """Reset the environment variables for the VOL.""" + if self.vol_environment is not None: + if 'HDF5_PLUGIN_PATH' in self.vol_environment: + del self.vol_environment['HDF5_PLUGIN_PATH'] + if 'HDF5_VOL_CONNECTOR' in self.vol_environment: + del self.vol_environment['HDF5_VOL_CONNECTOR'] + + if 'ABT_THREAD_STACKSIZE' in self.vol_environment: + del self.vol_environment['ABT_THREAD_STACKSIZE'] + + def check_for_hdf5_error(self, stderr_file_name): + has_error_message = False + + with open(stderr_file_name, mode='r') as stderr_file: + lines = stderr_file.readlines() + + for line in lines: + if 'Error detected in HDF5' in line: + has_error_message = True + + self.logger.error(line.strip()) + self.logger.error('Check %s for detailed log', stderr_file_name) + + sys.exit(os.EX_IOERR) + + return has_error_message + + def run_pattern(self, id, operation, setup, vol): + """Run the h5bench_patterns (write/read) benchmarks.""" + try: + start = time.time() + + # Define the output file (should be a .h5 file) + file = '{}/{}'.format(self.directory, setup['file']) + configuration = setup['configuration'] + + # Disable any user-defined VOL connectors as we will be handling that + self.disable_vol(vol) + + if configuration['MODE'] in ['ASYNC', 'LOG']: + self.enable_vol(vol) + + configuration_file = '{}/{}/h5bench.cfg'.format(self.directory, id) + + # Create the configuration file for this benchmark + with open(configuration_file, 'w+') as f: + for key in configuration: + # Make sure the CSV file is generated in the temporary path + if key == 'CSV_FILE': + configuration[key] = '{}/{}/{}'.format(self.directory, id, configuration[key]) + + if key == 'MODE': + continue + + f.write('{}={}\n'.format(key, configuration[key])) + + if operation == 'append': + f.write('IO_OPERATION=APPEND\n') + + if operation == 'overwrite': + f.write('IO_OPERATION=OVERWRITE\n') + + if operation == 'write': + benchmark_path = self.H5BENCH_PATTERNS_WRITE + + if operation == 'write-unlimited': + benchmark_path = self.H5BENCH_PATTERNS_WRITE_UNLIMITED + + if operation == 'write_var_normal_dist': + benchmark_path = self.H5BENCH_PATTERNS_WRITE_VAR_NORMAL_DIST + + if operation == 'overwrite': + benchmark_path = self.H5BENCH_PATTERNS_OVERWRITE + + if operation == 'append': + benchmark_path = self.H5BENCH_PATTERNS_APPEND + + if operation == 'read': + benchmark_path = self.H5BENCH_PATTERNS_READ + + if self.prefix: + benchmark_path = self.prefix + '/' + benchmark_path + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + benchmark_path): + benchmark_path = h5bench_configuration.__install__ + '/' + benchmark_path + else: + benchmark_path = benchmark_path + + command = '{} {} {} {}'.format( + self.mpi, + benchmark_path, + configuration_file, + file + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + if configuration['MODE'] in ['ASYNC', 'LOG']: + self.disable_vol(vol) + + if self.validate: + used_async = False + + with open(stdout_file_name, mode='r') as stdout_file: + lines = stdout_file.readlines() + + for line in lines: + if 'Mode: ASYNC' in line: + used_async = True + break + + if (configuration['MODE'] == 'ASYNC' and used_async) or (configuration['MODE'] == 'SYNC' and not used_async): + self.logger.info('Requested and ran in %s mode', 'ASYNC' if used_async else 'SYNC') + else: + self.logger.warning('Requested %s mode but ran in %s mode', configuration['MODE'], 'ASYNC' if used_async else 'SYNC') + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + sys.exit(os.EX_SOFTWARE) + + def is_available(self, executable): + """Check if binary is available.""" + return distutils.spawn.find_executable( + executable, + path=os.environ['PATH'] + ':.' + ) + + def run_exerciser(self, id, setup): + """Run the exerciser benchmark.""" + if not self.is_available(self.H5BENCH_EXERCISER): + self.logger.critical('{} is not available'.format(self.H5BENCH_EXERCISER)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + configuration = setup['configuration'] + + parameters = [] + + parameters_binary = [ + 'keepfile', + 'usechunked', + 'indepio', + 'addattr', + 'derivedtype' + ] + + # Create the configuration parameter list + for key in configuration: + if key in parameters_binary: + if configuration[key].lower() == 'true': + parameters.append('--{} '.format(key)) + else: + parameters.append('--{} {} '.format(key, configuration[key])) + + if self.prefix: + benchmark_path = self.prefix + '/' + self.H5BENCH_EXERCISER + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_EXERCISER): + benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_EXERCISER + else: + benchmark_path = self.H5BENCH_EXERCISER + + command = '{} {} {}'.format( + self.mpi, + benchmark_path, + ' '.join(parameters) + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + sys.exit(os.EX_SOFTWARE) + + def run_metadata(self, id, setup): + """Run the metadata stress benchmark.""" + if not self.is_available(self.H5BENCH_METADATA): + self.logger.critical('{} is not available'.format(self.H5BENCH_METADATA)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + # Define the output file (should be a .h5 file) + file = '{}/{}'.format(self.directory, setup['file']) + configuration = setup['configuration'] + + configuration_file = '{}/{}/hdf5_iotest.ini'.format(self.directory, id) + + # Create the configuration file for this benchmark + with open(configuration_file, 'w+') as f: + f.write('[DEFAULT]\n') + + for key in configuration: + # Make sure the CSV file is generated in the temporary path + if key == 'csv-file': + configuration[key] = '{}/{}/{}'.format(self.directory, id, configuration[key]) + + f.write('{} = {}\n'.format(key, configuration[key])) + + f.write('hdf5-file = {}\n'.format(file)) + + if self.prefix: + benchmark_path = self.prefix + '/' + self.H5BENCH_METADATA + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_METADATA): + benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_METADATA + else: + benchmark_path = self.H5BENCH_METADATA + + command = '{} {} {}'.format( + self.mpi, + benchmark_path, + configuration_file + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + sys.exit(os.EX_SOFTWARE) + + def run_amrex(self, id, setup, vol): + """Run the AMReX benchmark.""" + if not self.is_available(self.H5BENCH_AMREX_SYNC): + self.logger.critical('{} is not available'.format(self.H5BENCH_AMREX_SYNC)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + directory = '{}/{}/{}'.format(self.directory, id, setup['file']) + configuration = setup['configuration'] + + # Disable any user-defined VOL connectors as we will be handling that + self.disable_vol(vol) + + if configuration['mode'] in ['ASYNC', 'LOG']: + self.enable_vol(vol) + + binary = self.H5BENCH_AMREX_ASYNC + else: + binary = self.H5BENCH_AMREX_SYNC + + configuration_file = '{}/{}/amrex.ini'.format(self.directory, id) + + try: + # Create a temporary directory to store all configurations + os.makedirs(directory) + except OSError as exc: + if exc.errno != errno.EEXIST: + raise + + self.logger.warning('Base directory already exists: {}'.format(self.directory)) + + pass + except Exception as e: + self.logger.debug('Unable to create {}: {}'.format(self.directory, e)) + + # Create the configuration file for this benchmark + with open(configuration_file, 'w+') as f: + for key in configuration: + f.write('{} = {}\n'.format(key, configuration[key])) + + # f.write('directory = {}\n'.format(directory)) + + if self.prefix: + benchmark_path = self.prefix + '/' + self.binary + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): + benchmark_path = h5bench_configuration.__install__ + '/' + binary + else: + benchmark_path = binary + + command = '{} {} {}'.format( + self.mpi, + benchmark_path, + configuration_file + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + if configuration['mode'] in ['ASYNC', 'LOG']: + self.disable_vol(vol) + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + sys.exit(os.EX_SOFTWARE) + + def run_openpmd(self, id, setup): + """Run the OpenPMD kernel benchmark.""" + if not self.is_available(self.H5BENCH_OPENPMD_WRITE): + self.logger.critical('{} is not available'.format(self.H5BENCH_OPENPMD_WRITE)) + + sys.exit(os.EX_UNAVAILABLE) + + if not self.is_available(self.H5BENCH_OPENPMD_READ): + self.logger.critical('{} is not available'.format(self.H5BENCH_OPENPMD_READ)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + # Define the output file (should be a .h5 file) + if 'file' in setup: + self.logger.warning('OpenPMD does not take an input file name, only the directory') + + configuration = setup['configuration'] + + configuration_file = '{}/{}/openpmd.input'.format(self.directory, id) + + # Create the configuration file for this benchmark + with open(configuration_file, 'w+') as f: + for key in configuration: + if 'operation' in key: + continue + + f.write('{}={}\n'.format(key, configuration[key])) + + f.write('fileLocation={}\n'.format(self.directory)) + + if configuration['operation'] == 'write': + binary = self.H5BENCH_OPENPMD_WRITE + + if self.prefix: + benchmark_path = self.prefix + '/' + binary + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): + benchmark_path = h5bench_configuration.__install__ + '/' + binary + else: + benchmark_path = binary + + command = '{} {} {}'.format( + self.mpi, + benchmark_path, + configuration_file + ) + elif configuration['operation'] == 'read': + binary = self.H5BENCH_OPENPMD_READ + + if self.prefix: + benchmark_path = self.prefix + '/' + binary + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): + benchmark_path = h5bench_configuration.__install__ + '/' + binary + else: + benchmark_path = binary + + file_path = '{}/8a_parallel_3Db'.format(self.directory) + + command = '{} {} {} {}'.format( + self.mpi, + benchmark_path, + file_path, + configuration['pattern'] + ) + else: + self.logger.error('Unsupported operation for OpenPMD benchmark') + + sys.exit(os.EX_SOFTWARE) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + def run_e3sm(self, id, setup): + """Run the E3SM benchmark.""" + if not self.is_available(self.H5BENCH_E3SM): + self.logger.critical('{} is not available'.format(self.H5BENCH_E3SM)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + configuration = setup['configuration'] + + parameters = [] + + # Create the configuration parameter list + for key in configuration: + if key not in ['i', 'o', 'map'] and configuration[key]: + parameters.append('-{} {} '.format(key, configuration[key])) + + # Temporarily overwrite -x and -a to only supported patterns + parameters.append('-{} {}'.format('a', 'hdf5')) + parameters.append('-{} {}'.format('x', 'blob')) + + parameters.append('-o {}/{}/{} '.format(self.directory, id, setup['file'])) + + file = '{}/{}'.format(self.directory, configuration['map']) + + if self.prefix: + benchmark_path = self.prefix + '/' + self.H5BENCH_E3SM + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_E3SM): + benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_E3SM + else: + benchmark_path = self.H5BENCH_E3SM + + command = '{} {} {} {}'.format( + self.mpi, + benchmark_path, + ' '.join(parameters), + file + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + def run_macsio(self, id, setup): + """Run the MACSIO benchmark.""" + if not self.is_available(self.H5BENCH_MACSIO): + self.logger.critical('{} is not available'.format(self.H5BENCH_MACSIO)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + configuration = setup['configuration'] + + parameters = [] + + # Create the configuration parameter list + for key in configuration: + if key not in ['filebase', 'interface'] and configuration[key]: + parameters.append('--{} {} '.format(key, configuration[key])) + + parameters.append('--interface {} '.format('hdf5')) + parameters.append('--filebase {}/{}/{} '.format(self.directory, id, setup['file'].replace('.h5', ''))) + parameters.append('--log_file_name {}/{}/macsio.log '.format(self.directory, id)) + parameters.append('--timings_file_name {}/{}/timings.log '.format(self.directory, id)) + + if self.prefix: + benchmark_path = self.prefix + '/' + self.H5BENCH_MACSIO + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_MACSIO): + benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_MACSIO + else: + benchmark_path = self.H5BENCH_MACSIO + + command = '{} {} {}'.format( + self.mpi, + benchmark_path, + ' '.join(parameters) + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + # Move the files if they were generated + if os.path.isfile('{}-macsio-log.log'.format(id)): + os.rename('{}-macsio-log.log'.format(id), '{}/{}/macsio-log.log'.format(self.directory, id)) + + if os.path.isfile('{}-macsio-timings.log'.format(id)): + os.rename('{}-macsio-timings.log'.format(id), '{}/{}/macsio-timings.log'.format(self.directory, id)) + + end = time.time() + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + +def main(): + PARSER = argparse.ArgumentParser( + description='H5bench: a Parallel I/O Benchmark Suite for HDF5: ' + ) + + PARSER.add_argument( + 'setup', + action='store', + help='JSON file with the benchmarks to run' + ) + + PARSER.add_argument( + '-a', + '--abort-on-failure', + action='store_true', + dest='abort', + help='Stop h5bench if a benchmark failed' + ) + + PARSER.add_argument( + '-d', + '--debug', + action='store_true', + dest='debug', + help='Enable debug mode' + ) + + PARSER.add_argument( + '-v', + '--validate-mode', + action='store_true', + dest='validate', + help='Validated if the requested mode (async/sync) was run' + ) + + PARSER.add_argument( + '-p', + '--prefix', + action='store', + dest='prefix', + help='Prefix where all h5bench binaries were installed' + ) + + PARSER.add_argument( + '-f', + '--filter', + action='store', + dest='filter', + help='Execute only filtered benchmarks' + ) + + PARSER.add_argument( + '-V', + '--version', + action='version', + version='%(prog)s ' + h5bench_version.__version__ + ) + + ARGS = PARSER.parse_args() + + BENCH = H5bench(ARGS.setup, ARGS.prefix, ARGS.debug, ARGS.abort, ARGS.validate, ARGS.filter) + BENCH.run() + + +if __name__ == '__main__': + main() diff --git a/build/h5bench_append b/build/h5bench_append new file mode 100755 index 0000000000000000000000000000000000000000..bdaf1c9361ffc22b0cb987210d22cbbda2a2b55d GIT binary patch literal 222528 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 literal 0 HcmV?d00001 diff --git a/build/h5bench_configuration.py b/build/h5bench_configuration.py new file mode 100644 index 00000000..ede977df --- /dev/null +++ b/build/h5bench_configuration.py @@ -0,0 +1 @@ +__install__ = "/users/PAS2406/henryzhou1201/h5bench_project/bin/" diff --git a/build/h5bench_overwrite b/build/h5bench_overwrite new file mode 100755 index 0000000000000000000000000000000000000000..76e9e0126033de3c7db76d401eaee217c8c0cc39 GIT binary patch literal 222288 zcmeFadwf*Yxi>x#qLGUeEYxVRL``hG0O48`tP{-0jt!b}u>sK}ghWyUNl6CLdI^SU zGmc|Zk7+rrwrOim(;nNVJ=!zkr4w!m7BwPj6x1lFGYo1Jl_)Cj_xr4USu;t*{yy*T z{o{SlT^CG zGpo{1|4j+BQkN@J%E?Dtb2h2+oJ}hPZ>6qr0=k+`SEYycx^Mww+;6IBJ5#eTIHmq<%cP+sL2-{?g2#D!^Gt=D{rOA`f^M}PMV^((h;Tt zI~8dzSJ4~wD_NAePASY>H&05ebhOE5r6%b54*2MoFZ)S12^X6BhH8hN6BVJAvfcQZ zQeCxT){H6DD<@S~t?{j&w0`!iNwa25uB(|mP5edqq@91o5|X=E8`_tNiyzue8oG}( zD31_lMfLxb|BrwECqDkCfBet*F!=aLzwE?dSzK0KUz}IC7@%u7GbM#pYpyRTSW{W! znk(>C6>ICNYSw%!JA2yXskxJ%4=5FR#jK5g_x@H@`3oGviemhn^IF-Kc#9-eMR*Y zi=(cjY|Y9NOe1T{)>c*2l}yW>dg0`mlc&v|in#?-%9IsVYZMFSnFQHaE`mf<)3?4P z8-LSTt=vgdr_Rbn4wal-QT@%yn2<_l&2S7_QYS{Ps#vr3#+z2v_@+XiR=T7hA41D! zO)Fb5bH%JlQ_E*hn>3@mykgRYc({iV2dRCUz zR{*(ql~0UYP_|amsWT+Wopn*}^oyqE3XsTHcx7I`H-EvE`AZ7Dtl)aI?38LqtE<20 zy7KZ#^jled)rzX>s`?wJ%$_`Ba_&XSqwrhqYA0l z>WaE4b+yow>sVd5;IaaxVT!MA?Ud@8^0MkFb*swOR!pe|PbFHjZpx)K05uCHSNqB? zIv)KHR(>g7y(Y(JP%&o)6stcavGT{4fa)bWh%AniF8waU0To8)nNpOuXxfb2SyK{X zXUeLXD=OBMuPUisTl2k&@_GxNvVvX9k>stdDQ6Fu`pv1iGp6RwybxV*#ce#>l$4AjKwt_*9-#qoP+C!xNawaPZqAbaGgW|pP%4bi>rhHK9}J79ioAzXF1&N6XK zF2mKpjQLrQbOo-fab1sVBQ86fkWc;$OGf-}g1_=5<$P76J5$S_ZRRsH9JAIVpBs5T zGbDd5&=6nO@>X^tGAS0IrKwt;*-R6@*i5IGsrks`x(G1Wpy%S6WR~d(`)Kl~5Qu9v z3CdM;aY_26kPn= zj4L14a$IY08Myqo^v@Uo%W!=QS1qn$T>Pw5iHt2~c0lqHDsSo13x6+ox2venBj{2y z_K{W*`&vEBF?F$Ddu1@Cq> znDp(6+;wP(di@3EgXzu0fG`#O#ie;JfhF?XUPz9_6;Ft!4Uq84$&?b4nbc7 zKM&@gZx3P5n`S(CDwQ94IVs??eh5218A5OC5cJH1hux<$XXM$=l`7=#FB**8U%((SDpD6zUp%;}2xBoKb^!-}-^Y5Hw@!@_N zm2TeJpW}KIray}k{{&cfnxZd{&Wf2!K_{^~SX;QqcLA~gQ zO-X(@EcHeF@9+qJt=wI%y{0|QX1!YBFMggf={^7S2(0c{FUdUkHCOxJRtVm@Z5_h? zZv#(zT9fP{ zX}tRHA>=PJ{g%9bIMo~niq4*=^qT&^%W9WB9>F)r9nV`s$WI@_|6_-U|J)(u3^(nG zB-QH?k>hr?zo+a`cRZ60;h(iu+?sJ^%~LlIq4zG-Z?N`y(Tek=^}{EEH=Uv-*P8Jb zNs70NhtS(Hgx+78_GhkF@zBYK4}5Ml{ZMO;|IN_H&jltvV$LJE3hjCu>0tF5JA~hw z%=+dg`TvlKZ{MZtS#Pex-!R^i#kjH~V>dww@WyZFI3nBTr>*4NXaHY>XJGlu}^3r^Qx=YVt=??i4c;tWoxc?m6Tk! zx@JvDU47Zw`jQftF|&MCMfvq5>(mxB;QSlbR@GM^Q&U^928p+>qQ0ceS6?$#2c`kI z%%mtPxwLRmNq*kqyhYx{C3%-#>Rq&`q#(cKI?&{oSJ%{0+M@Ec71$|-ovUlBiI`7r zit#SGp{%MNnaeC%D_vw|ye2n@lrrv*CTpU+lCruR*OY^7amf{ViwmyumRyES+r?sv z;+((m$|Xg~tk- zB5bP5R!|sCvBSgyrZK2*Vnk16Ze_K4{fsPZ5cD(`;$kH{x~8(~Itk|j_@tzM7107O zDlc1uu&rCSy1JxlW!1VF7T_BIl&mhRV~7i_Z*9eD(#pPdNqMcWq!JMbEHEpp%FF6& z)|RZNRjX;pEatF1UQ(y5HQ6f5>go{)tIJo{x{^_~HzuQ2*Q~2Z#vz<+BkJlZrlISt zt*d2?lwlUGd@y8v4XcwxNWDq8YIN0PT=}ZC18{4k9!bn=2cv|42H_qAxzY#EBuQLD zd*IJ<<=GPKz@rY8CFQHGcU7!M$k!=^t5Sv#cw|kv)M}ksAe3mw`ZA17;3}ystEz^Y zGI$H)mOzyVvN{*NSb`x}u_% z$oi_)6*ZMB%Wiamxe7yRy~sDkl3n?Z)iQ_A)n!#{Txeg)(}S+0;zAo{j7nGzKsrPc z)v8=Ib=kW0C2K2cCGfP?UR_mQf})vIr&T5wt*N-dMkyIq2Ajw8^m>WP=h7Fh^KnkI8Db(V*TOV&o9TL5;z!zPXQH{dnT>Qk%x2^FCmsN9U*t- zlq6MV-N}Q+rb$DHAM*09WH4{>(n9q|>~Nt_HduD5QiW60j#b2B38+c1q>PYtxOjx3#_qQgxonCbk%ehq)8g+yxYAJAjp)$rE-I`N}5ytU6t{8<{_+K(Zg?_{ixwI4vd z^}dj0)^i*2HxOZdtaUo^d{(qR8Lg^bScYrfbGb4#JiTmvax^^LYkzVzJbh$+W@~uU zl~Ux<@FOi^q=tqcrQwS-Jm2?NpJEMvvV}xis^Q%lewBtdx6-AwR>OZqqhGJ#$7%Qm z4gXaQ-=yJB)$q+4UVl%xNyA(3pUKv$;jQc!z(eP0XpQGXXG`zW0Af^2p{sN8O^=l_?Cu#UJ z4R7rsusB`A&(i2KG(6vvTAxe}Z@pJ#S&oM1`*rJ+tKmHs66tIWpQqtH8h)OJH#GcZ z8oo%w&)4w98s5`it+^e-dwHp50782=t4ZlFcH)!}PG<=hWzf!|DYxwVI z_)Qvqp@whO@QXEkn}+8*Ve8Yb;q~{{VGUnm5hIOg_)-nurQypoe7A;Ik*5lKG<>;6 z->cy(G<;OUU#H>wH2n1%zF)&vYk1dhocLd@;nOty8V#SW;lHopGc`luxf*`GhM%qBd5*^Vcr^Si780qU;cwOOMH+sihA-Ceehpu$;R70em4?4V!`Eu~ zJ2m`z4Ik3*4I2K(8oo)xH*5H24S%9JOUM-m=SxLM%gggLdx8U+4iHDFHZv08!OC(NllRx0p8 z!kofmMFPK0m{WJmBk)UvIc3Lk1>Q}VQ*|s;;3o*5K{#FDErdB`$6Nw$Cd{ci*7q6f z|2M*!gnI@4BVkU>v2KBXL-;Jh5rKbB_-w-M0^dzIi*T#JcM#?j9%~l(cEX&xV+{h| zMEDzoYXx3Qm{WMHRN(IsK9_Kjz$*x!N7y6qGQ#H*&J}neVNU6>Oo1;aJc)3+!1D-C zChQXUBEnM$_kAkuPnc7DtXJUk2u~&4E$~@{rxA__d^+Ljgxdu^h42i*tpblEJd<#< zz{3f1sSs-r_>*eD-y~cs@cV>k6D}3_AmIxM7YY12VJ<0R9)VvXJcn?uz`F_0C7dbn z6NI_ch@}g>h48lsy9C}$m`jdW-%)9Q!XCoC0{@XPml&~bfqz4I9^r_WRp2`adkHrSd^=$-L1GO8-$a;8k65k1YYB775i1q=dxQ%J7YV$A@a2R(0xu)X zr9~`P;Dv+>31SKm`jV8OW=zLb4d~F`{dX$q+j@%`gTF!nQM)}>qg^& zzM{nioskGmf*740MUr&xDf76Z^Wn!2D%}&|g)m<%8W;0k|CKOBb2vWfA4DAMt!&;Z zRF#w66E}+9$Ax~wJCbyKo?-<0jE?9f#;_g6GoROwwI!TrN=W8!xcCn~bWY!?ON_u9 z(OY52j?|w4Gwd2gnM@zQtFoD-m@hJoz%_k=TcVxbUYZj0_6CN$u?3#s22giSY(^;7cs>f>M&X6Yg$4?zqwpgm&>46>%(*H0LI1I10q=p>hZr-B;5B_ax0+tdH3GNv z27J-zZuF*rw;Pjgv<{PQpflPH9wXrGGvG=ixTMbrqzApx#{OZxuPKykGo310qF)jA zJ@M15B9xd#{fN_mx5reu;Sk>?qOJOkz+=VWG6D~Aq%Z<4t0W0=94QR=*Gm#=KoXsa zTfol_1^Z^3_T`Fw{w9R zr^{A!ZK_0)fIqB>9`5#kOu4rBG>U)cV-er3*dz(~BMIV#Zik}lQYDfE{5^m={i{$% z2zCV}XOtrnTg0+CTilI5R4Tiem^J!=62-Z|VYxn%W~7*kTUdmqgQ+^-rHaoOgpYv2UFRV9)H{QZDB z{nfS~m`m`(+KgBsbee{-I3VQlXPr8V_!1?a^KMWmC`S248Pmd|1m6hXHxys(Abd0q zzF`sgI{o#wnan9O#m#K4WpETs>eiZT*AX)MTL%$MlY%Wu%x>fQ-DpBK8cB`7@FY1K zm7MS(a%kcpa!3j}rq`$@AlAq7*qq+nfPW=$LAj&r)K9juDfMSt*%9uIzd&UyFx9Sk?Z3MO;9V_(quFK}Ah7n03rpdwPt=O2h-;lfr-`h@4J; zgTu!x_{@f^dlJzOjL8yg5l(5KmWWg|Bn&czj0_Az{YfF!v6PX3h_1u#Ydfqu{=Ity5(5d9c5Qt4)gk6EYE zYfp{;(=uL4Ftn2Cc_?dln3x5Vg!r5-^c1O-o)jTOsVG(cQvEJOB22jm@sTJOArcT{ zB^XGb;60Mt-m|PCmyNVsI`>F|OOv5Q;|FUJVxq$ijm=mBQ@n`XwYFEAs=HiOT_ni&L@86=?@NBYE!O_muM31$d- zfEo8_X6*R_GiKXncoNMZsLUV<&8Ssov{`0kCYT}U0cP-=oYg4%zQ7E_Hlrxf41&rG zlF*FUyW)+AWkybd8G;^Q#!odfdcVMoV%v<;L^B8~Ge|-+Rwy&NEHiQw%nWd=!T#@=_t8{L)}vlGk^G}d@Px}v+VOMqzZA!$%0ShW!fsb%$& zLJSar=c65m%@xCXSuyZ#t{7BSRtzeO6~nd^&ix9+ilG9}BeDO&23WKd@e=Ug%yBem zc3s56_#3ao<3}*GUi$KVwURuI>`Lo0{&uvyn0TWfEUR>DdvX{dFFsG2~n=Swz+S`)f5 zwO(?3tx;QRUy@eBN-JrowMbOWfU4Nn&}pOXhgjhzxH+M}?kpd=u03Gp+QQb#J!{Nm zc7G+Tw33EeUlJ|NY}ZR9+sbxLnBZC0MaS2gCc0!jk)$=<)=C;`T`8&_pw^vnRx?bk z1N!UBD~?;&3|lMr@AbM8R&^x}wZ0>&c2Vmh$@Wm|fc|>o7if(r59iogbCa|ZR$56z zt?NbA0cw5uAnW=8wGQa7@0A_5uCr~eo+Pb=l~&SF>u}LJ0_H}q6RqjU4(zW#IKEcH z)>@RLm9WxE8fv{$RAo}@dokAa0%{%5UsI2-wb<5LnxvJm(n=a?{iB}(76GmZxI)IXFAT}!3!mL_@d@HOkonnjtniJEqZ_(!Sfe93lG z(}3Q2$?-L9Qkq(IO|44PCTdzP;`dQg$6KsZl$r+gNZ++X*Qr;0cuSko)UIo4SDM3tF3Pfg#IY#L)^Krg)h3pAPD3oA_#T~kD93R6>)h#v>>(YN1ZowBHDz)U&p_?o(u zrfywRx6;%_OlKqiii9ZGlEV$v!0=$|cQNk!BfgAql+Oaz_QScNHUhQi z*0L_fPHNVE+OiEuYiD+t@9QXU6*ZmFdN2VDn_vY%ix6Acd^GO#9|AWk5|muxmh1TV zBH4FIk+Oi?C zaKig18rKhQ80N$9vZOnhT8d#DVLv_W!TuHY!kVZj7;2T|KK3=yWOi58_r|><(%}Xn zOYsYn`!9YWw_l;GJ1^X-g!b5Clz?Ynrho?pfPwHHWC=5bh)lS{@>Wlxw_c#f@nR8G z?S{AD2zm>S)4XMb?h}(j4~fvwV@l>N*6^cwO&@*kgy;ZW#`MZY?Zzbyur8Q-4+loP4MF9EB(!7`N28E;lST%x&5RSt zQh*AZVCo|S1Rw?|AS?npVIQM|UeJu_(xiv67Y~XhO^MFD11+gS&o5Q7qR%h&G+kZLlluybIlMsG9~Ur_NSR^+?iUND?YSf)|s;ghHk$ zvy3~xB3te0l9EwiBM}fS!bj(yy4-fYNDi4Eg8Ni!Bny!yYK&+?;Mr!UX_`%+W0a)N z38vdEH8xq>k~Y;+ZHX;KkX-yg2s*A)H$X`?2}Uz0j1?!?TIhtt27P#+-Js%5yFtar zPJ^~t4cd$bjU2y0zYn8^ozq0%;Ha^;%ldE8xLWexg{Jfo{bSD;EjZ3uQ9;r zWanBE5tHp@HO`cKlwDMUk>UNB{nkRJji@dZ@SG!hhWw zrO=x}HbuY(QR)oVrRI3pj`0vZYDvWC^megH_=?Wk8uYeut1Vm7l=}ISVw3IXLV+^u zux&*?mdZs$(Ay5HQNac9r!}^}i8sFi@BLB;55)RFZfw{lyAWhxJp#SxnCXh=;S7ih zbQvA7;fH@0=xBT`bF3nsMM8Z&!S|qa%SS_>k(RsE)5MdC?Y~#;H;b#cYwT`1r&%+o2a&`8LQ# z(`(~tI>J|Z{xP*3^pM&MYEj!XA$kX0pIak^fspK-;C&__tHT8SvTRe`C+IE0>oS%G zy`@+Z%Kk^E--TF3z4@**&B>-)+2cE12@17HTZKXyjD5RZAK^MO;Ljw|Y6ArY{M3P7 zA_?NBZd4cuVCaEh>bu{S33oJlJ=;7wWhobdv_Clh1(ad(RRXSA#r}?jpkUt$FHm}4m5)4tMa)00nSvN$V zdX7WVy~GDoe{vO$`?LsAITww!MoLj8dh{lg`A~+QiR{8vK&Jt=jf#xC|^+3b$~^?6juyVxJO^+Hv@&G5*vlqHMjY`OIt5IB|sLoIY~ zFhrkNwni_Xhz{*g|2Ak;h`O#LeA23MXHuBY!pEo?khK_%>!XW3p45^D~C z$M1t;5F0K7gWo12RFH|`Obwn7Wr!0WW0V$#WWiDx*qFuf6SEJ8d{nzvAG7pF+E+Mf zSRL29snb&mJ`DS4VYh!4^2+9OGNc*8Z~*29Kl@atKa46cK(S;+F4)56#?iNo7|(vo zsukxZfWy8f?(rT)XFr+Ast@&$!+qWA<*~HrU!XR4A9>WNHN3FD1}ns^pv4(5AKb7m zO;roifZdv0_DAoQzOW6fu^+%jP3Yg~k09g(uZ9nGAso-mH#zbQ9t|PJ1O7*;ACUl; zaLuUv@O7LyMwmoU5P=^!pdb+F4)riCh=8|Q?;GX-P=C3I;6&;ProOk(e9CT89ZZSe z`V2KkOwC5ngO0hR7EQih1rU2k8%;2$fgl#vDJ^Vyb!?}PoO}*Y^MbkhOOfsfLJn_8 zIJ6llOPUprdhoYSTy25`Y%ky*o6E^Dn0g5;<$^h}pI)5Fe%dOQswqiqq3UEKz?x#4 zgq5h8qts(SI!(Dgf|hOJEXO5c&@Tav8KGhiZMk3RkYES0NRVwnip#Y5wDFKf1-!2} zdK0PGOsQSphWX%I-%atdTIzvQ5jn7l&o}b8l+QKR1kf=Qq7xWJ-fdPndxR84>)1ZB zeiKHg;OCGY@a~EZ7roukYnXanN^c*8^+GR#je3#Q&oO>YQU21s`f5{$aITzK^9!s2bF7 zrcnPjV6ioVdt-k}eOCC>i>#SoKPvjj&P!m8%=?Pz_ox_c%HQ0CpHGs4X!&jm>VgPW zl4+MLmB`+Ol1_g&?qGCTyS6lq!vLmr)#0lzve;-gmx%(rxd^4DO zjxy}5umN=lWZ@Tos3v>oNg8wjTmmCv(R_G#fc!w}+gD(|miN?VKJ_hN{E^!(3Z_0O zIbU}8W+ix#%HA!qqsg*qI~#FQFtteu$p~j&DD9_gS|)sl68R7;+;K$Ri)BH}SwH$~ z!T3v&s9hKrMniZc(4EazY}yvs($SkfYD?fLS*!nN;61L@|0u)%W`1MjVfGTUV=WT3 zeNY?iVUO{DfGk|j7FNf4gCQ}&T=7MRg8^|-s>T3GaE?qtlAvcdt7AE}3M&cD@hV6X zJRib(_HZ+RIgIv5|G_JS8~hj~xAQz@00%K(_>r zapXM=X067Y?sb)z|3JVcMgydUdl{OT0Yr#64NeN4Q6WP1LI{>(U0B4nn}QBQ5Ku25 z!Ey|q+@h@9_yqltNh@<~D>32TS_%{UG!q-QU}8PRn6qWwWx>=+)07X#z!VP#J(!}1 zl_`xKAZDA1Dzni}6IFctj6DWE<&ehy;a{xk=;f-`cTiQUQq`~3y0HV3L$azr?_{lJ zQ`JK7p(+f4;P}fR%s`L?mV}jGf(ycQav=3UK1zb>rMa5S0dY<@g5$ebhKgfoSS{9I zr+>s;RN9J`OGMpVsMDea4_82-ttSLiXDPP)@C>pATU1=qJE|2v@1ngP3Mdwe@r$Wb z8xi*jg#ijyhV>7Q&$a9dHz}rxNld>Nrb3F9nN5aKYRtzNaGo?r5es`BSmD|n#Z3mD zM@~v}6+Vu6ulOHA$~~S=+4RLkA9xW@#0f&jF^;W;yDlu>|X^S4{uWq#Zgvoh9#YBsA`xRI}2pN)aAm2 zCzk_*Gh_)vE$e1&-6)*_>}_I3WA6`e2Ut#dBHN6t48Z{`_W6_}v#PRT&>fzTJSu=L z!uo|mT~hr!)zeIn4~kD?HQZ!iwh1n1M(Foq7)2JZQ6mPHRowIcm7JETS5|UYDCj4E zIRSUrgFAe5KH`7A^3kU!!AGu(=fSV$VcR)7NZ$a;*sD^gqHLSg|7M`=+IB`KN?dMK zNOR(hjud1Qkm?cSDJ-5IuH(!ZypQwN;|NBo!=qVLqDW4?dgU4BapAp_yk>M4ir!`u zK%X>2B)DGnA>_mL(PZ}DX2d=oGJB| zlKALwjst~rb&s68ogTS|Ce#9tal|WntWJNDly5>gT(e2KbW1Cehq39QD$0fR%28r? z6lO>#PLY+5`AUFT)T)n#cPcy5xrDWzDCD`|eID0;-#u3CF`*sLMY%jMH1^^Qe2ZkC zIcSX9Vp0~{)HvWTTs-Li(vv)~eQgJrMF$$5bAEK*HdgaqR3n)BCI=w(m=ac|^)m^o z{V=$=@jEUE87n(%Fgy*$h989CROABSe!PV^!~Hl0Y0UUa#j9JXqE&fH!dz`<$=P$9 z2ls!W?) zL$U+yA}Q@ssj_R$KNDLcOuN#)r5r^d!LCRL9rdW7)5WQfH)a}SxO1L4?B3EnywZJZ zH@_O(;Lhnj>|XwiFNGPyeZg*wfgQb>Mhd2<7ou-mF)%u3Kr1>4hXE%@LuQa-wZ=&t z%TnnI-xNb4%0Xu67-$&VEu*y-V}Ti`k{#$7QqwakrDw*f_a{NMC+K(|^P)7zOI-S@ z7hkr{bgLiv}3~1O=zg!Vf1-dqSa2AVbIJuHS<>p9h#mI>DZaFLQj zCDJj=JOAYna}RBP>6bD8nFvEHs+qsuG~XH_2Q&W{!ga_r-|8Xv?f93?FTxH=(v)d= z|DG>n{wZQepJsl$X}&d(4rczof3VUYI9%vi(fN-P*$TYjRYxHBzJf0+mPEt7dF@qy|nPQ*>Mpfp$X#V}ojM@76)bN_`KJl;0E;tO~;2E7|;2M!w`9bSKfq$%!= z{O*|Kaq!?(ROp&!=a@r4$mub`!D@#dwCz(alv;$HB8v7LNTzB=4Q^_ZMz|GNDhIfbE|pVK|c3;SiQMQhYYJBb)!5j=U4( zVLOaU1GlsVeC-ru1QtZ3kvHeCQfg#ke2PDKAVGe9!P||kv_Me?#30uu?=Z?YhN5{%WN_v@*hO&%<@r*6JYpbSAL!Bsl>jfz zTQ#txb6zQH(dp#|Fe-C@V}F`EGz%SeAT3Jm7n|Ki z;4p#d$1l)1MNlxcX%=?~P^fr#HltIWJK$&mX9rK2vt{imu`8VhY{te;oZSbl+pISk z4-O5$2IrNcKl`?dg6PZGHP=J0)60Gh=iY+=M5MT_qp{w50^WP#Z=t~UD>`>0Ulqy= z;}^pojw^TK_HYL!TmwS>#tGjRgK#Sd`L-Aq4f(csrSzS9;~`DfHps$s12%b2tg)jB z@NlFyYIs^QS|MZDCRMQ!s$%R0=mILD<&hHE6uva)VI*(Fe48BmtIV`$ES{7yzYD3o z%SIfg2`xK!t+r0?^;IunmJEd-#k=WiqA{f*`lTPm@ zHb$p^B{a$#Hf)zkxO>oX)Oo?+!gOpOyKkS0@Ww9ypp-0Fln9;BNW^5s@LLMjDF7B? zv4DI0IV?sf(_F4=9bRUr!OJ9uaAdrZBB?Lhazx??{(}!O8zF6FWOU-O1SL4BX@u@8 zWma1@MECy}?WhJ?Nx4!K{*dcJh)jDjX|gq|A&vHuDzhbkjT{o>dWV48q5g^Ps(_qji==lnc&fF zQ6dB++610W)PUH-9PKh2fPGs|0+F33fK*eO%BN11+1D4g$C~)QNjZQqPm!CW-hD-|#vb?{638C=5SRAg#dA;5Rexhe)4&p2i<>4|nk1;C$sm{{ zsz(!ruf;^7*GL?Xps2sYehFID$Osg=h|^F8^3t@(k49eFH)(WI;lBAW!`(bgs}i-f z;GAW|J6MWMXvAWt5m|`$qPS~~C>%pKVp6fwh@&A!H6n9^HzG^$tz0TZBQpI`jW|&n zQIUU{Mnvzo8)af!Zgx=X+*Xo^=ahZKhdNK5TGQc zi9~stX+oWAmElfu z1Bo#UrKlrw_Q|;-l$p~~Y&6F{bCAH#9g&OAA?9gI>uUjGlQxCmC;0eq-RX@=ETx9e zXQ1LpR@>^`K?IHqGo1WeRkL1$ta9_3a+>aB{?&0?;$zxrpivi2089^Ljw zVz{etSbj7reauyl48z{v(hgf(EyOirv4+_W(`#TsTeuW2nraKDWzPsq!wf-150yZm9BZv)uBzU7n-Ld(3jn=XQCTDyPq>-}1R# z9{qz5ZTQtU-8l*xs6orYJf#A{r3GoeX)M(O)QhH{fpI*+@Nnv^qQdD4At( z%iTORV1D*H4in8`j9{=!XhTbSAI3|27mSgKH~R1YVK-MR_|aTyajaY8bDFHrwgzL{ z8J1Zilv!*uRF!R(9v>xuS|f`&wrAkyTVTD0PDoV+rOo>ZcAFHw+|{AdpHn- zZNSh1G@RwrS)Y-1PtdyuVFrKVHQ9+4BfhZ(CGL&t=c~N^dVRhvyV-r%TF3uUaiQ({ zVr!I=1hNG_{3a~sLy+OWv5+i&IS>gn^EDcmM`+GTrdjO!3U-6};W`sTCj+#PRIrfi zdt}h>>QHm!;UCn~jBwj~MerU&mn=T3lIEr{(LopXf8G95(3%2zMqnSw?dLgB1*Zx8 z?=V8awfHJ+(EA{;^`}TWy#7o{Q|fc$Uea`WcpeBldhIklwjouq0*zzTHu`%Gntj%y z=6_K}p1nFe`cmvYP0q)I*a=luNF5grjamD-Y(D>b`?uJ z|4Fb-GTbIPQ6qTU#e(kGuWgaAAjP-H7VlU98*K~L4k~`)0P$yt_&u?C zgVJXWpntoS4%rqv#Wn{miIz=EXvskx#GY(9=vg}uYUxkDp`j1?uy2vHgJhtCrVp^_ zYO$y%)?kZd6S@7hHVhSxlVG>4Vu4QLSaFg@!hdr=(2BePRy_AB`lUDa2}%ai&mTbl zJE0H9o?waUAibY4+PP$v?lQvdzuhV{yNlO`Rd^^(Nu<16Sa z7#oH0USZ@tfe{sT#p*Q1Jr3jL!uWtN@}9uRu!&uyG4?u)V}n0(6P)K=C(94pf^3m)#9-FiQ!Te zYijtY+eDr{ptj;gduw3sEQQRiCa%DvXMaG39#O)3!tz`7Y-?+(s3>;TSWz#nQtDVb zNi5}$t>V}3MF4AchdBUXx?E3o{7}9BdmB@iu2p{i>!6}6318cD`wjxzA z7a6e!@O7y00o^mjEfh8ZVv;$j&Dx5jO$$KKFjL`q7 zacU#DO|Ik}9Dea3S< zW<5(C&OH*d%Y~EoL{2`o#I|ajD;>_C3um=(@}9`aCz4n|ajKCKmIJj;q0-qPns-=HkL7IxEr;)BGipQleE?ZLMK6Dw)E=ScUF#EA-Zo&(yUyvAND6B$;-BW7=26v{j;v_v1!IYogJurqQ<@WEF1~IlLzt-J0xBur+tn>Na%q@NC`c z#dlFsD`X^Dz1*?7RN}o}wDJD0Mg_Z()*su=N^Fi%^*th%_ryxHCszV&%{{EdevESA zReB|U9HOKLAtR|0cRH2$g@k{DXyYAGQGl_cEz!0%)3&dRZB0VWdxCA|(t?L=i`K^$ z!yI%786h`0`py@9cZvkwp|247BvzcUDQxQdbCfmMB-FeQst?4?4fMckvaPCAwmB-p z5`p)M5Z+Cdk;E!SOqFv)<^4j<`=Ba8+}uQ!Yc!Q%N2OO(wuunlO_l5-T8np?D!bld zEgukS-Un3);%4^M*ip=&mSeX$DtAl7wu=znO_hvqO=Y*Ka*3!63pMY9sswQ}hpt$Y zrgD#?vP4uqDnfWSRWceil|81)*WY9HI)Y(m4_sxw}}wmO_jZ1 z(Ny-DDr-b#mr(OQs7eqwGu&gp!J@`;Y@eg@Mp3y-gzyfPvq7d-1LHWxTXBm=f;-_7 zwOeHMhA71MQv9Ww_)i`2r;GS*5zjlspQj0&qXc3b$`aTIfl&&4AImqOrH7>(_Bg-u zPWpL|2;?0C=a~W%pE18`%Is|Dhd5b9{z{3Ix(OBqSpR5>G95*wqNqm{@eW1Cpo%7j zFHl_4%cK2GG_V&O&akAs$$zuzik+^hD|Xbq7bM$0QOEn2sMn_uC-uU&spu+IFJk$L z{Z(Pbfu)Y3CQ)=i6!8v4m1eyVSJ4-xI4Z@w7~|qXP0rB4nE9G#{vpL_Qp`Km;@2jn)%kFTZ`D{q z+>apUo$<95v z<27Tt)!3d4C~?J4c3`rbP|!0DwD=Z>X;nk7l&Mw=-px*C4kQcGnYDh@i(v#)4KcO3 zPYIk&2;#U3lsrP^E*NjF0?qFqrDKa)Z7IWdXG+;-nrP~|1zm$K!@?ULlGmnv_^w4R zRKRF&pSky=va&~`vKbD6^dW`yIM{qE3u%UyFV^x!TE5iEcY65dLzIJcy@fV98yc9$ zhq?eZDaZnw6TwZ1U~3}SmI$^3bd)xP6TwI#*p&!&CxShRU@t&^Oq-($vOor;rnfh- zv@a3VdDRHYa&dfvHNu!`M5tK^Psx@lK>NK#X1GW7vFLpW7_@sY7<-ZOr9+fKmBY;D zLrzZ|w^0bKP^z~cHs~u$@P?M_nqRtoB3hx$Z52`I81H-vMm}63zZ3%xnA@aG zzN#fh(i%2C`t}iV$5>;Uj=9=W^4NFKfAu&L~YJ@jO;wa&JKx}n1Pt_}w zw-^LLxvS&X_#GF;GFs)764bZ}yY0Q7^R4CCCe%NIC%mNqFV1H(i*G;_!Pma?6~OPV z;Fnv1cQbl%WaK9t0FcVlu8^oxg5)a(-@5OcLJai-f#hFUjPIVTEe^X1IE@I#P*Mv( zwKMaPOv()UK)SA2{N?MzGr0PuJH+v8JJNZgOB-0>QdCd#85PQ@6W?``^T`VkO-_FLf}bX zN?=46I9CL&A3|UnSK6$y=~1h`4NiSO)up|23+sFHVA3XFKX3|#1wC`w%x8yPI_HDJ zxhj!UoTz%D`5l^8D#qEq@SO{^c)LNECBmC^e2L&C4!eoxa1~sbqed6iLUSFx`y3KP z8aK2Q$!S6&QQ^8mNeM3WfWji^M}^H+o?sF{O{p&9IU!-Y!3EtxPX-3|QDKABcx4|y zDO_Y`!^KKMkIwxw;btQ#?%8l4*jFl^Ua+q+v*BvR-m9}03p;KmJN@slM;-QPxLL7B zb@tQ9j;T!yM>E#*gdyrMAwf)^Bc?ALQDQJ4Id0tj1B$sbyhoLF2N%|&*z)0nQo1qR zXO?2{ltEJy@Dm|HFj6_sMcs@Ty3%S^HP&k6D}=n+CQku*x-y$Rtn0nu#di7KGG=JzZ55JMr7xZH^six2 zxZ334cMl!!{8WhV4{vnjbtTzfCnRllb%)=a9lqBg?@l7m7xG8t%h$@C^v{D1Lr)UJ zSA?NUKM?LUr3CNhx>2jf(?ZZ5{=iYgrKIk;2ZSUNPA{?> zR?g08o(l-cE?R=Im}^|FD9;Xi?EZVVAT^e&gyq3-4y9V=<_R*KIFwu<$Zhsg7Omhs z-wc-{&V3jTbEq;MCMW>QiaIcwaIRjM3w=@Qw?$?`WE7;)&8w6-+&a%kL}4g^I9%2P z6IK*whpUw*61wCMF&1D|E%Uk9)K4v?(nJSj)EY#aw)}h^l!I%#e-LdMgKB$UJe8nr z!=X|hg;DcY2{?bJ};LW$i(GkNDyqBjj(50xDpv=87m2sq~wPo=? zl2Ie;A23n$_~$SNCgZ@ksIk5To5J5%*kX$r>6^C0d#5Fxd^;3h&j3DrbqIV*?rci8 zia=e=&`NxWYTN8#g+n3M4sI}`L#_VQw6$B>hXYKM74*ONITnD0!qp;NTK|}}j!wNl z_9SS)(6+fW$(?=?wh3i)Ve}(ugnLDiY6R`)NHBHzdO_Kv$M;Ia5b7Xtk5t9E9^c?{ z2IK$m(VlKIk|C=XRjAKG28{ed2uY(&pOK0O$YmcCV~rd^(|&3tQ@Wb`9}9eCfL-oh zRxGF;?N`qFoeFUwX;mcbQqTgIDw5lUBq84A3t8x{zJ3^nA2PO1c8A*_LjCTEHNWk_ z+>a*g^d6v@LGJ++%WnW&EDxb6-UB%E8GkDr5zYg_1qb+>vhp9?ab`aGcXWR!(xP$o zO9Kggot~$+v@>~tmFJm?=grUr)!6vA!~lF{jpI&Voc#9J2l}U|LCy~4<-TWh@@RYu zU1l5Lfxo-pk8XS;r3WR*V}B9GLbQYg)O1S=;%8YW8^P2!-Z|5?xd(NAc+NsJOrpor zCCb!O3?BHEZE#t(DUiAk)!z@_X{cJJ+sKB3BKviWPl{2wnzUNlm4 zz5l7Wq_x0J{dnj#dsz|O9KpkL`{p86kLL)K#YqP?c6c93wO>WC=X!gsUnY}5;g(E@ z?Nz@?hF&$`2g$rq{6-jWW98Us#JHH>xNzUT0Sa}w9nq2XwHUoIay`VKfIRlZoGrJM zKsHtO*(&+%2T|E)s_Yv?Wj|H&Hs;2=`Riv(J4C(NOTzp{Q^)Ga$oLOQhhMZC%h4DA z_6*-*!{R@3jkJ<$w?<#)tWus@Y07vvzS%OxJ+XlnnfCaT?C}k4&*_>y zcm1pOEKv45A6Io6(w><~_GAxj&mE>L`sdnz)t<-T0{G{$yv{{ zdrkgV?U|(P`MW7&aR0=3h(>Ea#7pDFw}ZvyE9)GQg+iCXJ;Re$G8dZJM``?_q?3)a zJFu(co3|OqU{G@L6)ZtK1)f0&A%d&`3Ou8t?BdlRNGviV%kb~?r5zjp;l49n@!yKJ zG+IS9O2>(t`GubN&q+Ay*!W!_gaPqa_^V9WuFQK~=*+nLMsCIl5?8E-;jBo1ZIV7` z9O>Zxas5d77X-0FhvZh1V1h)BMD6F; zr)(Loku*R9NTALYV#$|}+@~CHFFT+P^?_l#`;;iCBmPLGd+D>dcHuf>F&L0$7fM<@ zUctp<2!r}<-x(V97UZ9-gbZBJI<7;l3qI=mGBokA;b9Ff*GGNvX|x72+MB4^q{AT^ zuqB3D5s@zu`HDgww2+qVnw~R$E;LKC@0PT9yn>6z5T@lC?LfQL_}qACw)@=ttaSIe zg;|+KU|d!Zz`q~4IV&@O41jS2vH*+&kU<~^Kn8#b1TFwD!3d7aa_4{^J!Uq>ij8P- zHQrve{o|Tvw)bEC()Q2NCk0{F_RrsZVtZ`e_}k#z?fr}PZ~yp(E!#g`_9^haph^7( zX+B(fWczc=U)jEWX&m_{x4*pfv+bWPe{cJfOYuKQ@V%m3i)^&mYcrzsXj99q6U+K}du`h* z(IeJAGtqtZUU$x<94U;C@kqLNyn)oce9Tk@W?x9K7!2|8-(q&rKatIzE~V?@teJcH z_$-zzKVy<$muHVBxDrMuNeV8Px=Z?dAx5c+#l_aX~dG0#d`JYMk^XDe7b>fW)f$?1N@saKn2i>$JN;|bzpka(B3PDkpUn70si+*=4c_ASJhi2v6R*JoS_ zo3?*kd+4v*_Ft3n;jnG{7mPmo$L-sfKfC?Kb=eEyauChDoJ5~3djg$e8#+e}9pg!K zfKRqRx%^$}2yZWa2123`a!bZ`2)SkS;Xk5qD>XcMr}Uhz?QbmKz5VT_9a^-3@T5q} z_RosPcYz4dY0nIUoEIUd?Bp%eolc}Wt~UO{UpeSc2=|&Xhs3=#h?$E{eq}nE2f1a> zx)&Wpn7sK{Vqe2}y8Jcwvgc562)%0pde@?tk*Uv0N07hIo^v?Qy)5p|x%khJ2HdNa zUib1>kok~>AF$s%i`#N`9*l!a--Yo0zoHC!^P!>#iZ43(<6Qu#fBDA}D#8U~bi`SZ z>(1#y5keRp(Y^EuTnOcLGgbV(utW2VJ7@fOsn$hs5G0?p6Zc}oUop69BY%ZqtV9kf zK)oH)(M5CEMf2782EV-SE`pZ5{2sY_%L!l?R;{5AkD+_7>4uz_&`n<5kFK)o*z06= z#>efky%@uaw%E)-yawhXFmL~OO&43qwLSJK!X*9#m_>17`^?4|@gABLdIlLIpmfZB zDcw6hjueB#9tCFaBgnzwws9PN#tY05;G<`G_XjG5pl9 z3ZYw`eT_*!UZvS%B>jMO`#>sGL+f|!X{vO8vL#`nO7`cun8_06L#wlA1{P;!a!#}m zSwL{c%&-tSK;&?4v=A2nae*~IW+tfR^9bih86Vya4mCbtTzH>_92bTj6Z&LK_#9(` zcXa%Zm_6eh6K*6UXHbp_FRnY|5AX>Fm#r8dc51zVm59N7NxCm55|Z0p27#|QN9#RwR5QLN2s#`wkW$mgNM?B+ND^s@H>LLfU) zjH5)%z36i=W@UkI*&FU33%!2?q#1Ms=p0M?wtJ`4p{USi!d$7D6xDW zGSB0}bX(gCxoTWe!-I@N9343QU<6ru7#Adtc@fovq}L#6`Rgcuk|MDNTZ%P8&G@Tn zd7gV6RtPV!M_LOF3=-{NG=~Q-Mu`I)C7u9tF{EG|mAdYmj%2pyB`Baj+@EYkE-On$ z4C{HfXnG`?h1E;(R`q;bBoEtBd_xN;YhWA%CJZq%9n}_28 zug3NRpBFfce`$<`-u7JK8*aG0pKW*@B_r}S?B~%5{EY3mBlrz(K6PDiQDNwwQyY*E z9HA;INOKiD6A!#!Fe(mN1%Y?S29pXlJcT0HksYwW1=@E+=y2FD(irt_LEvD)h9~&^ zLxOY?94zRFkAf5<5H-fQGFbxcc=wO}mX3p?j8O;eiir7!{P;CgxKM>rPaf$+E|b-B zdt)@g)R@K2h2F~LB8;A6v`AJ1!ib3`_c-S8T!?JDSa zbGkehLdI}c;iwM_10Nb2o`iJQk6y7Sm{;^iGi$Novis2)^158~iixZ~ygz{?xnAg$5y zMmCDVJR>6!5jbd|8BouUwx)yfAX~$g=HB=+G=pGRx6%0Iu)vna*H38t|S6l=FROt2lk1@A445m)0M93m&OJd<_a7| zFwio_#|T(b?=GBsIA7RXx@g;g~y%0U1@3nXmq@Fk};~2#YcFEk(_2RqtWPi zeS$Hn+x!I;l;hvkpi$vc5_ab`?oTtzP_u%L{n>@1UScmq1HefLAhi2)jc<6+=;yFs zjoQv43PzX85A=3KN9T1M8j;-xfq9Jw+<7V68v7^Ik8JEer#`i@{~Nwk!@c?Ki5!UV zUA$20$``R)5XiYE@7la;@|Kred-c*~TY+96=t94=U2t0#*hmKeZf4+7` zXTh8q5#J=^7`7rh*1m(1(2S=GLZiEk#@A1*KgIp`xw)Q;=BD8UH7T}`0`I%Vbv}+= zlw;g`3`=XfpD^4zjXBS_=k3@k8yaDjyXSA&%K1F@jcaL318N}qjj`))OxVAQz4efHWSN(wja5M;isXg_Z{r<92+0rd8R8?g`C+wvH2xQ{`n}eelMJfIp6W$ zRfVC{ai~>ZFfGuPP1`Qk415BDm3;~3;pc&l#j?Le>5u*o}XBr*dEKCAF4gz&_NmlXP^i1D-YE;wYf}cQ`&{v+;2Kc^Ov#V&?d$L zU#30Hf12q=k0?C9!#jO~;+r z9lyaM8x^m%vLoYVR`#U$RaQ1F{%tFJV%%e8Pl(U7vZ?X&tn7&RL@S#TA7^EU$4|1d z!&IgQ&kgTl_o5z)QZDj*qw?hYx3M^k%y&Q9mDl*O+x?@L0in`Ww-0m88>1xPKU{ zJuLPR=m-ucI6U?rCWz%>T~A8vXC^p;;D}h038oTEjo*x<{{-ewh}SZIBJ(H4S2CZ* zd|JGi`IDGGDPG9@NajbzJvuEn zj>DRojw3JPze48E*;$w7oxU^nb68dwh!lhjtn6NM8|Qc6=xF+3cMbT&Q@fu%=-=)3 zpT$`vsRYCAA@`%Z@k*%R{O-a~VR|22n7%GQI=2{ID}62=pVJXbxJz86ON^yUyroO* zrAr*9TVa`wD8)YlWEgMFlM&Ya_^C$VW9V6q=V>g?YkDf(rMstNyAF45=j}!t)W3w~ z_zQcz{=L5J1)$9}j_trn*Ytup@7Gryp69NafHrc7>i4RL7~@!n`|+{<-M;&2s&W3) z%35sQ|9>)ADN-@iiyC+XI}t|H8ioj?qYR_Hb{HLH811#g=qSTzuN_858Af~UFgnUG z+N;9oD8p#43ZtV8qrEDOjxvn)sxUgrFxsoa=qSTzuL`5145Pg&jE*vl_Np*C$}rli z!ssZ&Xs-&RqYR_HDva=q1(&*CcoxC2@ez#pvH!pg-ROx0IXxF z&i_qglAmLeHN?C9*KmYt(?+QGF+wHm$721|hG83vC#-;O&Z@;i3K?r^GFMDln9{Id z;<9P6tf&fQ@syucM4nR8a{*-dkGVH~j@PUWm$-am@w^eZclB05ou#hV(k^|i*&m&a0i4NaNIQEW*j$7F>qBo!%Y*~TojvM>wBgd z-gaf)Gx>E!xaIY~Su#G{QL;1dOx`M;hciUqDpecBm!b>x>55b^7q0Vs<6&>E!o3)8 zme{0+dkx0Oe9qxBuY2LqoPORrdTf|0N)5h3= zn>|O_iz*^Hyc-r)=sK$y_a2Stb1=4t{kHU1?;t}liq~p?C`R#m$Ts)Uj-tv)O!vW_ zV;0w++DLnS!^8UNIvdv#*BU$+Y(Qu6M_k+T!(l@d(!v8JAHRJAxIV+_gPsco)sG?zP?5hM;OXVDJ^y4O4z?i%hW+8u7p z{T_Xxu`JA3x;_pOZG-T*{sFvrt9dkn+Kgo?wb$YIlm&xGM)A+=J;9)(s2snF{YG&; ze2`|OYaG&yH0It9{S`!J!m&E#UU7pq8YSy+AdX2dqkyDswDdVBlJgg>at0(V`f#pc1AJcNL zN2qK*EUgNUHmW^N=itLu)J$y6{A5m1PDm!nrN=+w& zcSyE=E07)s$uO%H(Yp4l7+BeGv+-Iv$5l4j+?5zwarH#c_Hpc>O}U*^?8HIUGk1FP zhzz&&D_13Lc|WYrFP`<;_{?}VZa!Tb@!P~SA$(YkO3pKInrt>+ui%~!5tR+^#Fbs$ z95-;I?euEb5vKPFHDAq!`PjHu;jm_qXx5gVNNLT6KD1nR+ca%nevbER!Tw_==Tcp+nPG*`;8ystdn zaElaabFX8kT2{zTHg4c1=~eUk+uYrd6?)1_)l()OFt}?2bGR2dU{0s%gdftf>V(}Q zTblEpLbA3iQ7g1x4O_BPMGuwNpU)nR@O+ndZlJeXb$Y6}y0j7!y({h>8&Txu3ba7i zaj~A*qxPa*?TvRw9)*dW`P-QTyXc0UsNMC6lisc0iVHb-zyWlk-Bc&)m0Mm@v#sEI zlgQ4f8g#Q}+?ZLx@k7=OzJD&Xs|K{O0S(9~d5CXafuBg7 z86_tpEu7hV-KuJtK+X`jQ8`B-RaK2?ZKSZ77Wk!*`v&R8iUVX1BVB(8u>T>%(DvtT z!TV|wPm(xwg1r%+7V^+JmN)8}uA#bty3Pioak^rNxH~9Wi4G2r?bzXKUK z(h_WeuYyDR;_RLF!1gpIW#nk{8T>8PmfQ{Yet7=)u3SBl4}k0Hjh6x0xZbMkbp?Df z)ffWN%(!cYjt_JA{*<%kvVAC`9H1kBn>cflQ?y<;^V0n>|LiIqI!!L#!CcdT5)E z|JRJgngz9zWV_wHxo!X!L8zpEnS_nkHsQ0S^_Q{6Tiw6l^=IxGBoqW%*lDikL*N#i z`nGz-hb@AuoYI~%?3wBXIu#0@vv zqdP0F_%Qgzc>UtTv}ZUx3rx>&?HK{ja?>*+v23ZDlps*JjhYU*m-%2&N97a0S9|Vb zMyBUJ?YW;BnV$Q#XEQT0J)6B{D!T|(Ro|Dz>vg=*YfKE|qG$}Qfp5j3#c03_1$9h= zq6NoP^g9bQlxwhnEXLEoPg5{W4V-SlV;TxHlxtuac}xS#!FaUXpY7T9t*zLGUu(AM z*@|s?9vs^Y*@|s?wql!}t=OigKikH?cGWKfx3Q%?;}-O+znepWv7VlIoakBa@lj$+ zlfvT`B!$<{geL;<__d}O=ec}utUGyc{gv=?dU__}Xrd`5dM@APbSLkszXV>Zc13kw zS#jM_o$Jr?)!-F1v~kt0qY@hHkKuv640a=eb@J8V6*aVW)!w5LYU{tjW2N_;+T+B@ zQS^1W_w4$>>HgHw?+2V;_o0&IY@7J~jrOSc-MY>0*4iGe?a|uLTKidRd(GC(c>A;l zqN(lI8W^V5thHw3cNX%K6IM7q37tUwad1pxyZR_5u{(}OEofrvOwlCveRv76)uw0? zy9{0}#6IP#`4YQ`2TWq;`f9$!PQw9JuFfnLs^H214|+!pZDyFG5}NBT#$oT}%X}GM zj7CN80u2Fbta&IGCn*1}7t9h&6LbpNLLfhi!oSlG6Qd+v_B#5r)ZOU?m&GWv^O4-rT#lm*MEEC;Toy` z4%GGE-gvlH>c0bZ{kJzBu9y1nKwbasjfeSC{~f67zrFErhtz)u>iTbQJe-72Ir6WM z;BkUo1$W?!h5V}vf$xid^bNy z{{3gXbDR4B=9js5IbI2qKc}(u?L_0bYV3%0C)Vyxe0R3}#tQH2xbBJW&CZB-?fuUG zp!sWraAEu{(Y?vhgm>uWcn?>5nd@jQqNW=^}c=UgW+2Hprdj} zs*(Q)U||M`}unHCT|1Y(;!K> zOp<^k39XW(Cz2!}Ndl52v?Pf)JPkL*EjY4%FkY_Vz0Q&K=Zg@x;PUYLGojG)G>viY zVSDS3ft(1xBQ++vhwZ9w#v5(Ew~46#$tzJE(pbMm={MrY$6kqVZidv>uY;~>#w$-p z(U(|kdO>$w?=|U~CH*>PsD2MKRKI`;!IBf}it&CFiByqRRdX!Z%Xt4#{{kFUx@SaC zrF#GhOLwP6Rk~8hEFIr}09EN`Le{0r^h#2?aY|?DMtCJD-4N(30}fqiippb1bA2E9 zwDnG;fG7N2GVcEmLF_@O{y0gDf1KRQKUWBxD*h7=6GutBVgDt(MDiWbPVr?K_pcCq zLGT$teh8j_cZR@H@ju-62Qwvp=6?ytNxmc6Db`52J5aat_Qu1PQvV&O>%YD6uubZ} z19knkHy*y1`tLwp|Lu*3T~hxYsO!JI@z5;w-+{XR+Zzv^<^4wo>iTbQJiIL9-W7r` z2tFhDfZ&}WuvGjH_x-_4iJ$pj!f}%Ch<1uYq}&&Fpy~kH8xMi|-5%oW54|3A6gGKu zmL2CR;i{ufc>uf!u@~;TZb`-6!I{K}1xc4STd}+tpq==1J(eM%DW-M|<{OpLprmZS%V__n0U$6=((Y?-5 zQ6HYz?<2>cbw<%$NLaF2wLiNjeq*d~#>c?Pm;mQr%p16LvBo#biF2~&)e`sR8~CMI z;iSgEnKA*+a|Qa)vc(#gmlJ2_&#wjA3#(XGd*Nyg^%}I1Mfi|bbNwSYj%8qRSPh8{ z-+Flm=XX3>e?7+P&HZnTUN`Zj4IoBCfrfGb3_jGd*b9{@tM+Y0k+!l(TUn&7EYemf z(pD+bRw>d}U8J(*st{OxrAoG2tzjw~hq7?d4mY0Qwg*^b61%{tPgg3IRj5TKv2LS& zr1CL!t}}^UkQ`n=NFqx8V95zX_wmNpdaP&I-Z<>9ytlr)_ke`QA`~aW|AbXJYWR16P5?d2P@rx8K@rPmKqQjE8~oBW@y{9E&X zqvwpnk zwSSU4w?uHU;3B~pf)heujQ9^YOpKCvmj4oZ?e><# zDt377YLw@}+7QS^tBSwF#6=RX;J<_urM&GGGo}3P6=zEM+bb4G`P(ZllJd7#TrA~p zuee0Y-(GP*cYXbi5wr?M2{s<7kJpC4a`9hsn7Byd75ta*SbqHze-kAC_J&p|e~gsB zz2R9>{wOJbd&7&Q{I&dAF8Xm;=899q7u6-B}eYznFbxxufvs0`w-c zqMYszF+`6A3!nbA`D=`~AmmyMT|4oav7*mUbDfUO&9LpE)!FYOgv4MgrqRERkmmRh zHiJZ39C9`mM#04vj_!Bx`KU;HzunG3pXDa6teBl2PG^W!xiQL};K1&p2<|9sASk~A zDjN;zW{4Fehn+IRVRj7_wIPQzCT`5c!`nmZfAh$?J_d{@vaF}@Fyp^leJ`Km(AC~lk#d|v(&6Zo(hL8ISw7ef7qZa%{|PxA2d0^w@61Ln8jM0{$29|LQytZ(8t0RPVMjwjT^ zhkx8Rfq(djk^0LLEE9ZGaFyVvf3o5W9+_?Jrj(x;-4V#!zJE#g7-=MSrY$hiGP{IKTF~p5`T~2R*8SR#Lt%aBP9NX62G^^?;`Pj z5d2KyFO>LGB>pgo-(TXNEb*HKw@LgDC4RBQPnGyXB>tHa|5%CFB>08Ie@EiqDDhJy z{v{IsG>P9`;(aH$S>jhoe3!&`Nc^)T{!tQtzu@N*|4oVivc%7j_=6<=sS-az;x!6x zl=yE*{AVQol@kAKi615Le-ivc;;)kU-uKM+OZ;IH|1^moF7dVsz9;dQN&JT;|C=TL zr4s)riT|VEM-qRv#D7ZS-!AbBCH^@QKSJVtEx1nNza;VRmH6`{ey+r~O8lP$H%a{0 zCH~VAzf9s^C-KuI{t8?mIrQZ^I=1xa*aiHm9Is1ZxP*k^5T8z5$9k_Xyte3TOl3F@ za_WOo{Kzg|xQ^DBA9c|}u*mv_@Wyz((^EPemkOubt-$k-E0uPS0#7N&k#S6c=T;7k zJKeV^@RZKb#}s&Oy-puf;2BonbUO;1o)HV2?kg5xw)P_Ei=f{P{ch-sp)ZF1B=jet zFM+-U`b*GXf?f{296CnouUG?pJ@oa^H$mS7y%u^c^g8Hu&>NvQLdT@!D|W3wp^~+6 z3OuD8z(+9@cuG^XrodA=MQaK?rP*3j;3=J@H3gp1e61<)44aQE=OgQzfj0y10^S9D z5cr_ebM+HW_f=28q~~DLbMRjV|7GxB4*%uwuY!LS{NI89JMhPQiK{+@|7Y<34E|f; zzZL%9!T&q>H^ILtwscr?>;gwKiZqcsJd((zhT;3>_}ngUNLZyi8}0#E5o ztts%7&e56z&#-wgVIEAm33wCmPT-xu2Y?R%9|t}T{1@t^sE#OG_A6nIK+)S3d%uwrCh3?mi-7Xohw-VVGE zcpval;G@8Q0{;no0r&#&HQ;N&mB5w2H-T>g-vhn}tO3>lzXE;*{08_9@JHZ}C@U5h zIQFtWFW2TM@RW|!ngUPhSgk4Wl=912D6j%g>9tx@;3>`3ngUNL@7xhmfoE6|vMfT@ z9-s$!8}K&Zy})~cj{qM5J_CFP_#fbZfUg2y1+D>wtLw=GX}Q82B;pOW>El z24Dkl2XF_9_%o{$#r)Y@o5QqO3OqQbj8xz$y;^GuJf#!0rodDBH?1k~l;&tnfv5Ba ztts#fn~SXH!h}*_DezX{t-yZ({{eg$_%QHk;M2h8fzJb90losP1Xcp8fz?2K2Fmd+ za5Hc-@C)D7z#o7=ps0J$d`Ij@Ss}QuQ0J*b8>YZhiVrKZMih8TuhN1A>dQMr-1(k{u}r* z@MT~HumZRixE8npxB-Y4(~ggTp94P!)&uK--vhr#VRy5zI9IP`WYQlki5IUiZeEQ~ILTKE@x4rh#Ok^8 z5E8H5u?)`8-|WlhMLo(Hy&2bMe0{Et9~kVG?CHKax$M}ZY|US&{2GxG|M-xs{^Y$F zpPl*VeZSTyx_8{(``wRP8P6OLFdu)t=vLk|;BSUtxnPv!3&ZPSf1(suQEv&?DJ%ay8672IgvhP=>2nkReuk*$8W5Sxhayf&LM{dX6tq=KgGC7!4m` zjKB(IGkx&^#oS%=t;{g;PsGm_WiNABXD_QC3rnybu&54U%`}TD8S^84%ul7)lj$)n z`lz(%E4(;IYv^w7w3dT4e!J^HBh=o2)(2J`}<%8Qdg zr-#!*r$--^9({tQckcnx!%3>s3-_i+AC(?`f~D7xr250){Q)` z{CcF;xA4B@$5m~1g1V~ZyBfkX@J!bY&n8_-htquo9#OjDktGV3&t7W=%6^Kg6ZZyx%a#r|$+i{Np!n`B$vL za)aOu!3@E1f+Ga&f@~xOtdRn?ltru-tfkK$u^7@7i`hz+us)VBTsgz(7R7M7Au*h{ zHRWH`2%i49jn!3&8uMX^q_~g39Yj~$OmxNB(X~Fe$)`N_qCFU<-<1~`v*5xNj+ea? z{Wy$oEd9V?JhuTv*o?ABTpcmmehSQYhE-ke>AoVV?Bo+Ma$kvttUqv&n< z_miMi?kAE2uM>PsaHC+ggkLP^-H+>JIX+C#CHRowJA(L}ull=B@LR!Nay(vehT#2z z>jWz${M~}}g2&47A%dBL_Xt)Az9Hdn7u+HkCCC3NI91TQ-~I~G)ra0u0`L9V=Mta$ z7W3~C!O4QR2rd^~D&ZFjej@1op50$0+yucgLEf$K?|BKoK=32MNI8C<;5b3I;4;B~ zN%&$x@AvU6a{L^@D+Nmg|0DRc#48ZoAh=iX&k}BwV4>i1f_8VxGW?d~SB2j@_qdO7Nj&+;{My6@)CaK_^rVYudPxx;a7_vK3tvBh~F+9Y$?Py@LP@F+xUHe z->3L}jUPT7oU${+ow8pCeG%&G_^rb4E&Sfc?-TsC;P)+lKOyKoGyfOh^BR6D@p}`$ z_wcL1?<@Si!S6?R%3huBf1tgJA3g@0vJStE_JPK9tWl z3;BGLVK=fW(JNethLd4rmOH8{qaZrmyYV{CNQ|z=JXOOP_F-c5dh{3@rN=;b(egg) zRyI2P-LJv&yx?Z<-0lk$S$lYldz;J#OWs$Q zWgoE*Rh?%=Qd##S)P5%D#^-aSmB>+5B1cex3A{ce@Y0aLt3m=V2noCvB&?@XOQ&%K z-1!{UB&G^-w32$h#)O+0^g%k$(OFLC9Xg-U`3}WY$#CQl9`iX$NaTnhk)wYMcoUrm z==_V$8+6{L^C_L}(xf2I=kOenLvch7yAe6W223cUb3dJD>AX(oEjpjj`L?CGL7mUx zFCvG!h#b};atI5Uu#nDubpA=_H9Bw7siE_YK8GOAzg!}6K#4jBkBA&7Vo(pAd+9tw z=T$oE=zL74!92yF&F3f%ks~%lj?NG{5(7*qrSlIuPt$pYPBop)bhfpefl%jjl!V9; z5h6!Fi2BYWKfw(p;T}3q(RrE9S~_^N%}=QJJ3-+y-!AbvXiuF3^h6HEGsXfschh;2 z&P#M~Gn}8Wi4J=|_I!}%CrC_=lvC%ZIFTdZ3_G9BU38wHvy4s^oe$}-$Ccg|>il?# z%rR-|9DgQqteL^*(Yce(<8+qNSxx5yI_zz|JuUS4eA7|7zN}YqLL=K!XN->?=={!p31v)F~yhn$9w)EFf=W{s# zkwck84qFmALA4o|`a3|r(Uuv>5G(&00Ih{Wf3A$5)o5;+dY7<1{| zO6OrZ&(q;!O~Si$*z^1J`tX`>lLR;>N1fwuM2@vFN+F$F=sZN{-*hVIY@ox7ga3sA z4+1j==?8(a4S0H%{a5tUNj{#U^An=zSm_KvpICq%m~srA;dCa@!4t@G9-6%h7nZ-` z$;kh9(^0hB;(EHFt2cc|VVzEBE3(+iEVeR>tqB9@AnmP8dn?o4inI%>7+P|lU5VR! zLMM@KX;oKr4QI@f(02o+9#N@;4&wZ+_&% z%cWg>?wI|qe}Uz(8!Jx0PjY||MXeVd4phZZ=u2k+9hJ}Qb;zfZ2}e2(Bc!4vms|GxAKXJ|nnG&?fnn32qkrv*hOz ztPnILzX^iR3hon3lKeMF{>Mo^;{+cU+#z_W9XHd_-`EV65a{CHWsI`HT>}Pq1F_ zJjrj4;5xxSNPg*p&kI^4pDP3(5Zo?!ndDz7`FECl5(V!P{7Ud_$?tl>)q=-MeiHkj1TT>M zUy}TH3&u!(rGg&{S|z_s!IuS(kbFi8E*9J_c$wt4P>}nt@$YQOe~IM#z2HTX-(10W z1baz-lLh}R7$*5#E_k=#*Mb*He#L_C335X@{yi!A)(Z}h{B97e5{#1k#tA+pxLa_j z?-+;5`0MTd%;1H-vYr81kaTGT!JeF zkCXhl5o6JwWLzPh{}Ssnt%;Mm-)0Z{z>bHqFtw$kairh%DCVO5bH-xOsWWGB7Hw^` z7ga?$+-vO7yX|4s_UN}gJ#HF^6`>bbJKWzJ^Z#`wE~a?YGm1G5=IL<*jv=f0Us){4 zle&A7%eo(_wtU2BwcHON>Dc2NVS%$O_5>gv&XLdOhW*@k?9n=dvwbo+yRSEck>SkX zM4drKs|>v9+l#j09w57?y=XNs-=O{S&8;0aBi}MB33SBd{MqPxhS4`E%IG`BYV;jH zz=%H6h)#|&qEoC!bm{=45`z@*tBTQVp;Z6#1#Fpg>}?Lb&-yD~za7c-fSw-n&Qp9~ z=(4~ldL1+%d%v_{hJWIP+X@iO=$jE^^vxP>^qo1u=sO4ZJxi5$^pqGQI(xVgJ!^sy zo$tLJ%6$rUm&5We$oF;3ND&NBMOH=@bZqRFgBlPNc%6B^NGYSCua zqs^4lY9xZ+cQMFmXkbqI{imnLm;pZRA`6ymIN~JliRf)5pkh0^~v+OW^dkp=dAwUk}n0h<^Q`NNWhw7g%OGZ3Q4snE(CB4CmGszR@B#Rp9U0H*H>bh8(k1P zJk))2P8aCx$#J%q>z>W%HIF9@`9;ex&@xWLncW}tbQv=HDZ{wL_$CZB6+`Juyt28( z*bF^i=^LPDa|k5`%_((#PES-P8dP?pqz#R)MCgMitU55=j< zt!sIn^0RM$n|$^JpQpmUb70?JO+Ld-KJhLLd_osKp&u5XchnpVpCRlOKDP^>pTgd^ zVecCzpUTRO%B@lEmheO3v+3gi>q79kuT4ICfX`E4-`TKlu*qkH$!CP(6T0vT{jm6q z3$!?B`wU^P@cFIq`3dZO3--Ql@~N!csN5RmZizS~KA+fpaD47o{)M!8!e4~fr| zK}2wZ*$&_ny6_48u=sooV?F`*a=e4ZdwAdeK7_r( zXM^zhG3;FjdtWvAR90?OZjExcbUGwHy98Png3mo|^4Sf1o&@`FzngW5$!BMiPu$&s zPw2uY@AeModNlgOgW)rTy~5`<;d3+W#nm?J6_Zb8#QlPlSEZu7$ zIR8@LF5$K*>;vDsCft-f|6YL6>VDSmd=Fypk+{DTKI??fO|WfHeALh!k>O+Gt=&*Nbq9_X|F zV)EI|QMonB-O}xl_?)%j z;Q0KhO+Gt;&*NZUAJ}(+$>)(KpBN}Y`-CohLO(1%S7ClY+wC)iy~5`f;q!giy9)Nc zX!5D7+^F0dq79kqfI^|z~?cr?{wHV z(B!j+$!8D6Cv@Qx`eE_eC(z=c=X(fyg-?8soQ5ylh2-tPw2uY^uyxw{Wk+F4$5Z;dxg(0gwJ;E)29TMEm@{O+LfG=TWflkFf7tlTX9s6VsY;zC#y2 zp&u5XCF>4`&k*(spPvh#8(?n*?ESaNr?PURa%+^k#W*BBw^j#O*TN^>FT}qDCuxn- z6OWalNmvy+rq1aZ-)Q$F?b?A+KOD_Z#yZjjtQ}3py3rJ@8BN7(zvNxq29xp25p;d) z=wnoL%oj|?>eIm3DU6N#PsR_Kb?{vM#@|C_9WqzO_L)x?%7Vvr3pP?~WFYC(* zO4TZTFPjYO^*!6r0ea+k8u+#iGKEoXXILfeuS()Ol>gZar=W80Dr z(pBl0^@mls@qVWGM8_)K1V1ZUVyp5q|4>;6&9xQ3t+U2j-e9?M+TNnTQmU~2Wz*C9 z9hPx$v@Wl#$#=764v#O!J6Lj z+Yxi8)F%SuCu1>i0u}%#WASea7XGGUCT;T0p!N9%)5Chzuubg zWW;Q495A5$zHSsU7epaHsv9db}tGdU0g`FApwey3pBcPb{ZCv!q%>;CyQriazyLDRy){A4UAZ=H_WKOe}HkXHEAZ>X$; z=GwY{4#q;Lva@~z84Ff6vwsa>H;_x#ua|j0j(zHvwc_P|5oA>d-s7y#|B!zyX^+P; z_9QG}AA{xV;~P+)J9u>l{|N|@pNxg?30Ul&jD_wgSmd6Hbq2{hYSfuG&Ud%gF!&$GU;&OaV&`;)M)e+<_2kKcxre(=^m zLgXi7H-H4}0FaE;|0!7cpNgd;$v*_E|5unE_6rD}7LMj8V@H7?=}7$_(3H?tnDrkr z>)^Ti@e_)L1C%`=e(O?)D66;r{n!q|Z9w`hHRD$YE%mQz&8Kes;(NyIQT4yar~d!V z`oh)+@!0Ml30obE!8Qlu>rwyTd+Q$|@{_SaLIO5LNXCW;DcB4l6^ntA@jX;^Pj9w= zBo+TM)58`D!PCOg{A6sh5F{O`{{xy5+6uG&LuMU3S3iD2v2cL02gGk(>JVl1*1sRy zLAVV_zolmU>Y%0mRjv8djbD7vnBA)Wcem6(M_;1UR1M6D=TJcurj>Ec5vs8>t1=4C z7%QCd1K?!Dz{wg8XXXSrt!I0wnfILSh3^Z);cTz1ob9!hv%R)*w%68{*_Jfhca5F$q@~XC+OLDdftBRD*?j*x;D?R92y7Q4# ztK9S$Nb4kFWVsqIQ7aNU2bOG+_xi0qti5NE#bU`lA9FQlo}>xE`>l5|_t0<18-8ImE5>CqiIIWAsn6wN=uvNq47Bd;M;UwitDKp|QXt*XU76#AAh=p85 znM-CaG4^BTSN?EHKS7!mL+Kkx*#jtj35jz|G3E#;rRCxnQH;TB9($9D=@n^ggNW8cGxA4Co#qgWH2J@0& z)OebbMgHgb@gMHPKV{(`GsT2|NWwoP;UALl4@vlkbP)VM(yHyK>nY5l;oHevHBwUi zV|^$1ho<;{n_3O?BmZwu<9s&7|G%hhho<;{fLaqY&HqiBf9RV3IVS(AyobR5<4fD- ze;O$g)1 zFpGwNOXjMPlHwn$V!=N&#s6E>YM3AS$J$x&4^8p^EVb>>6#w^AYl5cvFVp-(*Zj{m z`B&vV1pd!>v2FhMq8NVDAWcZ~Ps6_MruhFSwe8Rp|MyXAf~NUj zsQHJk`M=TRUzPU|_<#IAZS(&#is3h%4*XvZ{>PI4YsvrL{rK+`i_%K}Pg(fK%r$BM zkc59o!apS8ACmA7=^*$&JxCMM{L}CTGFOe16#rO%4gR4i{?}2fVSeNvtF*yCG{yfj z)V4!Y{NGEh37Y2Lqxpxf`Tx7gzbfw`@PEehZS%he#qgVc2mXhF|EtOW-^l+Be*Aa# z;h(bbkC|@5KP2HFlJE~n_=hC?Lplil9|_WgH2*Yw8=0#{N{WB1SqJ~n6#v!KYM3AS z$I5o_4^8p^G_~!}6#xIA)&x!SU#j_suKB;gw$j<_`iz$ zPb2@=`|;n!hkwe#KW4@W|B!@#NWwoP;UALl59uKIKRrkj()`o#dNNmylobD1<`4d% zDgM_|t6_fRADaPye`t#Tr>Jd*rue^yS`#$QzgzPUUGsmv$-gS^A@F|&w&(DB)-cD@ zTJC>#p%{J>{J_5*{9j4_r;`8c{P^$c!#`!=A2aEMe@MbVB;g;D@DEA&hjbA9KN6$~ zY5r+=9hs{}N{WAMiva$iDgM_`t6_fRADbtDe`t#TC#h|Rrue^`S`#$Q{{qcFbj`oo zj)C{y6{@_4!2jb|H`EsYO(=%nbU^T*0RB_R{}l2+%a8vfeE6p<{A1>w@DEA&ha~(% z68<3x|Bw!X|I>psAL#sB-%HbPVU zucB7N{K)@{)Hwf8@&6dL?a&necTj7Brui??{6p9LtDRC5|Ej!)!2cOfwZT7zVUm7C zIU@1&Zq83c1%UQBqgVlxSphD;3h3@r0hFZzFcnZL0FqPyB&h&MQUQ>p0wA?i05|#Z zdxrN8Ks+4ShP= z3jL6Ten>(;B%vRY&=0AF{?Ow;L7I?m|1|tdGFOe16#v*02mC`*{I8%^!~DoUcFqC+ z&=miVP}>eo@qZh&CTN=fBF#T^&A-}Pg(fK%tYZIlJE~n_=hC?LlXWW9R&ZU2Wdi@e;WQdnX5)h zihpdm1pc8Z{wt`}FhBB-jhVndG{yfz)V4!Y{NF;Y37Y1=Q1cI6^RKpgQv9p(9s>Vo zJQ9k3jPv(Y-7N><@j`=Z@$svQ^7I(}y_M^zXGPfYF>vhlP`Jkug#oX5AVPh?tK#zr z=f%}CJ9DFnbJu!Dz-2tU*G(4eM}TGL+(;6c1im(cSF0CQ#=meI-|9^gyn?))TB=6& z_106lrFg$&FWgNpWA2@B?cR}pSgqa<$f_Fvw@EO1&DWbI%%>(n4$?^Qge6!9v0H+# zg+>v_E=;Sqod;eAtPiXezK>9QeZZD@Y!R#8zVNM&BYL-f`{L=b{JY?_f-~%(YDI4b z!0mXDNfKYKjp56+@qD?K!Ix`Ue7QE0FW2TQ+7Syw3Us|BH=-s|YT=}=XPuP8$zB3y z)?zsMi*Sp)H9@`oz`L=6+=ae%vM5BIsF}y86Ig>f(b{}!Ep>8mCbC9gUq0>2r+xXf zFQ4}1)4qIVAGT=Z+ZknFq2EnL^au86R>{5x15T75jK=r^yb(_*poF)L*x`{9_`x=h zlt35udZYyQu;C*mkcr(HDAiJ`rPN3X`#-8b^L;#y%;R~DgK8@`hAd>rLQ1z#x`on1 zlpdnQcl`KC>HN=olidY94{aI`&Nz%Qshm=B@s!CaN#_VBuo z$Z9V>rdh<)izwYj={8D_Px2}+!dp0JEk6{RXlA5!{|(pES+ z|E=%~ntzkdzsby><3I?kw&!FT3z*shN_SJbo6?h%o}|R}3kfe#T0?0KrA?GJQL2NZ z^RI(n(ER=8-y`@ujsqgF+HRC-xS5)p(mj;!q4X4`rzmkgPr}QT)>2wa=_5)XQL2Zd z^RI_r>-+=fqagS^jsqjG+B=nLlrptaO8=nr4@yr{dYTgFlO?=DshUzXrOlK!Q`!bc z=f4ep!SeT?4~5|Kcr8U>wGS-Q@GvzGrF$veOX(R(&rsrg#)MZXt)sM#(#MoOrqlpO z=idOoVEOyc$3yUWd=G@cYC~J5v5=`Pq;wyp`zZaB(myG2f^5QTl-{KDCZ!rmHI%-A zqx1g;e!=qhpAU-Q^Y|VRfz|H3Orwmcl~KB%(*2a4rSvQ%PR34nozh#B-lFsgrB5h* z3rFYwE&N*N-`0F%M4!j^!icQ)9cG$0G4-1$JwWLJO8=ttFG`&JpYR5yw<*0%=~GId zQrZqj+p`^ht?e@k)ynOSE)cHl4`Td=7{?0hp zQo5GXSW06lT~6t8N`oj3qSTL4KT3a~^an~u!cqAh2`}ILB6NOuEE7I&V4NEm=Wmq$ zM(JuwS5q2BX&9wTC|yG7&y@a5=_E=gQR)Uq<<|{fzWIgg{KC!ru4kO<8D|=$X_T&_ zbQL8BB?qO8DP2q{no=~S6DgfY=?FL~za!w~n_rmD51+Y^@?FO`*D=miN>eFaN$E;T zc1m_i7g4&1QeR4aDfOb%i&9rOD!;Dq^2zUbY!QqhDp_yEkh2(P7Nsearcg?ultL+i zQUaw5DP2hEOiE``I)Ty&l)AuC`E`MpnV)A&gr}!FB?4tr~zfd}Z(ixPFr*u4}&Tv$I>`8p`3uk`ezWL=bP9Ec=Q%a{an$l=Wag^dH zT|nsqN_{Bxp>!Oj<0y54qw?znFQ5Fvm|vK0elEswG0tR4lPQg&G>TFzrC3VmQ#zkg zZ%Vx>9ZTt0N|A6>ev$BM$?tg9Ud#M`hRkK0TuPHDO`0C;Gr1VEh zM^QS8QWzYSUl_bv@>_cR0ubsqfA!)fY;;##dJ=|8ur=w-@P-?Rcv^nv4s20+O0X?T z&F5PTBZS_XbjPP^EJJNg`iN{z>YDB8@g@9`{1Oc11Z+#X2ETwo2K1{&NV7b5c1BhGBzWazE0C@XZUqm%w^I(w(0u60i}@?_)pG&6sKI zR}8=T>lpF-zq}vmC$|O^UfRnqzaMFCU`~3zt*6K8kA2z;UJ6^#Tz`xEkv@M*09E>Z z-T&47NLOHt)Bm(k<@MXI>bJ8W>2ZP9di%eFu~+ts`1ST9opo~{m*(}v&%O}*d;09J zR3`c2R_`TXVg zBh4#27(PSTD}4TX`;mUQFu=MHe1_QH(}z#L3D+i{zx;lreF7~G+CD?rD}4TX`;pGa zSHJxG&fw>Ji2Xf%`1G4VZSwic???K6X@JE+`3zyN@cHZQM|xqPbs^eki2Xf%`1G3) zZSwic??+nVJ{Uej*eiVgdi#-X#n)jg^8$=+eSa6k-v5>TND~503vs@O z*x%Eqefmv6HW~fp_anWdq!pRPsP=&UoI}_v?eo{$kF*K49L)J1Vt-E`KK&*Xn|%KA z`;o>4S{(Fz4`HwH`RnaR`b5#e@fl)&Pai)0CJ38+{_^{g{xmnh;-Gwnuvhr}_4Xr8 z3A8T6`5t0_Pai%bedqg{eE#zLkv>*8W_UX#yX zem~OD1qZ`t2z!OkUvEFsW%&Wth2S&9{+>R3`c23+`TXVgBkdGuanSQUguTM&ueTrR zlsN~-XNdhhefad7U~BUE%kM|};_Lv6gYp@|Ug7iC+mG~wK__Ui3oG{q z4Z3?Ox}c8zNPYI)RL=u!KOOs#s@+?${ZYq$q~hRl(vJN|gYBf+9`_^V){xP=9T#uN?P0I@Je==v=Dvw%MBMXY zPU`PxpVD2K0fQGl=X=ZiHm+|ytdbeg*wLru+vQjZ9E0`0!?Egj0#^FY@a|!Ghwt8` z=LE?KOBoT-FD@)g%*5DD`sB`Wcy7pS_ii%Wzb9=B3 zxi+BI)cqdnOARMsAu?9J!tO&Y3l^3)qPl9an0q~zaF?UHmY}*8qq-KMy7XewdwlB( z%RE}=!hK`|lk)B%i+U>gTPx%B`!Mbwi}|-_8pQ>@@mjP{Z6#|IJ;tGzvQv5nR<8ue z?Q3p&+Ak|0W&ic3u(fkrTg%>!%sf4Y{YT9^G>W42*0M*>pgr3PaL|8iS-<(9o*qXt zp6oCCz@hIi+mIbRn;`qk{_}b3e|3M^^1#~o-`-!gd0Jpy|9-(NN&um>{v{~hcv+j&ac{Qt)Hmn{m?gkrH(#qVN&*?H-0^Zy&)Up690 z6Vm+u4)&MrJh^TDf8+bh76oZSn*ZOy{<8BXw$1-vqzP&Me+T=^&KuV@ z|G)A5Wg~(#Av)}suvf+VkNRJ=( zRd)Zz_m}N_WgGnCG4eOQzid&ECZyZ{?_ht~d1Kn<|2MwBY($VIr1}3H>@VASbld#@ z#`l*k3eto$|G$I%W#^3y#XsIJgxX*Br+-+nW2yI*p?cvouL5rqI`*8!mSKKhaKuI= zzto`!|unRu8?JWT0%O3zcOq*O`iT}tm#`T~yL@9zuvwchU!`{i}) zPuobkz6!-p$Nscxf8LJ$Y0=wTa5{DDPb>S8a-UlEF&>^i9!mF8x|h;3l%ApVDy3H` zt)sM#(#MoOrqlpO_fHM*Yu!HuelH%uJNBpbnXg4YI`*eUYwFma7EM9zcSy(F?-1Ab zj{RxT&x~b{GZqwe>`&XVKW)eUv>p4?{(pPX!hNfJZz?M!Q*bLr9K82Vw{CZ+RI8d zLA1L|_$3Q(ZYfTW(m9x8aqoU95@0<1)M)_MDKvI=i!@ zs647+qx*HHoJv~;HajP&eBw|xSd>^&ZrsH0g}{=B7FaDqN^kGMycewReafX_dAS8& z)Ru4SWGsExUhzfb5KnQB8XSx_mfhFmQwV)5jh9($g zTl0#-&zlX4CDuLeyzb2v?%4CX+KlH`#Cz`RQH$6(9&0@J5q_Hxvzyy_USzEMJU(a1YR*3n$y9Q2N{a3uU#Sf@u9 z#-j`4(S`A-!c=vdG|y^*xt99Ddz+gbMf)8_Ng5(nm8?P4@Bmu(5{PzpOq5hwIaH52 z-m2Er`Ev)uyVv)zpe+riW0dqnl1-H)$0!Mh>|Xye&R#acifxg7$b8Wk#*vjpyE;3K z*pKQzV}>w2!}zZJK<48ntJBjZR;(Mz@ASOjE5Q2R$V1kr>i%q`Ed^cLA`~cYVDrG8 zW~UZ6@Lk=n)fNpNi=rKq~pzD2_x%6<>C%__~|>qYb;=jqc4Ab*EKqJFTMr z)QFAl3qGA|wL~BZ8M%TE<%&@y> zPL-y@6GnG~!JA6l`avb#5ymJv3WR8YuJjabH1m7Dr>_!C{%Sw($@QCV)+HUSn194zO9c!l3Sq#(TJh-v$!Of~_2LA}a z6|~mx3OdeSmfmPf9gB-=+29d>wOHy-Ibwgay`FcA@gT$zv52U#KN;{3V_Y83x90?DpL zw{a<=`dpyhG5Dm%=yF_|*QiUg{bYAnR-t)WF3&sV;?XPfdR?5jChwT4686BVwmo;m zK$MHK^7h=pwB4N^CQ1x?k*zbYn_i>%lBz7W`cBCf@1{7#(l+!|X&eYc_R8wW-Xb&ng^J;B|5puM@=j%%}hP^Gaj z6$Uyz%Fd#}F4%)^`8E(%^g6l3ReBy2T%mDNloTKvIlCyDS5&{7mS5`%T@du@T*oR? z{f)jpN3l5WXL~77rQ(IT2p8s?5i)MzS4m~#$_j8{KI>#h;XXD9?{)ctHF@f~yuEi9 zV`-zkWT$JSy=Xr!%lMvv#a{6>b_+fwE+0W~b>5Dv^LF#!f z`*2mBh&WXx*P%L4Pi)*1Ao^UDXFx?)3paSza|grwUzH6c>AfmPKz6SWazQpq>Jae_ zoYaJ+@J{(Y7)2gkg7&>K$cwJA3zX zx?_7=osjzSc4=5yAAXR>&*j6B5iZX_d3AQ^gc3noVuw8?2XD z_qJi4?v}dukU+zqJ)H^=6!+}KvvDwS(zo`qPPZbsqhd>>!xP)d(txdMJ1x3|X6-a? zDnJ5N#l4pRqVThq-QIf!;=$_$r~{PO`MvG#JK1I0-Al`r&){7*S}iK`SGb1O?yhix zDJD{v6@g-Sbiu)a`Rs){RZ%;=j;Qv+mFiJ%yzLs>I6S7^u6VK!e9wG>GfG}&aQ|>+ zgYUzYr0y9q#S#`Uhd4-fx;`|#Z19~IvR>+*Kpbdi1%^cp?Zt`8DCgAuKtnu(8{lCt;vK~( zG}ihX;MC266*#mWhwAO{;D%lab4E)W?uE>G(iR{!zczd_+HjF> z!}pe}K!eY}(YFno4ft7A^F5BoQAJY}lF~G}-v&kF_w8%;vNjW=2JpHZUcs7tUQd6< z>L$`)Pp4&@>%Vym;jYH0if2%r3&B;NfMShfCdzj_d{rlolq$h#eLr z4)B+oHho5Bx^;4zEA0|%pA7H+WUoM0pKQA{uC%6A_+sO0IAMls{c&^F0{)Va9 zdFP%t;N1RGFPNB~HEC+BzgYh z9{#<2+32imv$AJpS##3UCR-&Q?Ya)X>+!n*ziE?G&jk?ABhJ9V88|ot2d&m*Z`#(2 ztTWScrln0pxhG|__^$NH-7IF_sZ%dVB_B+}g7f8oeNULjVS{5AmHv!=_L*#P zy(PHs0qbXU zZrYS|wCr4Kf3%vZ{axApGp3=Cr@O>HYi?#btjtZHWF33Db$a@gv=#!c>1IhxyEfgL zo0pTW=$e$Bl`(BfUQU{8T6UIIB{VfH*Xl@4O&%UM!Zym0oHRIjOx%c+5sp!D*2(D^ z7+FQrI>29&Spkz_P*yI|&9%C+Szl&@%(C|FGdbEiE!R3N3l`)~Lw(Mg=9+5F&Y3o4 zT2@-7)r^ah`sWvqT1}sPiFHK!|Kv@}NuS&jR8=YyZPh5!GBdMh`35x`0u0GiO~EWt z==4+1W9U3(w_g^DHq+wPNt$U>I6(RX4>$dS;&W_BI(49R@L=oo8Pif-Q`xPgX3orH zS2YtS^kn8ev{h}hA$3#jSM`{x1!%w4VRcuPq4+!hjalde^%SS->u z&*^`F))}l#g1g+YeI{R{x{k~|YhPEk3yna|<&12e-|5P>Xw~*Khip}<_cW=`m2*!O zK0Pyidg`PsSL$@@rGuFkdS`Dxpn8z0*_o5iQR$6R*|i*=ru!1sE6B*qW1yCH-4f2H zi;<3n!BGH2XdS+#(WPHEDLs91u626ab$nhWvMkC`W$SP{ z7$5^U578s*_V2xuRChe8rK`XlT#;UX6L5kB$G*)Cl0CS^~_!kNlT*L2)_CSqlXDx-fa)o1j{HM@Q*`n^otys3_v z{^wXnXQf{^15YvNBV$2`+^X?v>x>~j5mCQ^RV(8Ix=W9v=Ou1>_Kz$ zX3WUWVL8=>miNu-DGdzbHrbUrE!+FxhB`Q1RYz!NRC4NwI9qHgoiaLBgd z!{d^0)cgFXiezQ2{mD0(Kk4R<_7RtuDn?j_CMS(@B;ZwZ5^QqD*~Y}hTJ#fFtR>#z zj57lwA8$F6Ml=41QI4U`I5ah+;dI6g9pxAkmzo$i$`*^UTVFrX6Nit88_D37QI5p8 zk)z^$yB>W8<8*tKz_|GkIiOsu|i6XoH^~A}x@?qB|Xlj#0ED zE^)NeHj0TSCk`JyN++L+ha58>%{v}^_|#*GAMJE9o+`V|X~8*RLHo9#ty+enFtj1o z!LzSL4q}Qr4-rm1$SVvHh{yPlukZk221=NLA;Ju`k50OrmLW$UIcVsX z%tq<;)a@G8JbXm5y6+u51YV9LoCX$k1C3D>KBQVFXQ%5fR=Nx8NN-4WpJ{VC5|R){ zVd^M5+P6K~85^jZT>N$L09E%oyfdyPF64kvBS*!?jgdO@p4Y>@12A$T)7I26$xgK2 zq$Hex$s;V5wA|~nyyHqNKmYh#%yA0b_@+;j(#G~ zOv{<#9Z<=|283|=!@hIG+QqF?Lg z6Gq(?bHvs=9ASwIHWHzRWf+!0nTi_jX*Eugm_3=J0@{vbi{<~Z_b%{NRcFHYUi+L} zNJ0`JKmv$I1w};?!X*e)4iE@PASndJYZ8(`A|Xk0BOsS3RB1(|l`0jisX9u%)J(OO zR@>4_t(~z-N2gM2YuY;2v3@O``dX$RlJEblwe~(In*_C=Gw=KRy|d5nInR2o>%R8d zYp=ccmCT0b#Re4r^4Gskmsrt`(>Zm#i3GJ}4Xq~Pk6|{#*jiF-sSA-_7>#f+eJ`H` zLz3>%`2l*erM>aDvZ_kPQ@ixuGDFH&Z0-8LEC%@XDEztgja6$+t$Wq0(<-YA&3K~T zy(BrJUsc=Iu(q7^dI_`seZH5#Am2+U{5kb?YZ_un)aPOG&FusDl036E9OKEtXNxTC z^+~(YudiuX!y21JJ>E+R9J zimhK#|7O{pvI|<(t@f8aBQ+iLuNJYM$N5h#1hu8#>gr_)-HTnPZ-CrHmU!zl{VJqz z?Ib0no4F(93N6vmPE6YSHDlS?_gljZp+6;3MHU^;_qgf^GmSQ`J6T)w7O9D%uDU~4 z>;w_F$I_y&>1t$QbOyr?S3TT8YH3>~qYlGTT|;$EM`V0UD@(i=QPGi0nJ!3mbC*Zr z<$BQC+F6m@5~#Ann_1CLag00KUF;~G9a+4jNamS+<~OHYzU1k``S5EDf8ys~_=siP z{LfeL=8v(o_@Pch@!$(2;N8cHV@3(bfoL52zR?t{k7!@)@jYy%AU5sv3N;Y6w`ZdR zV(n_WOvO0{!aBX85S2fUsQx#2HsRAiC!_P}z(GDRNa>soT;!(%#IjZAbkK?Xbbxr^ zBUtV_F;Xs)D8c#&maE6tI8b)Mvg%tl!LpEO;sG+4*G_ox02w<-|JHbjNlZxM>w9!w zg*zWk$-h?aliw(;I1rDgY44rl@r~Jz#XuG-~?%%K4Y)-`_O^< z3AXiMeFf>h^@saD?LAnZL0YnNIzSw(?;zcY&glU0z{iJ{w>CX(c?Qbw^yTwm`6s#$ z%U_?&kp8Xl5Z`tsd`kXK%}*3o9Q;rFr9AvL9IUS(eY&+35oUmTr!;plYd(31!D@7~@~Us1Mj*2QBoPN6@p{+d-+ zmn~T^d-|jc&mBE1J?RvG9~R%yX}!H&JZsT8qqnz$jq1@$fhaH+DD3S$f_yjfCgi2a z^N>f7N03L5cO!2?UWz;qc_wlPxr5w6z8iTd@;v03$d7#rpR<8Ez&zqa9zpIP@0r=# zdkA?K@-F0E$n%gND?s-W;zGU~c?I$c}>STL4Pbd_!n$f0sn#BO~4S~K5X-WA7Z-<_$_wL zfD3#P+jD?#V7n4{9@~|`+t_sg$-rK0#{&nkT?ib-t`<0s-3}ldIDqX^;Ct9E1%8cP z18@?%UBDRN>)2ijyol{}z#p;O0;B_9!L|^165B%H6>O`4_psXzWC0IgI|Vq5Z5i+; zcCA1d*n{m1;9+cM0RM#TRlqygZ3I$)yRp3x_zt$00k2_qJ@7Z|J`dypUD)OUhp;UL zda!E(9AG!L5uh8}C~ySZ3g8%aoj~L|^lRV&N2;+0j#PnxBdfr`kxDRdqyh{aDknam z3)|tqGuX}o9>sP7@F=zufJd>N06dEA1mIC@Cjk4gO#?Pzn+ALX+kD_YY|jDi!}c8D zK5Wkc?!)#R;67~60ltW>3p8Wv0tc`i5A4M@8`z6&Hn11lY+x_8*}z_Gvw=a0 zIDReli0v3)7q;oZE^O0*UD&1ryRc0Mc43|(Ncn#aj zfY-3^#MS|tus?=v6L1XMCg2#hO~5g1n}B23Rsct^jRHroZ^HH%wiQ4RwiQ4RwiQ4R zwiQ4RwiQ4Rwxz%!Z1coEitQYH%mWvK7l4bvi@=wGi@{64CE!xBp@+fjg;wO#Wq_GQm6Y?hHO~@VO-K3!tc?I%PVHyZ8aRpFs~e@-%*cW8Wbj zAQR~NHfaG4VS7379CnujZ(-LCBm#G0dmiuMc;Fzm3xT89)dI({+W|}jzJl#U;Ct9E z1%8cP18@?%UBDRN>)2ijyol{}z#p;O0*nRrU^^Cg65B%H6>O`4_psXzWC0IgI|Vq5 zZ5i+;cCElj;Pcpy1RlnA2JlbVUIn~^-9{hL{x{(P-A`f+caPkw(nwl4e&1ZU&M9@a1*vJa1*vJ za1*vJa1*vJa1*vJ(2V_Wv0VoI7W*C8CIcPV9>=Z&IF4Nha2&f1;5c?2z;SGAfuq2L@HUNLbwgLDfwhh1^v26hUh;0M#M{KVHUc~lN;6?0Pv40QSYT!+5tARJM ztp?u2wi~_k-^N-wW;n-v_=Q{14y< zi5Gi0&+NuN^GjgtGxvhA&)f&bKJzPJ>@&X##y;}_F!q@b@yK(z>>es+W6j(}%jT6A z&Y!zNwo*8C%~j>=TGmWtQC;8nWG{zH*PwdLCX!J+Ayjm?m-JgXSL?6 z7JAXNDWW_hW+y?h)q-j$&t8JYhlpZ6=JHsM*&plQr(o~CY)jX>vu8xS8!>fk=i^4H zd7ffnO=Xk651wq+HL&%Tt$sY9(b(4Ng(be&a~v%-Yve9SxxVEVXK?k!t<9BHHP`BW z``#{<)y<9TBCRzY=5CMNosnlN*h=sFG{M$@K*4*6I#8wlLHIqN~7nV2h*bsMZ&L7uuz9acI z3~nS@9?fAjw*{N!-jc^F+<;YGl{6JyROW74bwp=YbNXb>DdTAX@0kv4xTGNtiKoAh-1<3+eJMSV9p%NG?b zpI>yj;6<_%4m@`SyWPMGO4)72-CcQp%~{%L?yN~1S2nhp`&aD0A#!=5r=C3l4ePl* zC+(EIkrCadS4rYl+cKfxTQ|_QcstYhWf$=50dEp%TPMLK5z1e;X(~pZzc^Yn)O(5m#|HjzYIKjGw8r}OG+-EJD=L=$EHvJFRP^>iF6GQ%2Ckf zHtDLiy82ehs8EGpey}`|CA&ENC;4;_ z`cNBrrpFr_`u9p1>0$&I&(Yi72n~FE%skSh<=Gs+@K4QjAgcZoIU^!{x=-Gvovx~p zI`p^HGQ?Px8FcBfX7GuNBXR|et#N%zWMye&+LVh|)wM?ESJS;o=;d~&Uw&TRWF9q( zG}Nr8Z?j#Xjk5vIr%622(&-Psz0GTEt{GpprjQ-rnn77Uj)^duCR94#>rsHYR87UoQ$ z&yg}|i$B51sgLs}GipK2oG{{|k^NyzP~^c`--@xUj?-r|CwQJf@Smw=bTQrGv<~BZ zOYrXe2c>9b63M1q(%oERpVFXo^1KI3BkbbgfoHRwxR!m1 z>zUH7s8OMrX<>7NFYoCOdRG#zIP^j9c<_`T ze9*fWeEknU=zSjiEATP!lGi`zjU+hEJK$3A*}wjvcL%urjSqScf|vc~gWk8ne*TsEXTp$1CP((4SJUmA2i0)7(w zw#XNg9`5Q+0Z#`Pf=j_qf_H!qgS)`5fDekin0$iEz{zJoFC~582TG_PaJZEGfLp;k zME+^&3A|?+`2^b7Vx0l#-T*7sn34p{`RuJXiai+<}297!Dne);T zGjDd6Z3~CSsAuOqXZR9dG4T26QO#)4|8e?mgVq$kt-uFXuZi-P!}q&!TPT#5U}9otH;vOMtj*V>7KJKOu=8}h1$J9 z=nuX$G{N<_?wwvJblYHplAb4tr@lR^Bgiw+#Nt_N(j$7WqqpDcEeYyXZVRur{=y+% z9cT4+2ld=r{c@Oq-iGy2t#Lt6uR0cQ8G83wy^^4wdztTV6MBEPddGwH9QunAMajnl zlD-X5?dcy*(d+W{UO;cx4MuOi){bunQ629r`0t_jvekPn=x@!o&@x@*bdRgOKxmWK z;>3PR*l`})Y~uMnWh{r^9yV|!* z4El5Lcy12;>qe7IJx;xee($Zu@3NqNXr>Z_PsizJCGy79+l>CDLH+fj-J#=n9vewd zA^NxPGWrFCRtKNb^XIQY`g)&`Hl=^rD zy)BPL2{DJ)|8eE!E)lN_v{PjJfiQFRSFOIH%;oUQ*vialwE7m%3j_(%GVJ`vUF`V4(o4nKXN`mp3h%I5|279ETdVqIAO z$LTGTY~S#ll+SzU?YDXjK|Oc5D6a6zNA$-IVm|ThsMh>2eHkCi(C@JNc0YD3z1M6D zn=+KM;8LAg86daW0aoJMBlb_5_-@y+#^uA+9jaauIp3DgVf2%pG5VFK=wG9=B7WaR zuh#1A3hJ#Ck8V?ZzDK7x&ihvX#-P4VhHKAyrri~zzy7;Xt@-<)zI&aHK=+_E&*^r$ z3H|H7XY@OR`o@2immb~z(f_s8pAsCGLb-Yzm1##7*M^VIIN6(KeF_r(1o#gG_*38) z!ru?SUKD9q+ub?o*`E!~NsqXN>DfPmb9hdAGURsmvz$8hA^tXD_e#K@@b|!fA;6b- z9)*AS?}+D3>`nyyNjxXuzZc+3JXvJ?-M=HAV(iAwJhj}a;g1gRC7w<2v*6bg{y63K zBzDF9_-l3+=BS`JUM)dy50{Y={3s)cTWnDoi~4 z;g6kjviBMBM}FK#(vzhfKPmd~M~k1r^t?^`6E7pGr(a+2#$`G(*pklI(L2nV#Vo?! zA^i8?zZ>97`qNmW$YO0nr;l`mrYp~#Y5&Lz3r|gFA^iRD{d7KQ(s_;Ovo4rHAIfo3HtjFg^(VK#vq%}^DULDhu zYoAxp8;@Qd^A=ClCGJ)uA$tJLH*C3-) zdUHzn=`hm|LoR&LD*n`3zF=_PkF4**21lMXIQxeNXa2z8WP?g?bZ-iAS(CCo;j@W5 zlWt2UI@VqO8)9Ju_^*$JI86IzP3kajbloHjdq{iS4u1k`UAq3``1|3@+E|ePB>d6+ z@Lzy0YidFLH{qxC!#@FE*5ZQtS(N<=(i!AWfG=xvL4G0p{r&K-fiG)%LH$$~t}?QlO0*eOcyQf}?utS=|toxCq)f7(5n zUm0?5xGOz0&ON%|7Ykln@XH0SFZk7hUoU!NK~IsKy}Hz?%5KxqMZZ||(R5A4N;+Cu z6TF7C$WJgG)gLz0RNyDPK;zJAGf~{vr1a|4P=qiCxJn zB=_Aal;gfS-!Gc^@kP_E`m=MJUoARCf2ncSuYTRD3qOv2Xx;z`l9JZrKWnaKti9^- zSC|}n{D)tE6@0_;`DqBZ!!M5Gze0E{{Ab|HdWd5NxXjPF;omdV{=|@W920IKI;V2Q z@>H&j&!=+b68u!IOq@>TO3j_hm5iOrm8^SQT@EMU9KNP+ekJc&!)P1ucgm?~ZhGbp z*ZuSJbEV=4UU^6O`j@Zq$;ii#2aq-*Viq-0a>Fb~nB}|2YZF zf9~aS&1kiZYo2?ViS!-ewa_J6gFvAdnCAsvz|}MOl{IiZZ|O7N*%qFYKK|x}qVyxm zU42*f-jQD(es|`+NOH7wKNUK=<vxX0 zZTPNXw`aNk_-xS&ML#WivFN3eZD;u0-OnzzT-=rcqbbJ+*i*SvW@3Ikmu(B(9u6IG zUz+BrpA=Tv&+MR-3&_=4_u$K0LnZJ}M^%7Fy+xRQF$VxMQ4j1`#f62G_0 zb(r5DIz#T`>3%bR2_@p8V|U8*D`A&=dnj~~I=uqEISPSUIgZoKp3)j&;OcgFetPz< z(ERksZQ=Rp<98-3OwYSHabf!OZAnYgqxI?2=cMP+FUcqALSIG+X)oLHa}+;P9RG9t zPYL`_3H(n9eB2T!Er@E9$oRPiTUrR2#%!-Md%n{x}OUuwH^dU=&uF%h0 zTBdA5AF;Gdz=ZCxw45r0e$Ub}4-z_jy@{VCL`{#jv|PN4e7dFOR4Q>Uv~-%Kudy^s z7h1mE(p>6m`hcY~Ed7e5IlGmE}xdhVmSW9yWpy_KY&D2=a9hR2yS?qUOnkkp2 zyDZJrLeo!Lnp3l;qm3p$nTm-0n^w+HZ|tpnq@~04Mqf{H;7zf#taXTey`|+gztGz) zJ;u^bld(U`(g&?PV(E7+eYT~u*BSkDEIq-}=R!+;EVT4kOP5-DoTXP<`aDZlSo(ZR z*IIhKrJF1*QzG%d$|yr`4Zq=^jf@v2;a?v7c(`{nmb(rH@#;z|zMoJ>AkytFgbt(pk3t zXIQ$^%4b@-$I>zvmhyJ^Fe+Z6R`9S#C0RE4>VElJldk;G=+ITIF{?yO| zVQI^91o6+^zWkm5{f7YEE(0%z=chA3AJLt{aqKo9XRW=!l<`rH@spw&%lIhA;i+>q zmhnc8@q1TkEaQtD-X)HVKXOdBav5*r@UCBNv`$`HRP$y0mt*CasKzq>%dtB%s9fV+$o@e&Wc-!Gl8%h8avZoIsFz0O7ev8ku zc$&ovEWX_0)fTr~e6z)OTKu5JPg(q&#Xq#^|{+o`0&Tk(z`hm`0AJu-q z^V3IkFwptuBbtBWYU;*Le{2`$>PAOp3ckt1oyr?4bU7J*NKVGc!y*TV z4l`-ibX4ml`X_7R``>*?{lr(>ht-#&eMmD9EOvq;7DvJV-G{D6sUO;FCy@)Lh76Ya z^V+ds67FtyLRwCLu_SDqo(6KaKI3G$c|efJ8p&gYoDGO`eCadw)%P; z^W-0fu}_pQO>4Z+;))Nm`rj$1@TJ2?K@mX8Qn2MAk&sg~Zyw(pEn2$bg2h|{8(Ui8^D)YXmW%5f`POCLl!>)XRTCRqswUP{ zx5YGnI<`Z?a@7@8U_5rsWYLlM`#| z3nq354^#NGqr1SFW16YTCtZ;0BHLEYFj2T^7QzwtF)2?I zeGQ9C<`m8^TvAfFf-f84p`)_CHCMh=*wQ*Xyopn1 ztZT1qs;jEa&&{7WdE(?5<~M@e=t4jl{sW#hP>Fz2o({Ej-IulUt9C zyx*cFSDq%%jZ4AA`nJj$AErM*DnF8Kd`>>xz_dBrpd|abeKY^z9>`wb0uqy0AElVY5YMh7ZR*PpNW-8UatiduB_8&QolAQrBZB5PX13CFZGzQNIxxCQxF$OH;K@(&G@xpK@=2{*DC4hu&cp^CNFZIlo{f zifA_qm2at@8-$u{sbe>!%uyF4I!>;3yJKU@T=gILDbZxt#*_u>B;-m%Zh%Z-_3Bzp z9ujgm~EBg!#4u9HKBZblK zq+X@YpJ@bl&9Vwt`3mp0r(UaG49c%n*Xwo=YJacYaZ=Z)Us%hEPgxIZ@E|ow0dH_p z88Hh$H!~a5wGs0PQwyO*mT#F}ODDp6h&hL^x9aPr69@PMq{UFo<(QJeoeZ-TsKt*1I`iaQep~g?6v)xG} z9=skZ?=p|-fSP^rppA6>jjTO;8ITfVxk7ZiXuD@~ACPE5G4U zolq6uhx(dm-U!t+j#TORZi4EV2qoQXFi&=!+o`5{QayVEaYxg=zCDvGJeOuoAECHp^X3JpK0~7 za1u>ou9z&*K}?e6M3RvKUuBHp-_6M9pE-L?SXyDDC|{$4C|?c7$!O$XWo+Qz&A6HW zP^NrsFq|ph8%)TQFAgSV^3A~{CwX|d8~GFB!vyj1G#n@6NBk@2jHYl{TIt}=&<>n` zC-g^j2R92fmxRrxRXE9u!|x;cPw^7fLA-=?vcJl|%E;#5&3KXjP(~u{ESxcc|AdV5 z;Us2E|L@d5wI8S?1#pp0?+r#MOba5zXM&KF*C(ruvRyzmR4ClL&}IGicr z!4oBO|4K+#axPTzpP_mrtC;qiD1lj9)F2N!1CmuaWc<^5niS7r4bc;Iyl`QXc(2ey2sLX%$sFP6HzxAkI zsK_x(4RsXc_+F1xLgo!7ed1@RE9CT19vKocI^H7_gj_hqBNK%zo$HZFLatoqk(8f% zZbdodTZ8bNDrD_;$T6IphYl99=~hU|&CoN1Y`w!HhYHytwQ#N|k5Gv+oIDOKpSu~F zE%Z(5pP)r&XpYd^lvKl1k)J8_4)r_eONBm9=-ujG=oLce3cXi_C|!B`#LzsUyHtut zPZIioI>V#$h3-~TF+No3w46n*yN^tMiaIA$OAgKnV=_YGQUR zDHwbod2?C_Nx2NZA1ZkRloZS0hoCaILWv(IN$Nj&XVOD3egr+pO?sMOmSkFSe=cbr zHp%-E{~dZM!9h;KdjykjOZrccSR@HMIXC&YIFjPgrdh*=I!RkZ@U?IwZSivihddl^ zlJMY1q*2$QE|aFgk4mHN@TkY2GH>>%uR~?;@~Fq5A~I)t4{w9Jp(?%#^?^|T2vz$} zQ1_7pCrdm>hcT!;6#fd#Wad8UCP?Qv0LRIYmy4*3Z}abF{E+{UlcbYB9o=l6h#Y>d z8uT0Z@<3N|LFnHJ_K_z^`6bB&ElH+jN%i~<3WxJ3@g$jvCCU72#5>Ffh-VpGf#915 zRN_0jO;wVIQ2W8HkPoAOJ*sYd)Kcp;wJ_yfwVlxKaqG61I!V7GkS(cAlD{nZlNV-; z_^bA)K98=w|KP4-XTrLviJO!Q4`{`cf_Y2}~i@gM~K=9=iY7`oA7kWZUDPN0jsJ(lu&=32K?%>u@D-3N~aWv-&r5aH+ zt$3j`vR#=jx)r8C@Z}e36dICFlkev@d-Ru34z(Zg>AN+3)ThnmWRIrf)4N{j>&bhy z`rDgFS^5c0AKN^t!^nT6=>zWQO-k_{IXzrc>zi{nD*0#V^53U z#f==FKDI^ZF+NQXxm~F|pJo7ozSO4~Kz1ut3SFo3wrBI1Ur?(4>L?WLr^4VIcvt#5 zd$rEztsr^2Eq$TIym6A0VY2pkE?Kyu? z>LKKkj8OZ5_MCT>`le5Jx99waQs4LOkGA9_xk~bC+S`#1p(V41KH8C!;_8KxcS)11 z-Q=XXO1h$vzr87Eu8^U-_kW@#C&N`ggEnobb92sYH?IHe-JDb8s^1`g zU;FQF9et%6*WNehRJ-a=zWE_d%i51|_q?V*@Z|?Lk6!Jn=9*SpT*q5Sx8u(15l1&i z4!Y{BHq%4~bBir<$W;p&tK}F9edZainpb1!-&;Hyo>^w&q}b}5xsfS!y;1R8<=o(^ zY`L?`1OTNiIh$NH4%$>g&*q%ZxoRS`88nV<&biH1bD>Qxj&IKSf~%H8%Oob${yj!c3mgxSvU zv)q)oAf(kMUljiHQ09o(4;dfM)Zq)5FFI0U`EUnc2&FHq8aygSJ*5U0#Heqp!Jqc2^WF%rg^>6;p^j7=ApVWw927eG=qi}7 z;ojnNdwlLFb%)P=+vko}_rsMnqCugZ-|#$~slED(NI%Ix&0Z$o82 z#Q-feJNP?LkzL5-{N*@rkCruonGE6P2Emt+dHdCj44lFbc1%hwoQYjbdbp3`25GT;oi_{6!d4Ip0KamL~ zizt$)G`S1Ha4O3%gY%WT0)GO*H+ZR(d?jxQkrSWTC7HFF*{~AqT1}$ARwIRy=&#jO zqvIr*MVdy!A9ayt@B*c3NQyx4MPZ5?06)XmXOKyz7W7TrrxN5A%Ihd3{U}jxp-AZs zUZ&J~^abu)ABDsGTK`j)smoLZ6XrB-dsE6XbreF{i_9U?#z7>R>-ao^3HCZZ(Z7zD zq$K*+@tX3l<2B`9$7{;Jj^Bs3ME^Se0ipcs_@6;JnW7&(BgsiJ7w?b5{P62|ny0L% zC7D&k--%7X3yOoTR1%BYNr?yqU!SH@uGHmvAC=CzW-FvrrnH?SF5|R5*N&K zwhp;Q-RqOxTZde$9`wnBTb;DE6lap@)9nNkY@bf_`}E6j6a7A|DZfukB#C~X)|B6; zrLGeFJ}uSg@V*Q=bq(5~R^wDXPC^8N?|oA#J9Jl)5k;~9=~cX3NkK|X-^Ws}_fkHm zNf}hQ+#7PMDkCKRS&bNahx*LMsBTR=ZZJ4}2a^`*s8Uu#?^c&uzAwL<`LU5duobnW z+$32-lFl>etEPv)NX!Dk_t2@-uj-7gYm~c?P0pZ4js6?x3IyLrr&1sF^(8eakE#Py zqP!MWXWN*|g@I&y$TyU{a6<}G^7({Hg}Q|mTxkPCo>ZeCAJc7M_tx+?Wv(b`rVxb4 zw?xH|r_^Ur6p<9((5F@IrYHoRakIhUr~Lxjy>;mK)jlh~&Xa%NFQ7eAKxyJDX>#&7 z+{&AI(R275K}Bs zJLH#fWky;5QoY0($`s+=twUbd*KVfCyt!rQuhq&erX*WB4G#a>FVVNRP*#5#^bh3v zO*vyJ_c4NlPM8Au24R6c*3f%#ph`UvS0D$rq@0K=kZzAO1#)mp7N^Hp+vwby#g&;f z4pRolHfOQj&}&I@^*b!2ucS?WdJJhwMHa)f)Rc={Q)<$bjI>crPW79UCa2kQTbLDA zaRqm1i_o!>dwxq+g1PK9Mfcw3;mJz5H<~hQxXIvQ@Vx$deDm;BrP_lU@Vp*-f{FL= z9HoA2tt+-$FYr7som+;VsnpDEMl#XUfaiJHNhJ-RsMH=Sd-!JS1)k?+H##GVl|J36 z=P6x*;0qd6HX7d0#R)NMsZw%ol+%Ztu5+%UYC2&E1mD`IvXP3WIh)oB8S~Y|V5%2& zN3K#TGRSfMh4=-6FLhLDOOPg+Ip|7)33d*e=+8m*xb4qDeM-+keM-+kg&Jk&pbmXN zhna)=VdkJZ?9D-aLgt`8A#+e668$-7f>8b(RAf$?yu3 zbDWFh+%lp|nK5G)+5*9sWvXm6WKLOxPB{#h#Rpg% zv5^D~yI-j$OLM}>`Uj?=sEU~BYu3Z;#qr4sCr$E^Cc?Du;*{P*y?xWBaW#qp!54I@ zY&5(ya;6gUY$gaYvmuUQ-)4!C)QW4mOV)RklEj)6G&yN9^BwUoHjd9A5eUB2Q)QzO zi=#qFDTYnx;&j;2_&A!fSg4A{(J|~b7AaXZkyc28oDqMrv2Dj%Aoxm9m5s*F$-*A( zzGK*5Vh-etUVA zuh5jgy+SH5aWk5FdxfU_?G>8xw^vA&Ci>eev=@JSMZTmgw!K1=vF#O_jBT&bWNdqd zCS%(xG#T4op~=|x3QfkgS77gZLiQ|Y50lVrA6ETMis>h_AHW#OGeI3J105*=h7H_-Nq zB(uHZF;V`o?GX^u-(9*NoIL=1A``AA@v3ZO@@Tj8yGa1Af(>Fpvgob^#%q_ zCJCuGFlcg+ka`2d%`}FyQ-#zU7``XuU?KGe2FcCYX9%e`Flch9ka`2dv!XmgrH1SV zh8Km-7TRoJkW<9jIYOHa4F4+fGle!A7=A7Ec|w~F4F5~$T%pYd28YGdv-5;D8yGY_ zNoccyLDTs{n+*(_o-DN4z#!L7XHON{Y+%sIFA&;nU`W8flXfeyCVVwjZ(vBgkG$y( z3{ozM_e1Fo3{otK4?*b-4C2R0llo8E8IlbQdfCWqV91nAD`pyLzr!YJU#e_i_#;8r zY+y*bE%cw(B2Cy@KkJO4&WJ}`eHK&q!4(L;Tv}yYjmN|r=j+E@^&~;5P)@B`Uw73r zkekR9(qWIYFy6S+)J!|J4F996eziA>1~1_Ivcbdt!m_@d z2!z@XZE=RDgw&&V8)51`gR@dYs)_lZI1jbIdxJB4Xh`K-;U-ThE2Ly;(kPukDJP^J zvchruZFD0;anT(ix^W>@Y=w_|O6SEZ9YtwUNWEr-wfERG<%g6^X5_Rcm!Hn?%R{Q_ zUL*XW#lx;Jo=lp$H#x)0L+anH@Y*h$ri%FJI=4E*uMepmRyg#lR%uj2^^ys-GyL|D`id1^aKBahV!TopO8Y~q%nJYL zDcu{d#0+To*FtL81IEL377u$kK1~NudOV~)YlT1al)B@Un4}N?W=I{k!oq*BX?iNA zL_2qeKOItQt?XN#&NJ~k3!ULV2&rFN*@X{UKR=AuDRqYbIHW#pW%qbG&&TVmbcX*l zqz+qI=0n!ci}5-Y&hWp4)cCI%*)EH--U}(&F=<=wW@q?`kou+-j(XTAXMGS-vX9cX zT$Fev>|87SoTro+RjPr0nPAsjdMmCBtny5~tX_5+?u^#;D2*C@D=L?jS=F}oU#^kKYl70#BYw8sga zDHHpgGg#6%9}9utYueRlq>^{B;tFnbf*D#bL02I7x^|U~hLl~DvXe`dF$rpQi!KRS z{~j^k+Aos0fZ*%fRW=&&_7`FwGrz=|mtiUpe4D!(jfNCEamrFpHl%o~MOQ9mhFzMV z>izUYvlb+%bVP6Fh`8&D;YA7RQ{OQaF!yPLhkZJs&uPY#{JTTP{(%!*rHM`5fD?h> z+u>C<8j=9nr%W|^q@;(nm0?wJr9%HfI}_Bs&zMs9lf}c}ndKz6y_zf8TTBYn zy|@<$zLs8PTMg45DzbJasBfWXJLB-%64c1=nkYVFaTdHE_$p0Aa;J^tIk*DBciF4a zR->i4ii9uBhLnlYPtm2Vi&V(^8d>6AIqaSU#b>2$61XJ)_9%LSOk74hY$JLZLxJE+ z@Kv_eFu5tsdOSh>8+s-;Y`rpf$5Tc#{jzt*6aBm6xo{KxyW`S*xi6>hj*s|eg6bs^ z>K%Lu1Yf4lnnQwm68k0eM42ajD?x8j5F?o?I|=N|!yj>k+P}GV z*fUCx!B2`UMxq(^r0B^9K}hRl4@qi1djXM~+`52vJ~B6CEg&Wk9yF)pLmpwNMD ztOCPkMyN)mhtkKT-`Ji$Gep)E~mT0>0XOr$wf+O5T zLqo|fV^4UBCPT@Kh6$;2HnXA>>j%DQ zr>5$-iImKz4b?q!$s@suzl)$_z!^`fDv_!xG!egtVaDMf6e8DYv|(a=C?WS^&Vl|$;SuB3h>+K{Jc zkD^F4KctIfw6(HjcP4p8YVthBxClgdRzHrfPm^kiq-fV?D9I+5KH^C-bB@jxt?Jxi z>ije*^sxy#$>U;4o~1pU7pnooI6ua4vn7u4e$kU+X*~Tj9o=wZ)f)23txp>YHk$Za zN%SMp^_vvmUU(zn&6`lN2HX{HelHpT(d0h^N7FwQUyV@Q0tupcMB zsbC;BZZu5YqKM!Fm=T366$-;>V# znWn9diSJEkdEF!u-%ZZ$+cVDbQrf2ynYz$lXjx+^7LYV3BA5PhN`o@($Jxy3Gwf_& zNsjgAUcM^t!5-;vHOowGcDO5U{GKF>Gj`q4KxUe8xeJ=(*5vT`R*l;^U!Ijd9Xd*>N!_80s; z4{zg5KNlWLv^)XsKcyRc+}AvY}E$ zReZR1Vy)vo@ne`Le#XLlHSXYqzV_DJUr7A%Y|lkoYh69;u(m!vRrDG~?O{>-@?RCt zp2smx+^kwRG}W}Ak?^Q!{NpSvs%uumNPKF?>+d8ydFH~Yf#^T@l1o0(NP6%2?tO_r z`)ks|sqM3{O)Up^;r~9*SCoG&=8el%t!vt}V>pj047vu@vl;VBvNfl!4 zYK-gh5sZ|@59Mx3Z6TbfQrt^INy^O)C8(K?yW>$>{P^Sh{^U*%ZBg!U6d?cbr$6m; z7ji$7Kh4EpE}D0(cc%$s7#{v~%a7eFg`k6~KmG0&6wu$~abSnl^0KPxs_LEYO-f|9 ze6)X8?X1wTxt|fM_S62|KrA0wZ>_lEdjB+k_2g0~edi6E3L2|tE_O4dgx;DcvNM(pcb5CQWy_XJMC`4>P2$KIoQEu&EP`N_SCl zV{u1gana&u-C|Ocy3|%oKDx`Rs&1&NezI}#;-V{79x?Kb$P-k`?8%cKc?5xunu=`9 zC906x<_<>cULM-2+(AV16E{)lBKaF8iLlZBrKo7Kn+jviEVqIb&r8kEE{OiW-~axa zl7d^__}1224qtS|qX$}C7C%%=Q^8($m$aZ+Gh1HW=B^;*MiI^6+4R;&MI)zr7+U?YjPtJ{1hcW!QH0NXuRbx<;Qk}8hm!?qU>^8 zb$A*7@4D~kKA^)*MR&dWs(Zhf-SUUuyTXg1VN!dKiL9y`QAo|4nVL^0uVXDnAKc*^ zBqyMET(IxYZfo7T8U|kX z5gDt0JJK7wT|0IMP6Fl>a(rt186@PLK|I^Aw*AW#f80;-$Nl-s{joZvNA)jP$DIs} zCr$?5IVLf9jxh|*F`}W*R*Cj(B_qDK4>K;vPR*3OwW*hxVWRO{ejm&&&U3S9Jh^Lg zi&Lvj4}`&OimMH=xV$R0ieN~ktjW#I?RGPzL8tWj%cT#5RN?FHRl>eN{;u#8jLaL5 z*4$ArW%ld?`yP3`dwt8*-(*~}XCOUz%`1tfo@0`@cIFj2jfpC+fZqSmn)PdLU(Z;l zI}^{lT&>eVi#O`G%$#{kYW@gRHC+iPSyXK`eFRyvIam^i9&%DDuTe{1+*w38h z8Qoh%M@>*`rWgJ0*4tmb-Mw18FP0RU&VMf+Z~fh^yFJkY>9#}Z?YHifG+}h>FI(TJ zeWUh<+S+HgYRU5Dp7WWx1#obfEDq%)OBNRwq!trml*>)ELv~}!%-OSN-);|2vAhN5 z%9%m-?0F^jNR1jl<&C+wH%{KFi!G#{xMTA6nO+f=Oui#;`{a_VORnxMEWEm~D)pS~ zI2k6{dHXI(J!eGW)#X<&=XcHI*}i=CWCRy2E-C4nsmHPS|BI;Mu$n!4W^}e;3nL^9 zt!l)ES8|G0Nnf)BWfY5uYIZc{AVGapDp3uPL|n||Y!@bm^W?wlqHU=oO*PDJx;?jP z@@%iLADT^OyPkezrT)1?$jn`~K%ai(8h)lCr8fK0VfA!TqZI2CIH-SQ%{ABfa7RHk z5~2&KNA4&nsD4^>vgg(NOl?!(jv#4P?-}t@;4Z0(ZNR!KC-5^_K{kX@dPrkhO;yMLjK51r(YuR;kyd- zsHDq*sgf;^&H^*~$mzAnokw?^O^!`Rm_7N9*)wO(oHbLr)9hKZ7xy`ep^AzYr!F?i zd9B~Fb{f$$*S|h_|IXQ+yYlJ0>&9OIGfr&<)<;zyMGtqrfc% zsnfEHW;VJPk*IksR3A5h&G<31(aO@ z#(n$l*zaD-T)>^pU++vk@wjE*?ESO#_%?fX)$Ka47~TVhS5$S!zWpWp%}A~%Ta!o3 zE18#CV$1G!89}m5S;|NpPp7Dq`pJxh!ZZ1DN0ZebU!!})8?H=AHyxhmjwRz;7kk5B z$!>p8n!L?cpV!~Y_wDnFeX$Hc>u*2e(K7C2=RSVBo>Tk!cRXS}+&|e1>1mp$psn2N zXb&Dok3{<-7rAp_mfS_HF!dcmWfokcCrLvN`I9783?1J4+$%4Vi~nl<1T%{|<^4zg zr*HcCX1$mMUwP!~$9=P2^n$N1^7Z=pX1(YKpB#_VKjoYCqMx!nD#-ab->et?;6vPg zJpFvLUi5=cMf>{we6wEkgO3&a`f=Z^7ro$PzrJ2S->et?;A6YKzWdOC->etA;PaO; zyTi|ke60L&1Ru5Z^=h=5!;J-f1Rt>U^**6*)(_NPC7ts2AaC}UXVc@yANMVL(F;B` z~;D!M0HM2 z_bq$T3qC{O`*Wi@fwOG+1)m-8_11j&x9laJ;2wM5{v&+LUhMaDn*4ZM(tZ2C<6HLP zFSu3O_ZRmqd(jK-iuUzv`}XQDxb4~3tLR(L!L7r-UZ_%kTiNp$-0vIHi+#&p(ihyQ z>+8jR%U<+?+jC=jr+&*`^n+Vvef@sEWiR@{ZLhxmdimm7-*4HAesJTeudlyJ-S=De zq95FDc_q)2mHLqlD|nn+_qyupNseJ^puyuDW5 z`y0`3C6+fIUy?U{($o~^;zb{?2>M;5jNs)X-Fu2$ye4w-l0u*?GH*%c+L{IWRk&WM z#0sIhuGue|)0Nf4Mtm*!qGa5=%owpK?J%c~l>6Is<-*IwiJ&5$;Txi;qlo%b}riT@7u@Hsn~7 zcB<$JazmlKrM0H1FI8S$Q(w8kX=`YyThmZe9jR|*Fq1#0wRuB1Tdyh6=GM9@UYjk= zU0Q5?-MYF~M{a?)wbp3APIa5@1UeSku-(U@quFf@n3XMBGT(2Lnpm=Eso^f4KhFe~ zEH`+?a(QH}oZZMR4$r66(eex`&-Vh8omIR-d2M-1-Nu@@APO;lxu--iP+)DmM;@2u zlj6epapB2MRZF|Hqgtn?p`9F4o|+OiyB^Ew%<_(Lr+jsN~x(0H>NYc<~bCmCtH}d-Y#?`ACIGu6{Fj|&ZwKdBC*|x4B zR=K=3zZp?`Yvn42BF{o|bsSPRIsv+pTAlVrUcjb3PMab=DcI^s1`(@JlMR|;&{U_q zt$~rKI^Paxiy8L(Co$0zF> zsTC-Fj^Kr5oC=(3IakzGxA5W#I!k41TZ>b+oc6k?OmN}+;yG7JKn7DCC@fhzUk~HD z0n$74X@;)XRPWRZk6gBKBGTEFhAcg(v3Y~(oQ!dd?(EN=s1y?b6rc#XUv!@wQE?^wU42NvDv9^Y^ZT~8mX;@AUmN*FVhV=VzaG|Sh~vTnWl<#FI%;NFG)Df&8_A9 zOD#!H*S%hsSc}tGC8EaW@>MMko0!UFoUAUdYbkHfj}2#Z)R@qzS>4u9HAyon+gckZ z(UogSCrC^3eMvs7n9mwLp0FpXeCeFBMVHIjuB?0w3O+;kR?R9cpI5wGpH0f=%$qlV zIYUihoS<+{*_`F`%T6m>xnTaXzE(xcN>-Hiv8k;jpN;k9dJ5+(U9m(@trpGWLm7^o z%F0U?EFd1ItfXvCahyy~?8;@fr;V1)S-N<+v*gNh322U-z?YZJFI~>ul=&nMW3!yH zD@*4Oz%E}tAN@IHL|;dVI&)VnkO|a^d3G$UYHVn&TT{M{@mQwiV6Ro_F^DPqB!|Cz zXUY5}B#+U#WEr)+j$X_hgN9@(oym^Y*HfHwx`nh-QIj)@4#Z9!zQxDg#AvTB?M@W` z%E|8M_&@3zPp3&P@A^;dz!!8MYB=E4+lN}prJ4-$y8Nk^DqVN-L}F_@=b9?!0b0bc z)-LrXj26L-4GjNMot&+z%6XXX$EyK!kI}tI1%yK%)oU#=%Cn+yoR#LQ#LBnWS{_+(JBwQS7 zOUs)#XX(88#R2AmIg5&=_$tjfAJ=`D71l7PmXy`5YGmAKbp-V(g4J~m4B(<-%2B3@ zOz>GBS;yepP~EsrE*@6ZaCOpLL+`C&?r1u-ng7U)mT|qUitF(H6w24N)wkBk9Kw;} z3|Ql^rG}{?7Zf<*bSH5$z;mLID+a;Lfn{QCG^NtDW@}@4TYbG&lGC@I&2U-6{9ZON zi#AvH_|vC**b z@<9+wJ zuYRiIeLuP{Kh6KnbYK2p|9jhg`RPvSq-Z=#heJ+=(>bj_ey0DO?s%h+bB5Dnzu(=L zKg5Z&&y8p4aEPbx^EUR!&+@1+XXwSX< z>9Y;Jt3Uoo=g@uq@kcpP`##e6$U_c~e)V&N{I8(*6^5KKeHoStIcE*Pj|{*+djS49 zr|{Wn%ZA%O_XY(#kwz~X={WbB{PMh*KI9&~a)vvR{f1v**z$x(zkZ6f{zxYp@N>Q9 z4|h60qMw_spU!|Ed0I}=)AJGi{FC)_DB$O9>nCczS6%@vN0^NDS3cPT@W;dFyDv`9 zvboxxXJqvuPx%Y~nB~i!2svh2e&+JN`g1Hl65!9b{Ja2vvE@et{4)6crC;6(*&n~f z`l+yfI&~@?XQSo!SiY`sWFO|Ir_AIl8t@ZYVfdYv-#I{fcH4NntbVXOyDi@<&wW<^ zNI?HSFZ}`j*De28fbZ3db9w*uk{RH8^%4p2pRoS(0{m~m@2~tntUROEk5_J9y&SUq zk6JH>uIRsBoRxj+g=F@d&Vl$p9w1*{J$73EUOjsCwL8G~>Z>cj_v))V!1wCwP=N3C zqay*nS6@8=zE@wz0{mA8$k&I}mvd#`^7QJf)AB!ReRW>de|;UYe6KzHet>lT4Zh2H zyyB%OHR?EdJP;^Hj@y6zo<9J8$^iVi1Mo`*;9olczkUGzM)=AZ#x86Z2j9)N#7 zd?|?&riVb zFJC{_`e!&P1#@+LGXIm~r{ja+AQCrJ^WS6m;L8*c>K+l-|aCh-U+|Ia{i>! zbI$1f+wtEPr*qo?ehvtqayasWDW4{5a8T=KIJ=jca_;7RF>?HP06+3o zo&L(qN?T75{d)@bT*_vQBM*M<5)(`?}&?5ROv6y$1J}jYNCAwdhP)I+*KDw zXKTM$xepRQ?7#Sw=o!#)^l*WmqfGC}U|pV9y2qxx0y_Cyr_O(@+%o`_X8%`vTEAaT zbZtwx+g3pTfa*E*xYXbD+|K+Rk;jI7qCn5R${&x3zpdyElD@u}SD%Lq=*Lu##}2J1 z-LHM;Z-|Bs)#KGj6Hb2U*ZRJN=~)5#@*VZ>G53CN6VYkBtNq1F^2Jo5FRDMFn|Rx& z<$BD)rbqufvL`zj)48rX1Jjq2CnnKVLw9sery33C#22!<}sZ?BCJe27a=`YG;QY z*3%KiFN)n()IYZ?-D9Zss2)EL{D|^B)NTjV5SJ1i_33i;xmo!=rf8qi z_mefK=V84+YIUN!S&yBy_YZ(h?Kz z_hpYQJx%3eeiFI)Ne7%W&p$6Npm!J0uVZ>g21CAA>5G?WeADN+Tb1rH!u079it`@B zd6&{X7W7`Cqko5wN>ADI%Qu<7ZFf6*RP{tZ5q`T*9aH*%yI=pVK+kESquk@_SLTQB zK;BC72Osw?1)bXEzX$go&?(-oQGc-U`(foDxVVq2eq1k1Dt+k}QvXH1D!K2;uk0J7 z7Oy^MdUT#yRsJtBT~C7Dp#u6N1@tEi=+A*p?K;!7>s99O$Y8GDa-P^{+1Y=+(hvVF z=32^c6kWyipyGPCUHK!80|+C$eW-wczJPwa>haHmO9lL22c7J{?8fzDM8~*0>Bimf z3iP~EKtJnzu}|lMjH9FPmUgXGy2o5zrgWccfxf*awM_5G3>f6?f!KS=;T-S*Bn3@zRG&C6*>#g2V`fD z8NWd3KG(}Srf2nRQ2zRfm@k??_Z9GCCFuM#*2z|<>r+^kiKMPrrA(B`%H;eetfvLk zXa;Lou?&_#1?j7mNq}>jNTbUrD!VrKnv!z$wIrv@jav%~7I9`N&@o$`F0S_+Uv-k) z-Z897#Z`vJ!3s>PZWc4(d~#QHyl--R94oMaXS$_2Tf=VeZMCQ}vJL;`2t2#77*=E# z+OjjvjXhWpJdeWJz|D~<0*ztUDu>%e7ugB!b{oJc)Ps*LOz1fj20 zgo#;oxqYqbFC=z8TAxd-h17bk1{R%Hr;^|jtsll>7P}ow2lfbefpQ%8e$S z)c3bfrhznWpJ5p_P8yAB53Mt9)MtXT(ex?SAmbud4nrxHlVd@0OHK+fEm&w9YMGb~ z&Ss=y#yUHix(bkciZ^vynWH9|7paeLu+Bo5%(XX^h9BaUdL4`4BdEGPVAH|b zh(-Z;YtD_0K|7W>SI4mm8<4Rk;Bx89b#*b!2WFg^$&+ z)PB4L&QNrWEqq5|o4UbHi})eBr3=T_%kbr-UN6<6p+R8I2e0kngZ}=Tc)#b`?a|P# zJ-c@T-H`0Oz8^SE6NIz01$XV<%P3A@Ad=*|JzD`n1^_=va3;=|8Nax)eb-QO?G9z% zam}7QW{6iP83dN}7ph7YqU4&JcWv#zej76(I9N{*8kVDl5M&vBvVG_7J^-- z+6P<}7}>SP5Y%st@AI6hC!G+P?(=kpTe_1oDmQMjL_@ zmk2UJQKwy8PYIA*Db4Im!DcIT=qMBvj==uVP(oM%_MerB8q%D!?j60?)#`|30a{Mr za}*7mvz}RiD#)eYptJ{xLGK2r?W#g0a;opbO$FBHfwWJX|)9R=2W=?McdK4om#E!&yw9pS^>l%5ICn+0P7N#P+);6_wo}S@o@{E zR5orGX_El2L?}yzWTtBSI@%c1N<$DPOzRA~7cGNRT|=lAZXDHN2CnM_oB<3$Egj7$ zA`Ba1!Z!r z;1)6<8sj4$Pxty$$g$VMze#Xv+q653_(8;mH^UI=TLFFPF*P!)o7={k z0^AETah)eIjL~eu44pE z{93DTY1mEGfQ@XUc5{5eDj`0X`xukZ0020!U3dz-#~?f33NmhrOWPW_cJ<1P`4OX| zF@}G(yN_<6Q~`1zL$szljY507mv~Byn{m+WT#w11x4C&!7?3huru%e%gw817BmAO%5Nm8J^>j$!GYM5aj5&-Qf z{OY_+hXkhA=@}PK%`*66Or5x=Y!;#S``p(E*%46S0vuD)rIQ~G;Py#)&2;m%Rr1aw zXEb2GVJ**pFOsbmbzv*#M1U(z8Ia#&aCz)yGKq%qLURNYN=v_xB=b54%}%Llel=ZB zHxE5SAxQ3=S^*c(SeRDNv01MA$2WeEhkw8Hsoz8;w;axyu4y>5OU|Kkt?g)xeJg0}D zaC=N&9Lo!iI=9HFAj-rzeltfmhzDu{wqFXjUNPZ^}BwZ&3>aN*w5{wCY7htWUSqbVu{^}v-!zG5(b{u`;}HAL50k_&gQX3&(Y3?9PG7z8d4IK_0IfZ{O1P>h!5*`$O@zagSL64_i# zI+Qt_C-jh)E*t?~9_lFov=h--fgG5qD^Z1UJi61Y1&=2QS|v9INj;O3Tq6I$jDlxT zwjR0h%F|zvn1PH(H!peMG{5jBAUl;wJBx;6#50hbjnB-LkVgblqvn1k@q0*m1sAYz9@PyTCKB=*OeE}> zq^Jle;OdkyDMfv1P>i1vmnNEVQ;ABH$_6vLs6?#{-#6NEd1Pd^I&Wv3W<%df^6OE% z0Mlmw4D^3fXxR?^3E2K_d2m&Xvk3Vrc$di-pnoowi}<}5|FQJGC4Xd9jI#)NEqIst z8=U=JO|C{!Hx5GildEFBbW-JG;8()U{$6UdYj6aKZ^pJPA;}@{0n#o(9kG<~_u1mDTt^USm`_F;x zKY_gE16f=z@&mHV)L+Tb7jQtfFnyLc}df3G) zq=dfzY6ob6vF>g61000q+xqh(y<*Wf8Kdrf{U1|#v%le3R#ZNY(+WD%r_oWIQ~4%u z`BXaRg>tql(49snoV?{->H3(+KTVw$Y}Wrq`aKS?RF=m8(F}*S{yvd6JJU7VOy2f? z1r19*Tk@92WsAxiAIZ{Y=eGX`Xw-fhgS1(`mssV8UH^A7SNrEo2$S!byyb;CaKF?) zmR+V?Yu7oD56idwF)LpYL0_KL+xGOi>`=ayXXb#&YcpCEHaXj`b@H~Ja`^#~pKuNs zw=~JYJ0VZHto^aBn^=EHbjGtS-u`QF1)|8shcQ}$k7@?+6DE~Vziu^aoxr5Eif3QG) z?<*pI^38!T4!!(@%6t32_e?R|`RC=!n;zOrNol^D-YW8k*9(0ecHhT;^E-?GDlz%4N+-dYb3iZo1 literal 0 HcmV?d00001 diff --git a/build/h5bench_read b/build/h5bench_read new file mode 100755 index 0000000000000000000000000000000000000000..5a82e9ba3a1619502d98cf72431fa26bc6fad5e7 GIT binary patch literal 227560 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�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 literal 0 HcmV?d00001 diff --git a/build/h5bench_version.py b/build/h5bench_version.py new file mode 100644 index 00000000..96e3ce8d --- /dev/null +++ b/build/h5bench_version.py @@ -0,0 +1 @@ +__version__ = '1.4.0' diff --git a/build/h5bench_write b/build/h5bench_write new file mode 100755 index 0000000000000000000000000000000000000000..e0726fecca27eb8a76a005ce8ba89e71173e7772 GIT binary patch literal 240736 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 literal 0 HcmV?d00001 diff --git a/build/h5bench_write_normal_dist b/build/h5bench_write_normal_dist new file mode 100755 index 0000000000000000000000000000000000000000..98b8f5c130bc7e1429e83d83c60d2fb1d1982a43 GIT binary patch literal 259520 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�}hyrr*Lr`3IYL%q96a>U+y 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¥_AEP?@1p+pMEirPDX#0H>sA}!CJq|Sy5$cn2x8z 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 KG5=v@)&B*;pBaAu literal 0 HcmV?d00001 diff --git a/build_1.0/DartConfiguration.tcl b/build_1.0/DartConfiguration.tcl new file mode 100644 index 00000000..91a12c05 --- /dev/null +++ b/build_1.0/DartConfiguration.tcl @@ -0,0 +1,106 @@ +# This file is configured by CMake automatically as DartConfiguration.tcl +# If you choose not to use CMake, this file may be hand configured, by +# filling in the required variables. + + +# Configuration directories and files +SourceDirectory: /users/PAS2406/henryzhou1201/h5bench_project/h5bench +BuildDirectory: /users/PAS2406/henryzhou1201/h5bench_project/h5bench/build_1.0 + +# Where to place the cost data store +CostDataFile: + +# Site is something like machine.domain, i.e. pragmatic.crd +Site: owens-login04.hpc.osc.edu + +# Build name is osname-revision-compiler, i.e. Linux-2.4.2-2smp-c++ +BuildName: Linux-c++ + +# Subprojects +LabelsForSubprojects: + +# Submission information +SubmitURL: http:// +SubmitInactivityTimeout: + +# Dashboard start time +NightlyStartTime: 00:00:00 EDT + +# Commands for the build/test/submit cycle +ConfigureCommand: "/users/PAS2406/henryzhou1201/.local/bin/cmake" "/users/PAS2406/henryzhou1201/h5bench_project/h5bench" +MakeCommand: /users/PAS2406/henryzhou1201/.local/bin/cmake --build . --config "${CTEST_CONFIGURATION_TYPE}" +DefaultCTestConfigurationType: Release + +# version control +UpdateVersionOnly: + +# CVS options +# Default is "-d -P -A" +CVSCommand: +CVSUpdateOptions: + +# Subversion options +SVNCommand: +SVNOptions: +SVNUpdateOptions: + +# Git options +GITCommand: /usr/bin/git +GITInitSubmodules: +GITUpdateOptions: +GITUpdateCustom: + +# Perforce options +P4Command: +P4Client: +P4Options: +P4UpdateOptions: +P4UpdateCustom: + +# Generic update command +UpdateCommand: /usr/bin/git +UpdateOptions: +UpdateType: git + +# Compiler info +Compiler: /usr/local/gnu/8.4.0/bin/c++ +CompilerVersion: 8.4.0 + +# Dynamic analysis (MemCheck) +PurifyCommand: +ValgrindCommand: +ValgrindCommandOptions: +DrMemoryCommand: +DrMemoryCommandOptions: +CudaSanitizerCommand: +CudaSanitizerCommandOptions: +MemoryCheckType: +MemoryCheckSanitizerOptions: +MemoryCheckCommand: /usr/bin/valgrind +MemoryCheckCommandOptions: +MemoryCheckSuppressionFile: + +# Coverage +CoverageCommand: /usr/local/gnu/8.4.0/bin/gcov +CoverageExtraFlags: -l + +# Testing options +# TimeOut is the amount of time in seconds to wait for processes +# to complete during testing. After TimeOut seconds, the +# process will be summarily terminated. +# Currently set to 25 minutes +TimeOut: 1500 + +# During parallel testing CTest will not start a new test if doing +# so would cause the system load to exceed this value. +TestLoad: + +UseLaunchers: +CurlOptions: +# warning, if you add new options here that have to do with submit, +# you have to update cmCTestSubmitCommand.cxx + +# For CTest submissions that timeout, these options +# specify behavior for retrying the submission +CTestSubmitRetryDelay: 5 +CTestSubmitRetryCount: 3 diff --git a/build_1.0/h5bench b/build_1.0/h5bench new file mode 100755 index 00000000..992e1edf --- /dev/null +++ b/build_1.0/h5bench @@ -0,0 +1,1022 @@ +#!/usr/bin/env python3 + +import os +import sys +import json +import time +import uuid +import shlex +import errno +import distutils.spawn +import argparse +import collections +import subprocess +import h5bench_version +import h5bench_configuration +import logging +import logging.handlers + + +class H5bench: + """H5bench benchmark suite.""" + + H5BENCH_PATTERNS_WRITE = 'h5bench_write' + H5BENCH_PATTERNS_WRITE_UNLIMITED = 'h5bench_write_unlimited' + H5BENCH_PATTERNS_WRITE_VAR_NORMAL_DIST = 'h5bench_write_var_normal_dist' + H5BENCH_PATTERNS_APPEND = 'h5bench_append' + H5BENCH_PATTERNS_OVERWRITE = 'h5bench_overwrite' + H5BENCH_PATTERNS_READ = 'h5bench_read' + H5BENCH_EXERCISER = 'h5bench_exerciser' + H5BENCH_METADATA = 'h5bench_hdf5_iotest' + H5BENCH_AMREX_SYNC = 'h5bench_amrex_sync' + H5BENCH_AMREX_ASYNC = 'h5bench_amrex_async' + H5BENCH_OPENPMD_WRITE = 'h5bench_openpmd_write' + H5BENCH_OPENPMD_READ = 'h5bench_openpmd_read' + H5BENCH_E3SM = 'h5bench_e3sm' + H5BENCH_MACSIO = 'h5bench_macsio' + + def __init__(self, setup, prefix=None, debug=None, abort=None, validate=None, filter=None): + """Initialize the suite.""" + self.LOG_FILENAME = '{}-h5bench.log'.format(setup.replace('.json', '')) + + self.check_parallel() + + self.configure_log(debug) + + self.prefix = prefix + self.setup = setup + self.abort = abort + self.validate = validate + + if filter: + self.filter = filter.split(',') + else: + self.filter = None + + def check_parallel(self): + """Check for parallel overwrite command.""" + mpi = [ + 'mpirun', 'mpiexec', + 'srun' + ] + + # Get user defined shell + if 'SHELL' in os.environ: + shell = os.environ['SHELL'] + + for m in mpi: + if m in shell: + print('You should not call MPI directly when running h5bench.') + + sys.exit(os.EX_USAGE) + else: + shell = None + + def configure_log(self, debug): + """Configure the logging system.""" + self.logger = logging.getLogger('h5bench') + + if debug: + self.logger.setLevel(logging.DEBUG) + else: + self.logger.setLevel(logging.INFO) + + # Defines the format of the logger + formatter = logging.Formatter( + '%(asctime)s %(module)s - %(levelname)s - %(message)s' + ) + + # Configure the log rotation + handler = logging.handlers.RotatingFileHandler( + self.LOG_FILENAME, + maxBytes=268435456, + backupCount=50, + encoding='utf8' + ) + + handler.setFormatter(formatter) + + self.logger.addHandler(handler) + + if debug: + console = logging.StreamHandler() + console.setFormatter(formatter) + + self.logger.addHandler(console) + + def prepare(self, setup): + """Create a directory to store all the results of the benchmark.""" + self.directory = setup['directory'] + + try: + # Create a temporary directory to store all configurations + os.makedirs(self.directory) + except OSError as exc: + if exc.errno != errno.EEXIST: + raise + + self.logger.warning('Base directory already exists: {}'.format(self.directory)) + + pass + except Exception as e: + self.logger.debug('Unable to create {}: {}'.format(self.directory, e)) + + # Check for Lustre support to set the data stripping configuration + try: + command = 'lfs getstripe {}'.format(self.directory) + + arguments = shlex.split(command) + + s = subprocess.Popen(arguments, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + sOutput, sError = s.communicate() + + if s.returncode == 0: + self.logger.info('Lustre support detected') + + if 'file-system' in setup: + if 'lustre' in setup['file-system']: + command = 'lfs setstripe' + + if 'stripe-size' in setup['file-system']['lustre']: + command += ' -S {}'.format(setup['file-system']['lustre']['stripe-size']) + + if 'stripe-count' in setup['file-system']['lustre']: + command += ' -c {}'.format(setup['file-system']['lustre']['stripe-count']) + + command += ' {}'.format(self.directory) + + self.logger.debug('Lustre stripping configuration: {}'.format(command)) + + arguments = shlex.split(command) + + s = subprocess.Popen(arguments, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + sOutput, sError = s.communicate() + + else: + self.logger.info('Lustre support not detected') + except Exception: + self.logger.info('Lustre support not detected') + + def validate_json(self, setup): + """Make sure JSON contains all the necessary properties.""" + properties = [ + 'mpi', + 'vol', + 'file-system', + 'directory', + 'benchmarks' + ] + + for p in properties: + if p not in setup: + self.logger.critical('JSON configuration file is invalid: "{}" property is missing'.format(p)) + + sys.exit(os.EX_DATAERR) + + def run(self): + """Run all the benchmarks/kernels.""" + self.logger.info('Starting h5bench Suite') + + try: + with open(self.setup) as file: + setup = json.load(file, object_pairs_hook=collections.OrderedDict) + except FileNotFoundError: + self.logger.critical('Unable to open the input configuration file') + + sys.exit(os.EX_NOINPUT) + except Exception as e: + self.logger.critical('Unable to parse the input configuration file)') + self.logger.critical(e) + + sys.exit(os.EX_NOINPUT) + + self.validate_json(setup) + self.prepare(setup) + + self.vol_environment = os.environ.copy() + self.prepare_vol(setup['vol']) + + benchmarks = setup['benchmarks'] + + for benchmark in benchmarks: + name = benchmark['benchmark'] + + # Check if filters were enabled + if self.filter: + # Skip the benchmark if no specified in the argument + if name not in self.filter: + self.logger.warning('Skipping "{}" due to active filters'.format(name)) + + continue + + id = str(uuid.uuid4()).split('-')[0] + if 'SLURM_JOB_ID' in os.environ: + jobid = os.environ['SLURM_JOB_ID'] # nersc + elif 'COBALT_JOBID' in os.environ: + jobid = os.environ['COBALT_JOBID'] # alcf_theta + elif 'PBS_JOBID' in os.environ: + jobid = os.environ['PBS_JOBID'] # alcf_polaris + elif 'LSB_JOBID' in os.environ: + jobid = os.environ['LSB_JOBID'] # olcf + else: + jobid = None + + if jobid is not None: + id = id + "-" + jobid + self.logger.info('JOBID: {}'.format(jobid)) + + self.logger.info('h5bench [{}] - Starting'.format(name)) + self.logger.info('h5bench [{}] - DIR: {}/{}/'.format(name, setup['directory'], id)) + + os.makedirs('{}/{}'.format(setup['directory'], id)) + + self.prepare_parallel(setup['mpi']) + + if name in ['write', 'write-unlimited', 'overwrite', 'append', 'read', 'write_var_normal_dist']: + self.run_pattern(id, name, benchmark, setup['vol']) + elif name == 'exerciser': + self.run_exerciser(id, benchmark) + elif name == 'metadata': + self.run_metadata(id, benchmark) + elif name == 'amrex': + self.run_amrex(id, benchmark, setup['vol']) + elif name == 'openpmd': + self.run_openpmd(id, benchmark) + elif name == 'e3sm': + self.run_e3sm(id, benchmark) + elif name == 'macsio': + self.run_macsio(id, benchmark) + else: + self.logger.critical('{} - Unsupported benchmark/kernel') + + self.logger.info('h5bench [{}] - Complete'.format(name)) + + self.logger.info('Finishing h5bench Suite') + + def prepare_parallel(self, mpi): + """Prepare the MPI launch command.""" + if 'configuration' in mpi: + self.mpi = '{} {}'.format(mpi['command'], mpi['configuration']) + else: + if mpi['command'] in ['mpirun', 'mpiexec']: + self.mpi = '{} -np {}'.format(mpi['command'], mpi['ranks']) + elif mpi['command'] == 'srun': + self.mpi = '{} --cpu_bind=cores -n {}'.format(mpi['command'], mpi['ranks']) + else: + self.logger.warning('Unknown MPI launcher selected!') + + self.mpi = '' + + return + + self.logger.info('Parallel setup: {}'.format(self.mpi)) + + def prepare_vol(self, vol): + """Prepare the environment variables for the VOL.""" + + if vol is not None: + if 'LD_LIBRARY_PATH' not in self.vol_environment: + self.vol_environment['LD_LIBRARY_PATH'] = '' + + if 'DYLD_LIBRARY_PATH' not in self.vol_environment: + self.vol_environment['DYLD_LIBRARY_PATH'] = '' + + if 'LD_PRELOAD' not in self.vol_environment: + self.vol_environment['LD_PRELOAD'] = '' + + if 'library' in vol: + self.vol_environment['LD_LIBRARY_PATH'] += ':' + vol['library'] + self.vol_environment['DYLD_LIBRARY_PATH'] += ':' + vol['library'] + if 'path' in vol: + self.vol_environment['HDF5_PLUGIN_PATH'] = vol['path'] + if 'preload' in vol: + self.vol_environment['LD_PRELOAD'] += vol['preload'] + + self.vol_environment['ABT_THREAD_STACKSIZE'] = '100000' + + if 'HDF5_PLUGIN_PATH' in self.vol_environment: + self.logger.debug('HDF5_PLUGIN_PATH: %s', self.vol_environment['HDF5_PLUGIN_PATH']) + + if 'LD_LIBRARY_PATH' in self.vol_environment: + self.logger.debug('LD_LIBRARY_PATH: %s', self.vol_environment['LD_LIBRARY_PATH']) + + if 'DYLD_LIBRARY_PATH' in self.vol_environment: + self.logger.debug('DYLD_LIBRARY_PATH: %s', self.vol_environment['DYLD_LIBRARY_PATH']) + + if 'LD_PRELOAD' in self.vol_environment: + self.logger.debug('LD_PRELOAD: %s', self.vol_environment['LD_PRELOAD']) + + def enable_vol(self, vol): + """Enable VOL by setting the connector.""" + if 'connector' in vol: + self.vol_environment['HDF5_VOL_CONNECTOR'] = vol['connector'] + + self.logger.info('HDF5 VOL connector: %s', vol['connector']) + + def disable_vol(self, vol): + """Disable VOL by setting the connector.""" + if 'HDF5_VOL_CONNECTOR' in self.vol_environment: + del self.vol_environment['HDF5_VOL_CONNECTOR'] + + def reset_vol(self): + """Reset the environment variables for the VOL.""" + if self.vol_environment is not None: + if 'HDF5_PLUGIN_PATH' in self.vol_environment: + del self.vol_environment['HDF5_PLUGIN_PATH'] + if 'HDF5_VOL_CONNECTOR' in self.vol_environment: + del self.vol_environment['HDF5_VOL_CONNECTOR'] + + if 'ABT_THREAD_STACKSIZE' in self.vol_environment: + del self.vol_environment['ABT_THREAD_STACKSIZE'] + + def check_for_hdf5_error(self, stderr_file_name): + has_error_message = False + + with open(stderr_file_name, mode='r') as stderr_file: + lines = stderr_file.readlines() + + for line in lines: + if 'Error detected in HDF5' in line: + has_error_message = True + + self.logger.error(line.strip()) + self.logger.error('Check %s for detailed log', stderr_file_name) + + sys.exit(os.EX_IOERR) + + return has_error_message + + def run_pattern(self, id, operation, setup, vol): + """Run the h5bench_patterns (write/read) benchmarks.""" + try: + start = time.time() + + # Define the output file (should be a .h5 file) + file = '{}/{}'.format(self.directory, setup['file']) + configuration = setup['configuration'] + + # Disable any user-defined VOL connectors as we will be handling that + self.disable_vol(vol) + + if configuration['MODE'] in ['ASYNC', 'LOG']: + self.enable_vol(vol) + + configuration_file = '{}/{}/h5bench.cfg'.format(self.directory, id) + + # Create the configuration file for this benchmark + with open(configuration_file, 'w+') as f: + for key in configuration: + # Make sure the CSV file is generated in the temporary path + if key == 'CSV_FILE': + configuration[key] = '{}/{}/{}'.format(self.directory, id, configuration[key]) + + if key == 'MODE': + continue + + f.write('{}={}\n'.format(key, configuration[key])) + + if operation == 'append': + f.write('IO_OPERATION=APPEND\n') + + if operation == 'overwrite': + f.write('IO_OPERATION=OVERWRITE\n') + + if operation == 'write': + benchmark_path = self.H5BENCH_PATTERNS_WRITE + + if operation == 'write-unlimited': + benchmark_path = self.H5BENCH_PATTERNS_WRITE_UNLIMITED + + if operation == 'write_var_normal_dist': + benchmark_path = self.H5BENCH_PATTERNS_WRITE_VAR_NORMAL_DIST + + if operation == 'overwrite': + benchmark_path = self.H5BENCH_PATTERNS_OVERWRITE + + if operation == 'append': + benchmark_path = self.H5BENCH_PATTERNS_APPEND + + if operation == 'read': + benchmark_path = self.H5BENCH_PATTERNS_READ + + if self.prefix: + benchmark_path = self.prefix + '/' + benchmark_path + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + benchmark_path): + benchmark_path = h5bench_configuration.__install__ + '/' + benchmark_path + else: + benchmark_path = benchmark_path + + command = '{} {} {} {}'.format( + self.mpi, + benchmark_path, + configuration_file, + file + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + if configuration['MODE'] in ['ASYNC', 'LOG']: + self.disable_vol(vol) + + if self.validate: + used_async = False + + with open(stdout_file_name, mode='r') as stdout_file: + lines = stdout_file.readlines() + + for line in lines: + if 'Mode: ASYNC' in line: + used_async = True + break + + if (configuration['MODE'] == 'ASYNC' and used_async) or (configuration['MODE'] == 'SYNC' and not used_async): + self.logger.info('Requested and ran in %s mode', 'ASYNC' if used_async else 'SYNC') + else: + self.logger.warning('Requested %s mode but ran in %s mode', configuration['MODE'], 'ASYNC' if used_async else 'SYNC') + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + sys.exit(os.EX_SOFTWARE) + + def is_available(self, executable): + """Check if binary is available.""" + return distutils.spawn.find_executable( + executable, + path=os.environ['PATH'] + ':.' + ) + + def run_exerciser(self, id, setup): + """Run the exerciser benchmark.""" + if not self.is_available(self.H5BENCH_EXERCISER): + self.logger.critical('{} is not available'.format(self.H5BENCH_EXERCISER)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + configuration = setup['configuration'] + + parameters = [] + + parameters_binary = [ + 'keepfile', + 'usechunked', + 'indepio', + 'addattr', + 'derivedtype' + ] + + # Create the configuration parameter list + for key in configuration: + if key in parameters_binary: + if configuration[key].lower() == 'true': + parameters.append('--{} '.format(key)) + else: + parameters.append('--{} {} '.format(key, configuration[key])) + + if self.prefix: + benchmark_path = self.prefix + '/' + self.H5BENCH_EXERCISER + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_EXERCISER): + benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_EXERCISER + else: + benchmark_path = self.H5BENCH_EXERCISER + + command = '{} {} {}'.format( + self.mpi, + benchmark_path, + ' '.join(parameters) + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + sys.exit(os.EX_SOFTWARE) + + def run_metadata(self, id, setup): + """Run the metadata stress benchmark.""" + if not self.is_available(self.H5BENCH_METADATA): + self.logger.critical('{} is not available'.format(self.H5BENCH_METADATA)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + # Define the output file (should be a .h5 file) + file = '{}/{}'.format(self.directory, setup['file']) + configuration = setup['configuration'] + + configuration_file = '{}/{}/hdf5_iotest.ini'.format(self.directory, id) + + # Create the configuration file for this benchmark + with open(configuration_file, 'w+') as f: + f.write('[DEFAULT]\n') + + for key in configuration: + # Make sure the CSV file is generated in the temporary path + if key == 'csv-file': + configuration[key] = '{}/{}/{}'.format(self.directory, id, configuration[key]) + + f.write('{} = {}\n'.format(key, configuration[key])) + + f.write('hdf5-file = {}\n'.format(file)) + + if self.prefix: + benchmark_path = self.prefix + '/' + self.H5BENCH_METADATA + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_METADATA): + benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_METADATA + else: + benchmark_path = self.H5BENCH_METADATA + + command = '{} {} {}'.format( + self.mpi, + benchmark_path, + configuration_file + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + sys.exit(os.EX_SOFTWARE) + + def run_amrex(self, id, setup, vol): + """Run the AMReX benchmark.""" + if not self.is_available(self.H5BENCH_AMREX_SYNC): + self.logger.critical('{} is not available'.format(self.H5BENCH_AMREX_SYNC)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + directory = '{}/{}/{}'.format(self.directory, id, setup['file']) + configuration = setup['configuration'] + + # Disable any user-defined VOL connectors as we will be handling that + self.disable_vol(vol) + + if configuration['mode'] in ['ASYNC', 'LOG']: + self.enable_vol(vol) + + binary = self.H5BENCH_AMREX_ASYNC + else: + binary = self.H5BENCH_AMREX_SYNC + + configuration_file = '{}/{}/amrex.ini'.format(self.directory, id) + + try: + # Create a temporary directory to store all configurations + os.makedirs(directory) + except OSError as exc: + if exc.errno != errno.EEXIST: + raise + + self.logger.warning('Base directory already exists: {}'.format(self.directory)) + + pass + except Exception as e: + self.logger.debug('Unable to create {}: {}'.format(self.directory, e)) + + # Create the configuration file for this benchmark + with open(configuration_file, 'w+') as f: + for key in configuration: + f.write('{} = {}\n'.format(key, configuration[key])) + + # f.write('directory = {}\n'.format(directory)) + + if self.prefix: + benchmark_path = self.prefix + '/' + self.binary + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): + benchmark_path = h5bench_configuration.__install__ + '/' + binary + else: + benchmark_path = binary + + command = '{} {} {}'.format( + self.mpi, + benchmark_path, + configuration_file + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + if configuration['mode'] in ['ASYNC', 'LOG']: + self.disable_vol(vol) + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + sys.exit(os.EX_SOFTWARE) + + def run_openpmd(self, id, setup): + """Run the OpenPMD kernel benchmark.""" + if not self.is_available(self.H5BENCH_OPENPMD_WRITE): + self.logger.critical('{} is not available'.format(self.H5BENCH_OPENPMD_WRITE)) + + sys.exit(os.EX_UNAVAILABLE) + + if not self.is_available(self.H5BENCH_OPENPMD_READ): + self.logger.critical('{} is not available'.format(self.H5BENCH_OPENPMD_READ)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + # Define the output file (should be a .h5 file) + if 'file' in setup: + self.logger.warning('OpenPMD does not take an input file name, only the directory') + + configuration = setup['configuration'] + + configuration_file = '{}/{}/openpmd.input'.format(self.directory, id) + + # Create the configuration file for this benchmark + with open(configuration_file, 'w+') as f: + for key in configuration: + if 'operation' in key: + continue + + f.write('{}={}\n'.format(key, configuration[key])) + + f.write('fileLocation={}\n'.format(self.directory)) + + if configuration['operation'] == 'write': + binary = self.H5BENCH_OPENPMD_WRITE + + if self.prefix: + benchmark_path = self.prefix + '/' + binary + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): + benchmark_path = h5bench_configuration.__install__ + '/' + binary + else: + benchmark_path = binary + + command = '{} {} {}'.format( + self.mpi, + benchmark_path, + configuration_file + ) + elif configuration['operation'] == 'read': + binary = self.H5BENCH_OPENPMD_READ + + if self.prefix: + benchmark_path = self.prefix + '/' + binary + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): + benchmark_path = h5bench_configuration.__install__ + '/' + binary + else: + benchmark_path = binary + + file_path = '{}/8a_parallel_3Db'.format(self.directory) + + command = '{} {} {} {}'.format( + self.mpi, + benchmark_path, + file_path, + configuration['pattern'] + ) + else: + self.logger.error('Unsupported operation for OpenPMD benchmark') + + sys.exit(os.EX_SOFTWARE) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + def run_e3sm(self, id, setup): + """Run the E3SM benchmark.""" + if not self.is_available(self.H5BENCH_E3SM): + self.logger.critical('{} is not available'.format(self.H5BENCH_E3SM)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + configuration = setup['configuration'] + + parameters = [] + + # Create the configuration parameter list + for key in configuration: + if key not in ['i', 'o', 'map'] and configuration[key]: + parameters.append('-{} {} '.format(key, configuration[key])) + + # Temporarily overwrite -x and -a to only supported patterns + parameters.append('-{} {}'.format('a', 'hdf5')) + parameters.append('-{} {}'.format('x', 'blob')) + + parameters.append('-o {}/{}/{} '.format(self.directory, id, setup['file'])) + + file = '{}/{}'.format(self.directory, configuration['map']) + + if self.prefix: + benchmark_path = self.prefix + '/' + self.H5BENCH_E3SM + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_E3SM): + benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_E3SM + else: + benchmark_path = self.H5BENCH_E3SM + + command = '{} {} {} {}'.format( + self.mpi, + benchmark_path, + ' '.join(parameters), + file + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + end = time.time() + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + def run_macsio(self, id, setup): + """Run the MACSIO benchmark.""" + if not self.is_available(self.H5BENCH_MACSIO): + self.logger.critical('{} is not available'.format(self.H5BENCH_MACSIO)) + + sys.exit(os.EX_UNAVAILABLE) + + try: + start = time.time() + + configuration = setup['configuration'] + + parameters = [] + + # Create the configuration parameter list + for key in configuration: + if key not in ['filebase', 'interface'] and configuration[key]: + parameters.append('--{} {} '.format(key, configuration[key])) + + parameters.append('--interface {} '.format('hdf5')) + parameters.append('--filebase {}/{}/{} '.format(self.directory, id, setup['file'].replace('.h5', ''))) + parameters.append('--log_file_name {}/{}/macsio.log '.format(self.directory, id)) + parameters.append('--timings_file_name {}/{}/timings.log '.format(self.directory, id)) + + if self.prefix: + benchmark_path = self.prefix + '/' + self.H5BENCH_MACSIO + else: + if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_MACSIO): + benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_MACSIO + else: + benchmark_path = self.H5BENCH_MACSIO + + command = '{} {} {}'.format( + self.mpi, + benchmark_path, + ' '.join(parameters) + ) + + self.logger.info(command) + + # Make sure the command line is in the correct format + arguments = shlex.split(command) + + stdout_file_name = '{}/{}/stdout'.format(self.directory, id) + stderr_file_name = '{}/{}/stderr'.format(self.directory, id) + + with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: + s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) + sOutput, sError = s.communicate() + + if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): + self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) + else: + self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) + + if self.abort: + self.logger.critical('h5bench execution aborted upon first error') + + sys.exit(os.EX_SOFTWARE) + + # Move the files if they were generated + if os.path.isfile('{}-macsio-log.log'.format(id)): + os.rename('{}-macsio-log.log'.format(id), '{}/{}/macsio-log.log'.format(self.directory, id)) + + if os.path.isfile('{}-macsio-timings.log'.format(id)): + os.rename('{}-macsio-timings.log'.format(id), '{}/{}/macsio-timings.log'.format(self.directory, id)) + + end = time.time() + + self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) + except Exception as e: + self.logger.error('Unable to run the benchmark: %s', e) + + +def main(): + PARSER = argparse.ArgumentParser( + description='H5bench: a Parallel I/O Benchmark Suite for HDF5: ' + ) + + PARSER.add_argument( + 'setup', + action='store', + help='JSON file with the benchmarks to run' + ) + + PARSER.add_argument( + '-a', + '--abort-on-failure', + action='store_true', + dest='abort', + help='Stop h5bench if a benchmark failed' + ) + + PARSER.add_argument( + '-d', + '--debug', + action='store_true', + dest='debug', + help='Enable debug mode' + ) + + PARSER.add_argument( + '-v', + '--validate-mode', + action='store_true', + dest='validate', + help='Validated if the requested mode (async/sync) was run' + ) + + PARSER.add_argument( + '-p', + '--prefix', + action='store', + dest='prefix', + help='Prefix where all h5bench binaries were installed' + ) + + PARSER.add_argument( + '-f', + '--filter', + action='store', + dest='filter', + help='Execute only filtered benchmarks' + ) + + PARSER.add_argument( + '-V', + '--version', + action='version', + version='%(prog)s ' + h5bench_version.__version__ + ) + + ARGS = PARSER.parse_args() + + BENCH = H5bench(ARGS.setup, ARGS.prefix, ARGS.debug, ARGS.abort, ARGS.validate, ARGS.filter) + BENCH.run() + + +if __name__ == '__main__': + main() diff --git a/build_1.0/h5bench_append b/build_1.0/h5bench_append new file mode 100755 index 0000000000000000000000000000000000000000..7d09ca0981cc04088021d17d6835339f3d6cf40a GIT binary patch literal 226888 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 D?;OMA literal 0 HcmV?d00001 diff --git a/build_1.0/h5bench_configuration.py b/build_1.0/h5bench_configuration.py new file mode 100644 index 00000000..6da8b805 --- /dev/null +++ b/build_1.0/h5bench_configuration.py @@ -0,0 +1 @@ +__install__ = "/users/PAS2406/henryzhou1201/h5bench_project/bin_1.0/bin/" diff --git a/build_1.0/h5bench_overwrite b/build_1.0/h5bench_overwrite new file mode 100755 index 0000000000000000000000000000000000000000..59e8e5f9f25ee2ef24b8546cff83420ce210f85d GIT binary patch literal 222544 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
{w>Yf0%7{8^jQ^V%5e@3LA-qA|k>Fb7 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

CR;oUh)2)d5{8AH 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 R`X9Sh^eO&Kc(}{xe*qypLqq@o literal 0 HcmV?d00001 diff --git a/build_1.0/h5bench_read b/build_1.0/h5bench_read new file mode 100755 index 0000000000000000000000000000000000000000..fe28e433e8706d8893edb1daf4492bcff4e677d3 GIT binary patch literal 227824 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

0YnJrum|^-o%rN}|CIm}%>@&vuQDjm{ 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%0A&AlJE~n_=hC? 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 literal 0 HcmV?d00001 diff --git a/build_1.0/h5bench_version.py b/build_1.0/h5bench_version.py new file mode 100644 index 00000000..96e3ce8d --- /dev/null +++ b/build_1.0/h5bench_version.py @@ -0,0 +1 @@ +__version__ = '1.4.0' diff --git a/build_1.0/h5bench_write b/build_1.0/h5bench_write new file mode 100755 index 0000000000000000000000000000000000000000..a54ea6d4f8f5c6007420097641a84e90daa08763 GIT binary patch literal 245312 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 diff --git a/build_1.0/h5bench_write_unlimited b/build_1.0/h5bench_write_unlimited deleted file mode 100755 index 8179d02865d9697f8d6523769495409b7ba4c29a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 245464 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 diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index c3b1f34a..3062d75a 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -53,10 +53,13 @@ #include "H5FDioc.h" #endif #define DIM_MAX 3 + #define H5Z_FILTER_ZFP 32013 #define H5Z_FILTER_SZ 32017 #define H5Z_FILTER_SZ3 32024 +#define ABS 0 + herr_t ierr; typedef struct compress_info { @@ -890,6 +893,10 @@ set_globals(const bench_params *params) COMPRESS_INFO.dcpl_id = H5Pcreate(H5P_DATASET_CREATE); assert(COMPRESS_INFO.dcpl_id > 0); + // Set shuffle filter prior to any compression filters + ret = H5Pset_shuffle(COMPRESS_INFO.dcpl_id); + assert(ret >= 0); + /* Set chunked layout and chunk dimensions */ ret = H5Pset_layout(COMPRESS_INFO.dcpl_id, H5D_CHUNKED); assert(ret >= 0); @@ -914,6 +921,8 @@ set_globals(const bench_params *params) ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ, H5Z_FLAG_MANDATORY, 0, NULL); } else if (params->compress_filter == SZ3) { + // unsigned int cd_values[3]; + // cd_values[0] = ABS; ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ3, H5Z_FLAG_MANDATORY, 0, NULL); } else if (params->compress_filter == ZFP) { @@ -1192,11 +1201,6 @@ main(int argc, char *argv[]) printf("H5Fcreate() time: %.3f s\n", fcreate_time_s); float flush_time_s = (float)(tflush_end - tflush_start) / (1000.0 * 1000.0); - printf("H5Fflush() time: %.3f s\n", flush_time_s); - - float fclose_time_s = (float)(tfclose_end - tfclose_start) / (1000.0 * 1000.0); - printf("H5Fclose() time: %.3f s\n", fclose_time_s); - float oct_s = (float)(t4 - t1) / (1000.0 * 1000.0); printf("Observed completion time: %.3f s\n", oct_s); From 8282777cd0ce51b341833b36e1e860491d6a52cd Mon Sep 17 00:00:00 2001 From: skyFzz Date: Fri, 28 Jun 2024 12:55:23 -0400 Subject: [PATCH 05/61] add misdeleted 4 lines of code back --- h5bench_patterns/h5bench_write.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 3062d75a..3c2dfaef 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -1201,6 +1201,11 @@ main(int argc, char *argv[]) printf("H5Fcreate() time: %.3f s\n", fcreate_time_s); float flush_time_s = (float)(tflush_end - tflush_start) / (1000.0 * 1000.0); + printf("H5Fflush() time: %.3f s\n", flush_time_s); + + float fclose_time_s = (float)(tfclose_end - tfclose_start) / (1000.0 * 1000.0); + printf("H5Fclose() time: %.3f s\n", fclose_time_s); + float oct_s = (float)(t4 - t1) / (1000.0 * 1000.0); printf("Observed completion time: %.3f s\n", oct_s); From e21353235125e2f7467d3926179bb21c29d982d2 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Mon, 15 Jul 2024 12:40:17 -0400 Subject: [PATCH 06/61] Added output compressed size and compression ratio --- commons/h5bench_util.c | 24 +++++++++++--- commons/h5bench_util.h | 1 - h5bench_patterns/h5bench_write.c | 54 ++++++++++++++++++++++++++------ 3 files changed, 64 insertions(+), 15 deletions(-) diff --git a/commons/h5bench_util.c b/commons/h5bench_util.c index e6f427fb..7cea3fef 100644 --- a/commons/h5bench_util.c +++ b/commons/h5bench_util.c @@ -31,6 +31,18 @@ int parse_unit(char *str_in, unsigned long long *num, char **unit_str); int has_vol_async; +const char* compress_filter_names[] = { + "INVALID", + "N_BIT", + "SZIP", + "GZIP", + "SZ", + "SZ3", + "ZFP" +}; + +const int compress_filter_ids[] = { -1, 5, 4, 1, 32017, 32024, 32013 }; + unsigned long get_time_usec() { @@ -181,8 +193,10 @@ ts_delayed_close(mem_monitor *mon, unsigned long *metadata_time_total, int dset_ unsigned long t1, t2; unsigned long meta_time = 0; - if (!has_vol_async) + if (!has_vol_async) { + printf("DEBUG - ts_delayed_close() does not work, has_vol_async == 0\n"); return 0; + } for (int i = 0; i < mon->time_step_cnt; i++) { ts_run = &(mon->time_steps[i]); @@ -200,7 +214,8 @@ ts_delayed_close(mem_monitor *mon, unsigned long *metadata_time_total, int dset_ } } *metadata_time_total = meta_time; - return 0; + printf("DEBUG - ts_delayed_close() works\n"); + return 0; } int @@ -855,9 +870,6 @@ _set_params(char *key, char *val_in, bench_params *params_in_out, int do_write) if (strcmp(val_in, "N_BIT") == 0) { (*params_in_out).compress_filter = N_BIT; } - else if (strcmp(val_in, "SCALE_OFFSET") == 0) { - (*params_in_out).compress_filter = SCALE_OFFSET; - } else if (strcmp(val_in, "SZIP") == 0) { (*params_in_out).compress_filter = SZIP; } @@ -1298,6 +1310,8 @@ print_params(const bench_params *p) if (p->useCompress) { printf("Use compression: %d\n", p->useCompress); + printf(" Compression_filter_name: %s\n", compress_filter_names[p->compress_filter]); // New + printf(" Compression_filter_id: %d\n", compress_filter_ids[p->compress_filter]); // New printf(" chunk_dim1: %lu\n", p->chunk_dim_1); if (p->num_dims >= 2) { printf(" chunk_dim2: %lu\n", p->chunk_dim_2); diff --git a/commons/h5bench_util.h b/commons/h5bench_util.h index 7dba89ba..d61f5f3f 100644 --- a/commons/h5bench_util.h +++ b/commons/h5bench_util.h @@ -103,7 +103,6 @@ typedef enum read_option { typedef enum compress_filter { // new COMPRESS_FILTER_INVALID, N_BIT, - SCALE_OFFSET, SZIP, GZIP, SZ, diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 3c2dfaef..be9b228b 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -37,6 +37,7 @@ // 02/19/2019 --> Add option to write multiple timesteps of data - Tang // +#include #include #include #include @@ -48,12 +49,13 @@ #include #include "../commons/h5bench_util.h" #include "../commons/async_adaptor.h" + #ifdef HAVE_SUBFILING #include "H5FDsubfiling.h" #include "H5FDioc.h" #endif -#define DIM_MAX 3 +#define DIM_MAX 3 #define H5Z_FILTER_ZFP 32013 #define H5Z_FILTER_SZ 32017 #define H5Z_FILTER_SZ3 32024 @@ -66,6 +68,7 @@ typedef struct compress_info { int USE_COMPRESS; hid_t dcpl_id; hsize_t chunk_dims[DIM_MAX]; + hsize_t total_compressed_size; } compress_info; // Global Variables and dimensions @@ -762,7 +765,8 @@ _run_benchmark_write(bench_params params, hid_t file_id, hid_t fapl, hid_t files unsigned long metadata_time_exp = 0, data_time_exp = 0, t0, t1, t2, t3, t4; unsigned long metadata_time_imp = 0, data_time_imp = 0; unsigned long meta_time1 = 0, meta_time2 = 0, meta_time3 = 0, meta_time4 = 0, meta_time5 = 0; - for (int ts_index = 0; ts_index < timestep_cnt; ts_index++) { + COMPRESS_INFO.total_compressed_size = 0; + for (int ts_index = 0; ts_index < timestep_cnt; ts_index++) { meta_time1 = 0, meta_time2 = 0, meta_time3 = 0, meta_time4 = 0, meta_time5 = 0; time_step *ts = &(MEM_MONITOR->time_steps[ts_index]); MEM_MONITOR->mem_used += ts->mem_size; @@ -830,8 +834,13 @@ _run_benchmark_write(bench_params params, hid_t file_id, hid_t fapl, hid_t files for (int j = 0; j < dset_cnt; j++) { if (ts->dset_ids[j] != 0) { - H5Dclose_async(ts->dset_ids[j], ts->es_meta_close); - } + // get the size of each dataset after compression before losing access + hsize_t dset_size = H5Dget_storage_size(ts->dset_ids[j]); + COMPRESS_INFO.total_compressed_size += dset_size; + + // close the dataset + H5Dclose_async(ts->dset_ids[j], ts->es_meta_close); + } } H5Gclose_async(ts->grp_id, ts->es_meta_close); @@ -893,6 +902,10 @@ set_globals(const bench_params *params) COMPRESS_INFO.dcpl_id = H5Pcreate(H5P_DATASET_CREATE); assert(COMPRESS_INFO.dcpl_id > 0); + // Clear any possible residual filter settings + ret = H5Premove_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ALL); + assert(ret >= 0); + // Set shuffle filter prior to any compression filters ret = H5Pset_shuffle(COMPRESS_INFO.dcpl_id); assert(ret >= 0); @@ -908,9 +921,6 @@ set_globals(const bench_params *params) if (params->compress_filter == N_BIT) { ret = H5Pset_nbit(COMPRESS_INFO.dcpl_id); } - else if (params->compress_filter == SCALE_OFFSET) { - ret = H5Pset_scaleoffset(COMPRESS_INFO.dcpl_id, H5Z_SO_FLOAT_DSCALE, 0); - } else if (params->compress_filter == SZIP) { ret = H5Pset_szip(COMPRESS_INFO.dcpl_id, H5_SZIP_EC_OPTION_MASK, 8); } @@ -928,7 +938,9 @@ set_globals(const bench_params *params) else if (params->compress_filter == ZFP) { ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ZFP, H5Z_FLAG_MANDATORY, 0, NULL); } - + else { + ret = -1; + } assert(ret >= 0); } @@ -1143,7 +1155,9 @@ main(int argc, char *argv[]) unsigned long t2 = get_time_usec(); // t2 - t1: metadata: creating/opening unsigned long raw_write_time, inner_metadata_time, local_data_size; - int stat = _run_benchmark_write(params, file_id, fapl, filespace, memspace, data, data_size, + + // Run write benchmark + int stat = _run_benchmark_write(params, file_id, fapl, filespace, memspace, data, data_size, &local_data_size, &raw_write_time, &inner_metadata_time); if (stat < 0) { @@ -1164,6 +1178,8 @@ main(int argc, char *argv[]) H5Fclose_async(file_id, 0); + // reopen file and try to get the compressed data size for calculating compression ratio + unsigned long tfclose_end = get_time_usec(); MPI_Barrier(MPI_COMM_WORLD); unsigned long t4 = get_time_usec(); @@ -1186,10 +1202,19 @@ main(int argc, char *argv[]) read_time_val(params.compute_time, TIME_US) * (params.cnt_time_step - 1); printf("Total emulated compute time: %.3lf s\n", total_sleep_time_us / (1000.0 * 1000.0)); + // Report total write size double total_size_bytes = NUM_RANKS * local_data_size; value = format_human_readable(total_size_bytes); printf("Total write size: %.3lf %cB\n", value.value, value.unit); + // Report compression ratio + if (COMPRESS_INFO.USE_COMPRESS) { + float compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; + value = format_human_readable(COMPRESS_INFO.total_compressed_size); + printf("Total compressed size: %.3lf %cB\n", value.value, value.unit); + printf("Compression ratio: %.3f\n", compression_ratio); + } + float rwt_s = (float)raw_write_time / (1000.0 * 1000.0); float raw_rate = (float)total_size_bytes / rwt_s; printf("Raw write time: %.3f s\n", rwt_s); @@ -1216,6 +1241,17 @@ main(int argc, char *argv[]) value = format_human_readable(or_bs); printf("%s Observed write rate: %.3f %cB/s\n", mode_str, value.value, value.unit); + // Applied compression filters: + // Status: Success, Optional, Failed + // Name + // Filter_id + // Compression_ratio (runtime) + // Speed + // Complexity + // Space (memory) + // Latency + // Interoperability + printf("===========================================================\n"); if (params.useCSV) { From fc090f8e3531e8564f5ec30bc62fd222609bc4a8 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Mon, 22 Jul 2024 11:33:43 -0400 Subject: [PATCH 07/61] Add benchmark parameter--plugin_path and checks to set up HDF5_PLUGIN_PATH env for a specific compression filter --- commons/h5bench_util.c | 20 +++++++++++++++++++- commons/h5bench_util.h | 3 ++- h5bench_patterns/h5bench_write.c | 11 ++++++++++- 3 files changed, 31 insertions(+), 3 deletions(-) diff --git a/commons/h5bench_util.c b/commons/h5bench_util.c index 7cea3fef..88ce2b8d 100644 --- a/commons/h5bench_util.c +++ b/commons/h5bench_util.c @@ -866,7 +866,7 @@ _set_params(char *key, char *val_in, bench_params *params_in_out, int do_write) else (*params_in_out).read_option = READ_OPTION_INVALID; } - else if (strcmp(key, "COMPRESS_FILTER") == 0) { // new + else if (strcmp(key, "COMPRESS_FILTER") == 0) { // New if (strcmp(val_in, "N_BIT") == 0) { (*params_in_out).compress_filter = N_BIT; } @@ -889,6 +889,10 @@ _set_params(char *key, char *val_in, bench_params *params_in_out, int do_write) else (*params_in_out).compress_filter = COMPRESS_FILTER_INVALID; } + else if (strcmp(key, "HDF5_PLUGIN_PATH") == 0) { // New + // parse whatever the value is first + strcpy((*params_in_out).plugin_path, val_in); + } else if (strcmp(key, "NUM_DIMS") == 0) { int num = atoi(val); if (num > 0) @@ -1137,6 +1141,8 @@ bench_params_init(bench_params *params_out) (*params_out).align = 0; (*params_out).align_threshold = 0; (*params_out).align_len = 0; + + (*params_out).plugin_path = NULL; // New } int @@ -1272,6 +1278,18 @@ read_config(const char *file_path, bench_params *params_out, int do_write) return -1; } + // New, check if HDF5_PLUGIN_PATH inputted correctly and set up the env + if (params_out->useCompress) { + if (params_out->plugin_path != NULL) { + // overwrite the env + setenv("HDF5_PLUGIN_PATH", params_out->plugin_path, 1); + printf("DEBUG: HDF5_PLUGIN_PATH=%s\n", getenv("HDF5_PLUGIN_PATH")); + } else { + printf("Compress filter requires HDF5_PLUGIN_PATH environment variable set to be the path containing the shared library of the compression algorithm you chose.\n") + return -1; + } + } + return 0; } diff --git a/commons/h5bench_util.h b/commons/h5bench_util.h index d61f5f3f..3a51cd4d 100644 --- a/commons/h5bench_util.h +++ b/commons/h5bench_util.h @@ -100,7 +100,7 @@ typedef enum read_option { CS } read_option; -typedef enum compress_filter { // new +typedef enum compress_filter { // New COMPRESS_FILTER_INVALID, N_BIT, SZIP, @@ -126,6 +126,7 @@ typedef struct bench_params { } access_pattern; // write_pattern bench_pattern; + char * plugin_path; // New char * data_file_path; char * pattern_name; int meta_coll; // for write only, metadata collective diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index be9b228b..6acca751 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -906,9 +906,11 @@ set_globals(const bench_params *params) ret = H5Premove_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ALL); assert(ret >= 0); + /* // Set shuffle filter prior to any compression filters ret = H5Pset_shuffle(COMPRESS_INFO.dcpl_id); assert(ret >= 0); + */ /* Set chunked layout and chunk dimensions */ ret = H5Pset_layout(COMPRESS_INFO.dcpl_id, H5D_CHUNKED); @@ -1207,9 +1209,9 @@ main(int argc, char *argv[]) value = format_human_readable(total_size_bytes); printf("Total write size: %.3lf %cB\n", value.value, value.unit); + float compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; // Report compression ratio if (COMPRESS_INFO.USE_COMPRESS) { - float compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; value = format_human_readable(COMPRESS_INFO.total_compressed_size); printf("Total compressed size: %.3lf %cB\n", value.value, value.unit); printf("Compression ratio: %.3f\n", compression_ratio); @@ -1263,6 +1265,13 @@ main(int argc, char *argv[]) "seconds"); value = format_human_readable(total_size_bytes); fprintf(params.csv_fs, "total size, %.3lf, %cB\n", value.value, value.unit); + + if (COMPRESS_INFO.USE_COMPRESS) { + value = format_human_readable(COMPRESS_INFO.total_compressed_size); + fprintf(params.csv_fs, "total compressed size, %.3lf, %cB\n", value.value, value.unit); + fprintf(params.csv_fs, "compression ratio, %.3lf, %s\n", compression_ratio, ""); + } + fprintf(params.csv_fs, "raw time, %.3f, %s\n", rwt_s, "seconds"); value = format_human_readable(raw_rate); fprintf(params.csv_fs, "raw rate, %.3lf, %cB/s\n", value.value, value.unit); From dc0067dd2d862d6986de0c8e6ac500b6d56f58d5 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Mon, 22 Jul 2024 12:54:22 -0400 Subject: [PATCH 08/61] Fix segmentation fault due to usage of strcpy() instead of strdup() for plugin_path --- commons/h5bench_util.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/commons/h5bench_util.c b/commons/h5bench_util.c index 88ce2b8d..d5b3b9d1 100644 --- a/commons/h5bench_util.c +++ b/commons/h5bench_util.c @@ -891,7 +891,8 @@ _set_params(char *key, char *val_in, bench_params *params_in_out, int do_write) } else if (strcmp(key, "HDF5_PLUGIN_PATH") == 0) { // New // parse whatever the value is first - strcpy((*params_in_out).plugin_path, val_in); + char *plugin_path = strdup(val_in); + (*params_in_out).plugin_path = plugin_path; } else if (strcmp(key, "NUM_DIMS") == 0) { int num = atoi(val); @@ -1283,9 +1284,8 @@ read_config(const char *file_path, bench_params *params_out, int do_write) if (params_out->plugin_path != NULL) { // overwrite the env setenv("HDF5_PLUGIN_PATH", params_out->plugin_path, 1); - printf("DEBUG: HDF5_PLUGIN_PATH=%s\n", getenv("HDF5_PLUGIN_PATH")); } else { - printf("Compress filter requires HDF5_PLUGIN_PATH environment variable set to be the path containing the shared library of the compression algorithm you chose.\n") + printf("Compress filter requires HDF5_PLUGIN_PATH environment variable set to be the path containing the shared library of the compression algorithm you chose.\n"); return -1; } } From 07d7293f8bea74b116bbf641bad60a85b3b4fa87 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Fri, 2 Aug 2024 12:17:42 -0400 Subject: [PATCH 09/61] Add retrieving filter info functionality to read.c. Add output to stdout and csv. --- commons/h5bench_util.c | 18 ------- commons/h5bench_util.h | 1 - h5bench_patterns/h5bench_read.c | 84 +++++++++++++++++++++++++++++++-- src/h5bench.py | 2 + 4 files changed, 82 insertions(+), 23 deletions(-) diff --git a/commons/h5bench_util.c b/commons/h5bench_util.c index d5b3b9d1..d18d7369 100644 --- a/commons/h5bench_util.c +++ b/commons/h5bench_util.c @@ -889,11 +889,6 @@ _set_params(char *key, char *val_in, bench_params *params_in_out, int do_write) else (*params_in_out).compress_filter = COMPRESS_FILTER_INVALID; } - else if (strcmp(key, "HDF5_PLUGIN_PATH") == 0) { // New - // parse whatever the value is first - char *plugin_path = strdup(val_in); - (*params_in_out).plugin_path = plugin_path; - } else if (strcmp(key, "NUM_DIMS") == 0) { int num = atoi(val); if (num > 0) @@ -1142,8 +1137,6 @@ bench_params_init(bench_params *params_out) (*params_out).align = 0; (*params_out).align_threshold = 0; (*params_out).align_len = 0; - - (*params_out).plugin_path = NULL; // New } int @@ -1279,17 +1272,6 @@ read_config(const char *file_path, bench_params *params_out, int do_write) return -1; } - // New, check if HDF5_PLUGIN_PATH inputted correctly and set up the env - if (params_out->useCompress) { - if (params_out->plugin_path != NULL) { - // overwrite the env - setenv("HDF5_PLUGIN_PATH", params_out->plugin_path, 1); - } else { - printf("Compress filter requires HDF5_PLUGIN_PATH environment variable set to be the path containing the shared library of the compression algorithm you chose.\n"); - return -1; - } - } - return 0; } diff --git a/commons/h5bench_util.h b/commons/h5bench_util.h index 3a51cd4d..c5a60026 100644 --- a/commons/h5bench_util.h +++ b/commons/h5bench_util.h @@ -126,7 +126,6 @@ typedef struct bench_params { } access_pattern; // write_pattern bench_pattern; - char * plugin_path; // New char * data_file_path; char * pattern_name; int meta_coll; // for write only, metadata collective diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index 59d45558..879d9f1d 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -65,6 +65,17 @@ herr_t ierr; data_contig_md *BUF_STRUCT; mem_monitor * MEM_MONITOR; +typedef struct filter_info { // new + int USE_COMPRESS; + size_t cd_nelmts; + unsigned int *cd_values; + char *name; + unsigned int *filter_config; + H5Z_filter_t filter_id; +} filter_info; + +filter_info FILTER_INFO; // new + void print_data(int n) { @@ -85,6 +96,47 @@ set_dspace_plist(hid_t *plist_id_out, int data_collective) H5Pset_dxpl_mpio(*plist_id_out, H5FD_MPIO_INDEPENDENT); } +// Allocate memory for filter_info once +void +filter_info_init() // new +{ + FILTER_INFO.USE_COMPRESS = 0; + FILTER_INFO.cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); + FILTER_INFO.name = (char *)malloc(10 * sizeof(char)); + FILTER_INFO.filter_config = (unsigned int *)malloc(1 * sizeof(unsigned int)); +} + +// Retrieve information about a filter on a dataset +int +get_filter_info(hid_t dset_id) // new +{ + hid_t dcpl; + dcpl = H5Dget_create_plist(dset_id); + + if (dcpl < 0) { + printf("Invalid dataset creation property list identifier."); + return 1; + } + + FILTER_INFO.filter_id = H5Pget_filter2(dcpl, 0, H5Z_FLAG_MANDATORY, FILTER_INFO.cd_nelmts, FILTER_INFO.cd_values, 10, FILTER_INFO.name, FILTER_INFO.filter_config); + + if (FILTER_INFO.filter_id < 0) { + printf("Invalid filter identifier."); + return 1; + } + + FILTER_INFO.USE_COMPRESS = 1; + printf(" Compression filter used to decompress: %s\n", FILTER_INFO.name); + printf(" Filter ID: %d\n", FILTER_INFO.filter_id); + printf(" Number of auxiliary elements: %d\n", FILTER_INFO.cd_nelmts); + for (int i = 0; i < FILTER_INFO.cd_nelmts; ++i) { + printf(" Auxiliary data %d: %d\n", i, FILTER_INFO.cd_values[i]); + } + + return 0; +} + + // Create HDF5 file and read data void read_h5_data(time_step *ts, hid_t loc, hid_t *dset_ids, hid_t filespace, hid_t memspace, hid_t plist_id, @@ -92,6 +144,7 @@ read_h5_data(time_step *ts, hid_t loc, hid_t *dset_ids, hid_t filespace, hid_t m { hid_t dapl; unsigned long t1, t2, t3; + // Create a dataset access property list dapl = H5Pcreate(H5P_DATASET_ACCESS); #if H5_VERSION_GE(1, 10, 0) H5Pset_all_coll_metadata_ops(dapl, true); @@ -107,6 +160,13 @@ read_h5_data(time_step *ts, hid_t loc, hid_t *dset_ids, hid_t filespace, hid_t m dset_ids[5] = H5Dopen_async(loc, "px", dapl, ts->es_meta_create); dset_ids[6] = H5Dopen_async(loc, "py", dapl, ts->es_meta_create); dset_ids[7] = H5Dopen_async(loc, "pz", dapl, ts->es_meta_create); + + int err = get_filter_info(dset_ids[0]); // new + if (err) { + printf(" No compression filter on the dataset\n"); + } else { + printf(" Read filter info successfully\n"); + } t2 = get_time_usec(); @@ -514,6 +574,7 @@ _run_benchmark_read(hid_t file_id, hid_t fapl, hid_t gapl, hid_t filespace, benc unsigned long read_time_exp = 0, metadata_time_exp = 0; unsigned long read_time_imp = 0, metadata_time_imp = 0; int dset_cnt = 8; + filter_info_init(); // new for (int ts_index = 0; ts_index < nts; ts_index++) { meta_time1 = 0, meta_time2 = 0, meta_time3 = 0, meta_time4 = 0, meta_time5 = 0; sprintf(grp_name, "Timestep_%d", ts_index); @@ -605,8 +666,9 @@ int main(int argc, char *argv[]) { int mpi_thread_lvl_provided = -1; + // Initialize the MPI exe env which multiple threads may make MPI calls MPI_Init_thread(&argc, &argv, MPI_THREAD_MULTIPLE, &mpi_thread_lvl_provided); - assert(MPI_THREAD_MULTIPLE == mpi_thread_lvl_provided); + assert(MPI_THREAD_MULTIPLE == mpi_thread_lvl_provided); MPI_Comm_rank(MPI_COMM_WORLD, &MY_RANK); MPI_Comm_size(MPI_COMM_WORLD, &NUM_RANKS); @@ -648,8 +710,9 @@ main(int argc, char *argv[]) hid_t fapl, gapl; set_pl(&fapl, &gapl); + // Initialize array to store the size of each dimension, at max 64 dimensions hsize_t dims[64] = {0}; - + // Open an existing HDF5 file with read-only access hid_t file_id = H5Fopen(file_name, H5F_ACC_RDONLY, fapl); hid_t filespace = get_filespace(file_id); int dims_cnt = H5Sget_simple_extent_dims(filespace, dims, NULL); @@ -658,6 +721,7 @@ main(int argc, char *argv[]) for (int i = 0; i < dims_cnt; i++) { if (MY_RANK == 0) printf("dims[%d] = %llu (total number for the file)\n", i, dims[i]); + // Calculate the size/area/volume total_particles *= dims[i]; } } @@ -692,8 +756,8 @@ main(int argc, char *argv[]) goto error; } } - - NUM_PARTICLES = total_particles / NUM_RANKS; + // NUM_RANKS here refers to the number of processes instead of the number of dimensions + NUM_PARTICLES = total_particles / NUM_RANKS; unsigned long long read_elem_cnt = params.try_num_particles; @@ -713,7 +777,9 @@ main(int argc, char *argv[]) MPI_Allreduce(&NUM_PARTICLES, &TOTAL_PARTICLES, 1, MPI_LONG_LONG, MPI_SUM, MPI_COMM_WORLD); MPI_Scan(&NUM_PARTICLES, &FILE_OFFSET, 1, MPI_LONG_LONG, MPI_SUM, MPI_COMM_WORLD); + // E.g. Rank 2: `FILE_OFFSET_2 = (NUM_PARTICLES_0 + NUM_PARTICLES_1 + NUM_PARTICLES_2) - NUM_PARTICLES_2` = NUM_PARTICLES_0 + NUM_PARTICLES_1 FILE_OFFSET -= NUM_PARTICLES; + // Allocate memory for each particlee BUF_STRUCT = prepare_contig_memory_multi_dim(params.dim_1, params.dim_2, params.dim_3); unsigned long t1 = get_time_usec(); @@ -803,6 +869,16 @@ main(int argc, char *argv[]) "seconds"); value = format_human_readable(total_size_bytes); fprintf(params.csv_fs, "total size, %.3lf, %cB\n", value.value, value.unit); + + if (FILTER_INFO.USE_COMPRESS) { // new + fprintf(params.csv_fs, "compression filter name, %s\n", FILTER_INFO.name); + fprintf(params.csv_fs, "filter ID: %d\n", FILTER_INFO.filter_id); + fprintf(params.csv_fs, "number of auxiliary elements: %d\n", FILTER_INFO.cd_nelmts); + for (int i = 0; i < FILTER_INFO.cd_nelmts; ++i) { + fprintf(params.csv_fs, "auxiliary data %d: %d\n", i, FILTER_INFO.cd_values[i]); + } + } + fprintf(params.csv_fs, "raw time, %.3f, %s\n", rrt_s, "seconds"); value = format_human_readable(raw_rate); fprintf(params.csv_fs, "raw rate, %.3lf, %cB/s\n", value.value, value.unit); diff --git a/src/h5bench.py b/src/h5bench.py index 992e1edf..169c0829 100755 --- a/src/h5bench.py +++ b/src/h5bench.py @@ -399,6 +399,8 @@ def run_pattern(self, id, operation, setup, vol): if operation == 'read': benchmark_path = self.H5BENCH_PATTERNS_READ + # add check + if self.prefix: benchmark_path = self.prefix + '/' + benchmark_path else: From 24b6924288e6ffdc505ae996971d53c1721102b4 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Mon, 5 Aug 2024 10:43:15 -0400 Subject: [PATCH 10/61] Free filter_info struct, correct csv output format, modify filter_info output --- h5bench_patterns/h5bench_read.c | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index 879d9f1d..6e83d4a8 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -96,7 +96,7 @@ set_dspace_plist(hid_t *plist_id_out, int data_collective) H5Pset_dxpl_mpio(*plist_id_out, H5FD_MPIO_INDEPENDENT); } -// Allocate memory for filter_info once +// Allocate memory for filter_info void filter_info_init() // new { @@ -106,6 +106,15 @@ filter_info_init() // new FILTER_INFO.filter_config = (unsigned int *)malloc(1 * sizeof(unsigned int)); } +// Free memory for filter_info +void +filter_info_free() +{ + free(FILTER_INFO.cd_values); + free(FILTER_INFO.name); + free(FILTER_INFO.filter_config); +} + // Retrieve information about a filter on a dataset int get_filter_info(hid_t dset_id) // new @@ -121,16 +130,18 @@ get_filter_info(hid_t dset_id) // new FILTER_INFO.filter_id = H5Pget_filter2(dcpl, 0, H5Z_FLAG_MANDATORY, FILTER_INFO.cd_nelmts, FILTER_INFO.cd_values, 10, FILTER_INFO.name, FILTER_INFO.filter_config); if (FILTER_INFO.filter_id < 0) { - printf("Invalid filter identifier."); return 1; } FILTER_INFO.USE_COMPRESS = 1; - printf(" Compression filter used to decompress: %s\n", FILTER_INFO.name); - printf(" Filter ID: %d\n", FILTER_INFO.filter_id); - printf(" Number of auxiliary elements: %d\n", FILTER_INFO.cd_nelmts); - for (int i = 0; i < FILTER_INFO.cd_nelmts; ++i) { - printf(" Auxiliary data %d: %d\n", i, FILTER_INFO.cd_values[i]); + + if (MY_RANK == 0) { + printf(" Compression filter used to decompress: %s\n", FILTER_INFO.name); + printf(" Filter ID: %d\n", FILTER_INFO.filter_id); + printf(" Number of auxiliary data: %d\n", FILTER_INFO.cd_nelmts); + for (int i = 0; i < FILTER_INFO.cd_nelmts; ++i) { + printf(" Auxiliary data %d: %d\n", i, FILTER_INFO.cd_values[i]); + } } return 0; @@ -627,7 +638,7 @@ _run_benchmark_read(hid_t file_id, hid_t fapl, hid_t gapl, hid_t filespace, benc *raw_read_time_out += (read_time_exp + read_time_imp); *inner_metadata_time += (meta_time1 + meta_time2 + meta_time3 + meta_time4 + meta_time5); } - + filter_info_free(); // new mem_monitor_final_run(MEM_MONITOR, &metadata_time_imp, &read_time_imp); *raw_read_time_out += read_time_imp; *inner_metadata_time += metadata_time_imp; @@ -872,10 +883,10 @@ main(int argc, char *argv[]) if (FILTER_INFO.USE_COMPRESS) { // new fprintf(params.csv_fs, "compression filter name, %s\n", FILTER_INFO.name); - fprintf(params.csv_fs, "filter ID: %d\n", FILTER_INFO.filter_id); - fprintf(params.csv_fs, "number of auxiliary elements: %d\n", FILTER_INFO.cd_nelmts); + fprintf(params.csv_fs, "filter ID, %d\n", FILTER_INFO.filter_id); + fprintf(params.csv_fs, "number of auxiliary data, %d\n", FILTER_INFO.cd_nelmts); for (int i = 0; i < FILTER_INFO.cd_nelmts; ++i) { - fprintf(params.csv_fs, "auxiliary data %d: %d\n", i, FILTER_INFO.cd_values[i]); + fprintf(params.csv_fs, "auxiliary data %d, %d\n", i, FILTER_INFO.cd_values[i]); } } From 45036fd615a9d30e5255a5db5b4890d316f4ebbb Mon Sep 17 00:00:00 2001 From: skyFzz Date: Mon, 5 Aug 2024 11:02:03 -0400 Subject: [PATCH 11/61] Add a check for invalid operation input from JSON --- src/h5bench.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/h5bench.py b/src/h5bench.py index 169c0829..412ecaee 100755 --- a/src/h5bench.py +++ b/src/h5bench.py @@ -384,22 +384,24 @@ def run_pattern(self, id, operation, setup, vol): if operation == 'write': benchmark_path = self.H5BENCH_PATTERNS_WRITE - if operation == 'write-unlimited': + else if operation == 'write-unlimited': benchmark_path = self.H5BENCH_PATTERNS_WRITE_UNLIMITED - if operation == 'write_var_normal_dist': + else if operation == 'write_var_normal_dist': benchmark_path = self.H5BENCH_PATTERNS_WRITE_VAR_NORMAL_DIST - if operation == 'overwrite': + else if operation == 'overwrite': benchmark_path = self.H5BENCH_PATTERNS_OVERWRITE - if operation == 'append': + else if operation == 'append': benchmark_path = self.H5BENCH_PATTERNS_APPEND - if operation == 'read': + else if operation == 'read': benchmark_path = self.H5BENCH_PATTERNS_READ - # add check + else: + self.logger.error('Invalid operation name provided. Check documentation for correct write/read benchmarks input.') + sys.exit(os.EX_SOFTWARE) if self.prefix: benchmark_path = self.prefix + '/' + benchmark_path From be8adeac678b3505dee1c049d6f5eddfc93411bb Mon Sep 17 00:00:00 2001 From: skyFzz Date: Mon, 5 Aug 2024 12:36:43 -0400 Subject: [PATCH 12/61] Fix python indentation error. Test h5bench_read with Rank=5 and ASYNC. --- h5bench_patterns/h5bench_read.c | 10 ++++++---- src/h5bench.py | 16 ++++++++-------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index 6e83d4a8..1367cc94 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -173,10 +173,12 @@ read_h5_data(time_step *ts, hid_t loc, hid_t *dset_ids, hid_t filespace, hid_t m dset_ids[7] = H5Dopen_async(loc, "pz", dapl, ts->es_meta_create); int err = get_filter_info(dset_ids[0]); // new - if (err) { - printf(" No compression filter on the dataset\n"); - } else { - printf(" Read filter info successfully\n"); + if (MY_RANK = 0) { + if (err) { + printf(" No compression filter on the dataset\n"); + } else { + printf(" Read filter info successfully\n"); + } } t2 = get_time_usec(); diff --git a/src/h5bench.py b/src/h5bench.py index 412ecaee..f9e86296 100755 --- a/src/h5bench.py +++ b/src/h5bench.py @@ -384,24 +384,24 @@ def run_pattern(self, id, operation, setup, vol): if operation == 'write': benchmark_path = self.H5BENCH_PATTERNS_WRITE - else if operation == 'write-unlimited': + elif operation == 'write-unlimited': benchmark_path = self.H5BENCH_PATTERNS_WRITE_UNLIMITED - else if operation == 'write_var_normal_dist': + elif operation == 'write_var_normal_dist': benchmark_path = self.H5BENCH_PATTERNS_WRITE_VAR_NORMAL_DIST - else if operation == 'overwrite': + elif operation == 'overwrite': benchmark_path = self.H5BENCH_PATTERNS_OVERWRITE - else if operation == 'append': + elif operation == 'append': benchmark_path = self.H5BENCH_PATTERNS_APPEND - else if operation == 'read': + elif operation == 'read': benchmark_path = self.H5BENCH_PATTERNS_READ - else: - self.logger.error('Invalid operation name provided. Check documentation for correct write/read benchmarks input.') - sys.exit(os.EX_SOFTWARE) + else: + self.logger.error('Invalid operation name provided. Check documentation for correct write/read benchmarks input.') + sys.exit(os.EX_SOFTWARE) if self.prefix: benchmark_path = self.prefix + '/' + benchmark_path From 5587ba3e0c499f5904e43e8f1a1c4a8a53e9b5d1 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Wed, 7 Aug 2024 15:42:32 -0400 Subject: [PATCH 13/61] Add cd_nelmts and cd_values data structure and parsing as options for user input. Use these two parameters in H5Pset_filter() --- commons/.h5bench_util.c.swp | Bin 0 -> 16384 bytes commons/h5bench_util.c | 31 ++++++++++++++++++++++++++----- commons/h5bench_util.h | 8 +++++++- h5bench_patterns/h5bench_write.c | 20 +++++++++++++------- 4 files changed, 46 insertions(+), 13 deletions(-) create mode 100644 commons/.h5bench_util.c.swp diff --git a/commons/.h5bench_util.c.swp b/commons/.h5bench_util.c.swp new file mode 100644 index 0000000000000000000000000000000000000000..36101f7ddeda41d5ca64b7c69b6673f65d12e407 GIT binary patch literal 16384 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 N;er>~@ 0) @@ -1137,6 +1151,13 @@ bench_params_init(bench_params *params_out) (*params_out).align = 0; (*params_out).align_threshold = 0; (*params_out).align_len = 0; + + (*params_out).cd_nelmts = 0; // new + (*params_out).cd_value_1 = 0; // new + (*params_out).cd_value_2 = 0; // new + (*params_out).cd_value_3 = 0; // new + (*params_out).cd_value_4 = 0; // new + (*params_out).cd_value_5 = 0; // new } int diff --git a/commons/h5bench_util.h b/commons/h5bench_util.h index c5a60026..1b8cd683 100644 --- a/commons/h5bench_util.h +++ b/commons/h5bench_util.h @@ -100,7 +100,7 @@ typedef enum read_option { CS } read_option; -typedef enum compress_filter { // New +typedef enum compress_filter { // new COMPRESS_FILTER_INVALID, N_BIT, SZIP, @@ -159,6 +159,12 @@ typedef struct bench_params { unsigned long align_threshold; unsigned long align_len; unsigned long stdev_dim_1; + size_t cd_nelmts; // new + unsigned int cd_value_1; // new + unsigned int cd_value_2; // new + unsigned int cd_value_3; // new + unsigned int cd_value_4; // new + unsigned int cd_value_5; // new } bench_params; typedef struct data_md { diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 6acca751..dfafc860 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -71,6 +71,8 @@ typedef struct compress_info { hsize_t total_compressed_size; } compress_info; +unsigned int *cd_values; + // Global Variables and dimensions async_mode ASYNC_MODE; compress_info COMPRESS_INFO; // Using parallel compressing: need to set chunk dimensions for dcpl. @@ -898,6 +900,14 @@ set_globals(const bench_params *params) if (COMPRESS_INFO.USE_COMPRESS) { // set DCPL herr_t ret; + // Construct auxiliary data for the filter + cd_values = (unsigned int)malloc(5 * sizeof(unsigned int)); + cd_values[0] = params->cd_value_1; + cd_values[1] = params->cd_value_2; + cd_values[2] = params->cd_value_3; + cd_values[3] = params->cd_value_4; + cd_values[4] = params->cd_value_5; + // Create a new property list instance COMPRESS_INFO.dcpl_id = H5Pcreate(H5P_DATASET_CREATE); assert(COMPRESS_INFO.dcpl_id > 0); @@ -929,20 +939,16 @@ set_globals(const bench_params *params) else if (params->compress_filter == GZIP) { ret = H5Pset_deflate(COMPRESS_INFO.dcpl_id, 9); } - else if (params->compress_filter == SZ){ - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ, H5Z_FLAG_MANDATORY, 0, NULL); - } else if (params->compress_filter == SZ3) { - // unsigned int cd_values[3]; - // cd_values[0] = ABS; - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ3, H5Z_FLAG_MANDATORY, 0, NULL); + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ3, H5Z_FLAG_MANDATORY, params->cd_nelmts, cd_values); } else if (params->compress_filter == ZFP) { - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ZFP, H5Z_FLAG_MANDATORY, 0, NULL); + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ZFP, H5Z_FLAG_MANDATORY, params->cd_nelmts, cd_values); } else { ret = -1; } + free(cd_values); assert(ret >= 0); } From 05a02866afb751b80cb60a03a70b91fff2b4d65e Mon Sep 17 00:00:00 2001 From: skyFzz Date: Wed, 7 Aug 2024 16:13:37 -0400 Subject: [PATCH 14/61] Add output of cd_nelmts and cd_values in Benchmark Configuration --- commons/.h5bench_util.c.swp | Bin 16384 -> 0 bytes commons/h5bench_util.c | 20 ++++++++++++++++---- h5bench_patterns/h5bench_write.c | 11 ----------- 3 files changed, 16 insertions(+), 15 deletions(-) delete mode 100644 commons/.h5bench_util.c.swp diff --git a/commons/.h5bench_util.c.swp b/commons/.h5bench_util.c.swp deleted file mode 100644 index 36101f7ddeda41d5ca64b7c69b6673f65d12e407..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16384 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 N;er>~@useCompress) { printf("Use compression: %d\n", p->useCompress); - printf(" Compression_filter_name: %s\n", compress_filter_names[p->compress_filter]); // New - printf(" Compression_filter_id: %d\n", compress_filter_ids[p->compress_filter]); // New + printf(" Compression_filter_name: %s\n", compress_filter_names[p->compress_filter]); // New + printf(" Compression_filter_id: %d\n", compress_filter_ids[p->compress_filter]); // New + printf(" Number of auxiliary data: %d\n", p->cd_nelmts); // new + cd_values = (unsigned int)malloc(5 * sizeof(unsigned int)); // new + cd_values[0] = p->cd_value_1; // new + cd_values[1] = p->cd_value_2; + cd_values[2] = p->cd_value_3; + cd_values[3] = p->cd_value_4; + cd_values[4] = p->cd_value_5; + for (int i = 0; i < p->cd_nelmts; ++i) { // new + printf(" Auxiliary data %d: %d\n", i + 1, cd_values[i]); + } + free(cd_values); // new printf(" chunk_dim1: %lu\n", p->chunk_dim_1); if (p->num_dims >= 2) { printf(" chunk_dim2: %lu\n", p->chunk_dim_2); diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index dfafc860..0986b493 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -1249,17 +1249,6 @@ main(int argc, char *argv[]) value = format_human_readable(or_bs); printf("%s Observed write rate: %.3f %cB/s\n", mode_str, value.value, value.unit); - // Applied compression filters: - // Status: Success, Optional, Failed - // Name - // Filter_id - // Compression_ratio (runtime) - // Speed - // Complexity - // Space (memory) - // Latency - // Interoperability - printf("===========================================================\n"); if (params.useCSV) { From b09c58437344aecce58328bc3494b7be864c3956 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Thu, 8 Aug 2024 09:41:43 -0400 Subject: [PATCH 15/61] Add Snappy-CUDA compression enum to the compression filter set and enable it in write --- commons/h5bench_util.c | 8 ++++++-- commons/h5bench_util.h | 4 ++-- h5bench_patterns/h5bench_write.c | 7 ++++--- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/commons/h5bench_util.c b/commons/h5bench_util.c index 9e782c0d..35ed1806 100644 --- a/commons/h5bench_util.c +++ b/commons/h5bench_util.c @@ -37,10 +37,11 @@ char* compress_filter_names[] = { "SZIP", "GZIP", "SZ3", - "ZFP" + "ZFP", + "SNAPPY-CUDA" }; -int compress_filter_ids[] = { -1, 5, 4, 1, 32024, 32013 }; +int compress_filter_ids[] = { -1, 5, 4, 1, 32024, 32013, 32003 }; unsigned int *cd_values; unsigned long @@ -882,6 +883,9 @@ _set_params(char *key, char *val_in, bench_params *params_in_out, int do_write) else if (strcmp(val_in, "ZFP") == 0) { (*params_in_out).compress_filter = ZFP; } + else if (strcmp(val_in, "SNAPPY-CUDA") == 0) { + (*params_in_out).compress_filter = SNAPPY-CUDA; + } else (*params_in_out).compress_filter = COMPRESS_FILTER_INVALID; diff --git a/commons/h5bench_util.h b/commons/h5bench_util.h index 1b8cd683..800a5d67 100644 --- a/commons/h5bench_util.h +++ b/commons/h5bench_util.h @@ -105,9 +105,9 @@ typedef enum compress_filter { // new N_BIT, SZIP, GZIP, - SZ, SZ3, - ZFP + ZFP, + SNAPPY-CUDA } compress_filter; typedef struct bench_params { diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 0986b493..8a17fb1b 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -57,10 +57,8 @@ #define DIM_MAX 3 #define H5Z_FILTER_ZFP 32013 -#define H5Z_FILTER_SZ 32017 #define H5Z_FILTER_SZ3 32024 - -#define ABS 0 +#define H5Z_FILTER_SNAPPY-CUDA 32003 herr_t ierr; @@ -945,6 +943,9 @@ set_globals(const bench_params *params) else if (params->compress_filter == ZFP) { ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ZFP, H5Z_FLAG_MANDATORY, params->cd_nelmts, cd_values); } + else if (params->compress_filter == SNAPPY-CUDA) { + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SNAPPY-CUDA, H5Z_FLAG_MANDATORY, params->cd_nelmts, cd_values); + } else { ret = -1; } From 93c07fcce4f6fefbb49c104e257751dde0205186 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Thu, 8 Aug 2024 10:26:02 -0400 Subject: [PATCH 16/61] Fix some error and warnings --- commons/h5bench_util.c | 8 ++++---- commons/h5bench_util.h | 2 +- h5bench_patterns/h5bench_read.c | 7 +++++-- h5bench_patterns/h5bench_write.c | 8 ++++---- 4 files changed, 14 insertions(+), 11 deletions(-) diff --git a/commons/h5bench_util.c b/commons/h5bench_util.c index 35ed1806..c3182f1f 100644 --- a/commons/h5bench_util.c +++ b/commons/h5bench_util.c @@ -38,7 +38,7 @@ char* compress_filter_names[] = { "GZIP", "SZ3", "ZFP", - "SNAPPY-CUDA" + "SNAPPY_CUDA" }; int compress_filter_ids[] = { -1, 5, 4, 1, 32024, 32013, 32003 }; @@ -883,8 +883,8 @@ _set_params(char *key, char *val_in, bench_params *params_in_out, int do_write) else if (strcmp(val_in, "ZFP") == 0) { (*params_in_out).compress_filter = ZFP; } - else if (strcmp(val_in, "SNAPPY-CUDA") == 0) { - (*params_in_out).compress_filter = SNAPPY-CUDA; + else if (strcmp(val_in, "SNAPPY_CUDA") == 0) { + (*params_in_out).compress_filter = SNAPPY_CUDA; } else @@ -1339,7 +1339,7 @@ print_params(const bench_params *p) printf(" Compression_filter_name: %s\n", compress_filter_names[p->compress_filter]); // New printf(" Compression_filter_id: %d\n", compress_filter_ids[p->compress_filter]); // New printf(" Number of auxiliary data: %d\n", p->cd_nelmts); // new - cd_values = (unsigned int)malloc(5 * sizeof(unsigned int)); // new + cd_values = (unsigned int *)malloc(5 * sizeof(unsigned int)); // new cd_values[0] = p->cd_value_1; // new cd_values[1] = p->cd_value_2; cd_values[2] = p->cd_value_3; diff --git a/commons/h5bench_util.h b/commons/h5bench_util.h index 800a5d67..79b8d6f9 100644 --- a/commons/h5bench_util.h +++ b/commons/h5bench_util.h @@ -107,7 +107,7 @@ typedef enum compress_filter { // new GZIP, SZ3, ZFP, - SNAPPY-CUDA + SNAPPY_CUDA } compress_filter; typedef struct bench_params { diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index 1367cc94..6d11e73d 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -67,7 +67,7 @@ mem_monitor * MEM_MONITOR; typedef struct filter_info { // new int USE_COMPRESS; - size_t cd_nelmts; + size_t *cd_nelmts; unsigned int *cd_values; char *name; unsigned int *filter_config; @@ -101,15 +101,18 @@ void filter_info_init() // new { FILTER_INFO.USE_COMPRESS = 0; + FILTER_INFO.cd_nelmts = (size_t *)malloc(sizeof(size_t)); FILTER_INFO.cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); FILTER_INFO.name = (char *)malloc(10 * sizeof(char)); FILTER_INFO.filter_config = (unsigned int *)malloc(1 * sizeof(unsigned int)); } + // Free memory for filter_info void filter_info_free() { + free(FILTER_INFO.cd_nelmts); free(FILTER_INFO.cd_values); free(FILTER_INFO.name); free(FILTER_INFO.filter_config); @@ -139,7 +142,7 @@ get_filter_info(hid_t dset_id) // new printf(" Compression filter used to decompress: %s\n", FILTER_INFO.name); printf(" Filter ID: %d\n", FILTER_INFO.filter_id); printf(" Number of auxiliary data: %d\n", FILTER_INFO.cd_nelmts); - for (int i = 0; i < FILTER_INFO.cd_nelmts; ++i) { + for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { printf(" Auxiliary data %d: %d\n", i, FILTER_INFO.cd_values[i]); } } diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 8a17fb1b..59807129 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -58,7 +58,7 @@ #define DIM_MAX 3 #define H5Z_FILTER_ZFP 32013 #define H5Z_FILTER_SZ3 32024 -#define H5Z_FILTER_SNAPPY-CUDA 32003 +#define H5Z_FILTER_SNAPPY_CUDA 32003 herr_t ierr; @@ -899,7 +899,7 @@ set_globals(const bench_params *params) herr_t ret; // Construct auxiliary data for the filter - cd_values = (unsigned int)malloc(5 * sizeof(unsigned int)); + cd_values = (unsigned int *)malloc(5 * sizeof(unsigned int)); cd_values[0] = params->cd_value_1; cd_values[1] = params->cd_value_2; cd_values[2] = params->cd_value_3; @@ -943,8 +943,8 @@ set_globals(const bench_params *params) else if (params->compress_filter == ZFP) { ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ZFP, H5Z_FLAG_MANDATORY, params->cd_nelmts, cd_values); } - else if (params->compress_filter == SNAPPY-CUDA) { - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SNAPPY-CUDA, H5Z_FLAG_MANDATORY, params->cd_nelmts, cd_values); + else if (params->compress_filter == SNAPPY_CUDA) { + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SNAPPY_CUDA, H5Z_FLAG_MANDATORY, params->cd_nelmts, cd_values); } else { ret = -1; From 389ce321cc9ca5db73225dcc092104e6fce203d8 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Fri, 9 Aug 2024 10:46:48 -0400 Subject: [PATCH 17/61] Add documentation to Read/Write page --- docs/source/vpic.rst | 13 ++++++++++++- h5bench_patterns/.h5bench_write.c.swp | Bin 0 -> 16384 bytes 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 h5bench_patterns/.h5bench_write.c.swp diff --git a/docs/source/vpic.rst b/docs/source/vpic.rst index 93fc1055..006d7052 100644 --- a/docs/source/vpic.rst +++ b/docs/source/vpic.rst @@ -69,12 +69,23 @@ Compression Settings **Parameter** **Description** ======================================= ========================================================== ``COMPRESS`` `YES` or `NO` (optional) enables parralel compression +``COMPRESS_FILTER`` Options: ``N_BIT``, ``SZIP``, ``GZIP`, ``SZ3```, ``ZFP``, ``SNAPPY_CUDA`` +``NUM_AUXILIARY_DATA`` Number of auxiliary data to control the behavior of the compression +``AUXILIARY_DATA_1`` Auxiliary data +``AUXILIARY_DATA_2`` Auxiliary data +``AUXILIARY_DATA_3`` Auxiliary data +``AUXILIARY_DATA_4`` Auxiliary data +``AUXILIARY_DATA_5`` Auxiliary data ``CHUNK_DIM_1`` Chunk dimension ``CHUNK_DIM_2`` Chunk dimension ``CHUNK_DIM_3`` Chunk dimension ======================================= ========================================================== -Compression is only applicable for ``h5bench_write``. It has not effect for ``h5bench_read``. When enabled the chunk dimensions parameters (``CHUNK_DIM_1``, ``CHUNK_DIM_2``, ``CHUNK_DIM_3``) are required. The chunk dimension settings should be compatible with the data dimensions, i.e., they must have the same rank of dimensions, and chunk dimension size cannot be greater than data dimension size. Extra chunk dimensions have no effect and should be set to ``1``. +Compression and decompression are applicable for ``h5bench_write`` and ``h5bench_read``. When enabled the chunk dimensions parameters (``CHUNK_DIM_1``, ``CHUNK_DIM_2``, ``CHUNK_DIM_3``) are required. The chunk dimension settings should be compatible with the data dimensions, i.e., they must have the same rank of dimensions, and chunk dimension size cannot be greater than data dimension size. Extra chunk dimensions have no effect and should be set to ``1``. + +For built-in compressions ``N_BIT``/``SZIP``/``GZIP`` to work on datasets in ``h5bench_write`` you just need to define the value for ``COMPRESS_FILTER`` and chunk dimensions. For external compressions ``SZ3``/``ZFP``/``SNAPPY_CUDA`` to work you **must** also download and build the compression filter plugin on your system, and specify the installation path ``path`` in ``vol`` so that HDF5 can apply. See `Enable Plugins `_ for details using a external compression. If ``h5bench_write`` executed successfully with a intended compression, ``h5bench_read`` will read compressed data and apply decompression automatically. + +The ``NUM_AUXILIARY_DATA`` and ``AUXILIARY_DATA_[1-5]`` parameters are optional and only applicable to external compressions. Their default values are ``0`` and only accpet ``unsigned int`` data type. You can provide 5 auxiliary data at maximum. For information on how to define these values, see `H5Z-ZFP Interfaces `_ for an example to manipulate the ZFP compression. .. warning:: diff --git a/h5bench_patterns/.h5bench_write.c.swp b/h5bench_patterns/.h5bench_write.c.swp new file mode 100644 index 0000000000000000000000000000000000000000..feac993b7a8bda1a75ca14479f17c8e6c269ec7f GIT binary patch literal 16384 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 Date: Fri, 9 Aug 2024 12:10:58 -0400 Subject: [PATCH 18/61] Add documentation to a new "Build and Run Plugin" page --- docs/source/plugin.rst | 76 ++++++++++++++++++++++++++ h5bench_patterns/.h5bench_write.c.swp | Bin 16384 -> 0 bytes 2 files changed, 76 insertions(+) create mode 100644 docs/source/plugin.rst delete mode 100644 h5bench_patterns/.h5bench_write.c.swp diff --git a/docs/source/plugin.rst b/docs/source/plugin.rst new file mode 100644 index 00000000..d8f1fc25 --- /dev/null +++ b/docs/source/plugin.rst @@ -0,0 +1,76 @@ +Build and Run External Compression Plugins +=================================== + +----------------------------------- +SZ3 +----------------------------------- + +Build with CMake +----------------------------------- + +.. code-block:: bash + + git clone https://github.com/szcompressor/SZ3 + cd SZ3 + mkdir build installer + realpath installer + cd build + export CMAKE_INSTALL_PREFIX=.../SZ3/installer + export PATH=.../hdf5/installer/bin:$PATH + export HDF5_HOME=.../hdf5/installer + cmake -DCMAKE_INSTALL_PREFIX=$CMAKE_INSTALL_PREFIX -DBUILD_H5Z_FILTER=ON .. + make + make install + +Enable SZ3 in benchmark at runtime` +----------------------------------- +In order to make sure HDF5 can find the installed plugin and apply it to the datasets, you **must** either define the macro ``HDF5_PLUGIN_PATH`` using ``export HDF5_PLUGIN_PATH=.../SZ3/installer/lib64`` in every session or giving that as an input in the configuration JSON file and h5bench will set up for you: +.. code-block:: + + "vol": { + "path": ".../SZ3/installer/lib64" + } + +----------------------------------- +ZFP +----------------------------------- + +Build with CMake +----------------------------------- +First, clone the ZFP GitHub repository and build ZFP +.. code-block:: bash + + git clone https://github.com/LLNL/zfp.git + cd zfp + mkdir build installer + realpath installer + cd build + export CMAKE_INSTALL_PREFIX=.../zfp/installer + cmake -DCMAKE_INSTALL_PREFIX=$CMAKE_INSTALL_PREFIX -DZFP_BIT_STREAM_WORD_SIZE=8 .. + make + make install + +Second, clone the H5Z-ZFP GitHub repository and build H5Z-ZFP +.. code-block:: bash + + git clone https://github.com/LLNL/H5Z-ZFP.git + cd H5Z-ZFP + mkdir build installer + realpath installer + cd build + export CMAKE_INSTALL_PREFIX=.../H5Z-ZFP/installer + export HDF5_DIR=.../hdf5/installer + export ZFP_DIR=.../zfp/installer/lib64/cmake/zfp + cmake -DCMAKE_INSTALL_PREFIX=$CMAKE_INSTALL_PREFIX .. + make + make install + +Enable ZFP in benchmark at runtime +----------------------------------- +You **must** either define the macro ``HDF5_PLUGIN_PATH`` using ``export HDF5_PLUGIN_PATH=.../H5Z-ZFP/installer/plugin`` in every session or giving that in the JSON file: +.. code-block:: + + "vol": { + "path": ".../H5Z-ZFP/installer/plugin" + } + diff --git a/h5bench_patterns/.h5bench_write.c.swp b/h5bench_patterns/.h5bench_write.c.swp deleted file mode 100644 index feac993b7a8bda1a75ca14479f17c8e6c269ec7f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16384 zcmeHNYm6gD5uPMmg2{^{5b_YvY!ui%d2R3RyAcTa(Ln7h_4~c|;fFL3e1PFn^S3NWK*lS<* zqWnO}BYpNxS9f)FRdsb$uN%3wa)s^9>{9T&Tv3iZ`f#&kUZnh~qbMzId!4f_CzzSd z%@BRW<7{$UOk2*nY3FujTCSdPgr4C>Fwp;=K8D%W?gqE@mg;)W9bEV0_xM|NHQ(o+ zExHYxp6T<9KEQSSI@Z8g1KZQUmCD@gOpf~AGVwZg-LLf5w@2f@G(i7* zL~lm)t1b!ui2465qT3POAD}-S(Vd9?s{#67Bl?+${^pnT^N+eK<%s^s06l6Re~mRT z*1%W;V-1WoFxJ3W17i)0H89q|SOa4Xj5RP+1Dc^IRKupI-o^j_cBpL0ha+!p?3cx@FU<;z$bxw0UbC9Tn79S1^-uo zF9Qz%?*#;)12td)mY^pFkrJ7nP)$?j$v05uJc9?OY zLO#L$$$ahPQUL>srKy8)-(tR=r(yIwU*C}LN-1A2jqZE5;+t(QeD12fnWvNu$28z_ zSd<7FP17>%b@0fM*xeD@Fo+! z7wA4)j+Dr-M?-#c!T2ba=1VJ5W26anesQ&S9D-r4{(gn(;$pX3JXkIuu!Xs9bAwq9 z)|6i?FD$8xrKPwJeN#V{&9a$2d-v|0o!O%d8&f~NQmP%VE*8U)l6Suhl6R7C%v%BP zstdiFXEon+Y_@JW4b2jfYqI71O1)fIEUATRWx2Y#R8;FHmrH7`1Okj%JH7ArgP|9X z=n6CGjxAso7~_<>l3yxfQFD89&{L0aGA7LAa{H5n+q#7P7yx1CH60EtSQB0hXOP}t zXucK;94`{iTrQ@2J}rGO@lHN2U&(lbCOf4T@%ya9Y|pMi%E^(G+eT8BRx7lM6SXv} z$c3IrGis}sE2Ub!v|Kx=NC%J~B!9hH&o8R6>bH<-Y?nwLl4kQ|n5a5GUn|w6yX<4E z&DXozLokB;VV>nG0-ob*mKswz!WP=Y4IX!q@~W6foQ8ST zO8z$ZF3BgOFuqB4M7*#u-axCh(D_M6TcSfeU#Loih!*!eNMqs);@*NlV%nS?-+fAj ziRy?KwWa*>@=3L@TFkS#*<5aJXs1(iM4a6 zuzb_CIE&9W!JH&knkQ!W;v*tAYP2!75Dfx7aK<8-$b7W6uBS5OEJFbZk4?6l2 zFA`Y_3OngOoiwnD=?fUErCCi_-qlQFI&jm>c5HqZ;+TNAX=ZvJ-*9v~GSb9IMh00 zn|te>P`Oy-ATLT=IBaSA@Mq-g5JC`>r7BXTQU>QY`C(Tzo0!_*8{Be`STf}Fuu&6V zwDhLuw7c?x2eCm4%gW2ucwpyO-SBwjDArRQh_Ex?&}w zWx9e@oA6X=fO3;{oPf17_(0DivH7uELGU7llF0(hggh%@P9IB)<#b_hoXj})ldB+I z`Wf1-p&F;4kUZj6XeQ_j5gf5hE-MZ*!-5c-#0f<|Q4f7f=h)@MRkKOycLt`%4N}*n zK1CsJcUsm>D|{Vxk@1!MbJd3Hc*68MG_;^uCj8tsHF6T{&GlAyzZ0wFa`glvGU98P z`B0EJ0T1F>?LGGSz~3K8kw(0pMN0QQ&FR`JVwE0@i?iz$<|7qvn4PumBVQx&wF) zHU4*i`+##m5x4@l9C#S@{RR*K4EO_T`zL|>fi++ixDogTYWSZ64*@k`1^6}U^e+Od zKpnUQxES~iYVikww*xl;UqBsx6kxy;sJGt-yc;+TTn9Xi`g#qZ|FJIv7Xv>)-Aw

f-kU`+@6$D}YOZ9l)QVrzZf?*JGr!|Me#g>A%KnLSZH)fFd{g=i|ZzmRo$+9vBR(IU0IsA~j!mDmp` zW|SdGnjtInHn-SNNu^T#{*xNTG_F|ah=44nBlRcO8Y(c+frOsgPm=NZ*A=crma&bF&j&X_%;-Y*Y|kK+hIRcYVd-dMi{rvg?wCNZEStm?OfHkd zaTxwFg=8!7j8c;B;IaVu9Fhv!ny@_LOcZsZC`Rq5(2)xq#x)sxBbzu`s!gy1Y+|X3 z*d)CyG1JHZhYXGq*ISM51c@7#ZF503Cf(ca6LmsXY!@O80*+_uQQS)-zcYQfdSZ){ zJ4PBnK2@l#kq35l8U^u*!!P^^r`y8uRwRA#Q4rRl6nhTH=$!~`bV;KkU5_KTbk_J~ zAdH8O9NK8RfjqpFmEj%1e^S0q4f;I!T|}DnQS&l?hCbw-jz~J_)G!Z)vWKmH1@UwE z!kG+47rydQYfc3AErN7yK!MfbGB>B)78xROE+>2@QW~AsJ*CB(8LERJD!|oGm_o9O5)l%e5wli9>{u(jgTbW{K2hi^USO zo-n43@=qm_487!a!?w>5*XeDYEv_olk1g}ZJD@lDkS#8UhRHD5B6M=uNUz=CK)mF> zmC7F>F(o`m8Dd)&qC4$wS`%tc?(;1f4Wv&Dty7d4%v|Jf+(sY)lsshQ8=B(2IC%?$ zM9-hMq*A!@TH&rk7l4B+28U3i2}+p3LA67y(VrrP9pa(g`*VdXLr<*eP+MVGrJQB^ ziVFF#ut11k65peO>!9cf-!mNCgwf>_-Tn76D6F@e5g?DTaA{ Date: Fri, 9 Aug 2024 12:16:32 -0400 Subject: [PATCH 19/61] Fix rst syntax error --- docs/source/plugin.rst | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/source/plugin.rst b/docs/source/plugin.rst index d8f1fc25..85a9e2dc 100644 --- a/docs/source/plugin.rst +++ b/docs/source/plugin.rst @@ -5,6 +5,7 @@ Build and Run External Compression Plugins SZ3 ----------------------------------- + Build with CMake ----------------------------------- @@ -22,22 +23,27 @@ Build with CMake make make install + Enable SZ3 in benchmark at runtime` ----------------------------------- In order to make sure HDF5 can find the installed plugin and apply it to the datasets, you **must** either define the macro ``HDF5_PLUGIN_PATH`` using ``export HDF5_PLUGIN_PATH=.../SZ3/installer/lib64`` in every session or giving that as an input in the configuration JSON file and h5bench will set up for you: -.. code-block:: + +.. code-block:: json "vol": { "path": ".../SZ3/installer/lib64" } + ----------------------------------- ZFP ----------------------------------- + Build with CMake ----------------------------------- First, clone the ZFP GitHub repository and build ZFP + .. code-block:: bash git clone https://github.com/LLNL/zfp.git @@ -51,6 +57,7 @@ First, clone the ZFP GitHub repository and build ZFP make install Second, clone the H5Z-ZFP GitHub repository and build H5Z-ZFP + .. code-block:: bash git clone https://github.com/LLNL/H5Z-ZFP.git @@ -65,6 +72,7 @@ Second, clone the H5Z-ZFP GitHub repository and build H5Z-ZFP make make install + Enable ZFP in benchmark at runtime ----------------------------------- You **must** either define the macro ``HDF5_PLUGIN_PATH`` using ``export HDF5_PLUGIN_PATH=.../H5Z-ZFP/installer/plugin`` in every session or giving that in the JSON file: From c65397e7a9d57411093042f06ec9281830d326fc Mon Sep 17 00:00:00 2001 From: skyFzz Date: Fri, 9 Aug 2024 16:32:56 -0400 Subject: [PATCH 20/61] Fix bug to deference cd_values for output. Increase the number of allowed cd_values to 10. Change input names to cd_nelmts and cd_values from num_aux_data and aux_data_* --- commons/h5bench_util.c | 48 ++++++++++++++++++++++---------- commons/h5bench_util.h | 21 ++++++++------ h5bench_patterns/h5bench_read.c | 29 +++++++++---------- h5bench_patterns/h5bench_write.c | 15 +++++----- 4 files changed, 69 insertions(+), 44 deletions(-) diff --git a/commons/h5bench_util.c b/commons/h5bench_util.c index c3182f1f..d182971a 100644 --- a/commons/h5bench_util.c +++ b/commons/h5bench_util.c @@ -890,24 +890,39 @@ _set_params(char *key, char *val_in, bench_params *params_in_out, int do_write) else (*params_in_out).compress_filter = COMPRESS_FILTER_INVALID; } - else if (strcmp(key, "NUM_AUXILIARY_DATA") == 0) { + else if (strcmp(key, "CD_NELMTS") == 0) { (*params_in_out).cd_nelmts = atoi(val); } - else if (strcmp(key, "AUXILIARY_DATA_1") == 0) { + else if (strcmp(key, "CD_VALUES_1") == 0) { (*params_in_out).cd_value_1 = atoi(val); } - else if (strcmp(key, "AUXILIARY_DATA_2") == 0) { + else if (strcmp(key, "CD_VALUES_2") == 0) { (*params_in_out).cd_value_2 = atoi(val); } - else if (strcmp(key, "AUXILIARY_DATA_3") == 0) { + else if (strcmp(key, "CD_VALUES_3") == 0) { (*params_in_out).cd_value_3 = atoi(val); } - else if (strcmp(key, "AUXILIARY_DATA_4") == 0) { + else if (strcmp(key, "CD_VALUES_4") == 0) { (*params_in_out).cd_value_4 = atoi(val); } - else if (strcmp(key, "AUXILIARY_DATA_5") == 0) { + else if (strcmp(key, "CD_VALUES_5") == 0) { (*params_in_out).cd_value_5 = atoi(val); } + else if (strcmp(key, "CD_VALUES_6") == 0) { + (*params_in_out).cd_value_6 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_7") == 0) { + (*params_in_out).cd_value_7 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_8") == 0) { + (*params_in_out).cd_value_8 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_9") == 0) { + (*params_in_out).cd_value_9 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_10") == 0) { + (*params_in_out).cd_value_10 = atoi(val); + } else if (strcmp(key, "NUM_DIMS") == 0) { int num = atoi(val); if (num > 0) @@ -1336,19 +1351,24 @@ print_params(const bench_params *p) if (p->useCompress) { printf("Use compression: %d\n", p->useCompress); - printf(" Compression_filter_name: %s\n", compress_filter_names[p->compress_filter]); // New - printf(" Compression_filter_id: %d\n", compress_filter_ids[p->compress_filter]); // New - printf(" Number of auxiliary data: %d\n", p->cd_nelmts); // new - cd_values = (unsigned int *)malloc(5 * sizeof(unsigned int)); // new - cd_values[0] = p->cd_value_1; // new + printf(" Compression_filter_name: %s\n", compress_filter_names[p->compress_filter]); + printf(" Compression_filter_id: %d\n", compress_filter_ids[p->compress_filter]); + printf(" Number of compression filter parameters: %d\n", p->cd_nelmts); + cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); + cd_values[0] = p->cd_value_1; cd_values[1] = p->cd_value_2; cd_values[2] = p->cd_value_3; cd_values[3] = p->cd_value_4; cd_values[4] = p->cd_value_5; - for (int i = 0; i < p->cd_nelmts; ++i) { // new - printf(" Auxiliary data %d: %d\n", i + 1, cd_values[i]); + cd_values[5] = p->cd_value_6; + cd_values[6] = p->cd_value_7; + cd_values[7] = p->cd_value_8; + cd_values[8] = p->cd_value_9; + cd_values[9] = p->cd_value_10; + for (int i = 0; i < p->cd_nelmts; ++i) { + printf(" Compression parameter %d: %d\n", i + 1, cd_values[i]); } - free(cd_values); // new + free(cd_values); printf(" chunk_dim1: %lu\n", p->chunk_dim_1); if (p->num_dims >= 2) { printf(" chunk_dim2: %lu\n", p->chunk_dim_2); diff --git a/commons/h5bench_util.h b/commons/h5bench_util.h index 79b8d6f9..bac8f0a5 100644 --- a/commons/h5bench_util.h +++ b/commons/h5bench_util.h @@ -100,7 +100,7 @@ typedef enum read_option { CS } read_option; -typedef enum compress_filter { // new +typedef enum compress_filter { COMPRESS_FILTER_INVALID, N_BIT, SZIP, @@ -115,7 +115,7 @@ typedef struct bench_params { pattern mem_pattern; pattern file_pattern; read_option read_option; - compress_filter compress_filter; // new + compress_filter compress_filter; int useCompress; int useCSV; async_mode asyncMode; @@ -159,12 +159,17 @@ typedef struct bench_params { unsigned long align_threshold; unsigned long align_len; unsigned long stdev_dim_1; - size_t cd_nelmts; // new - unsigned int cd_value_1; // new - unsigned int cd_value_2; // new - unsigned int cd_value_3; // new - unsigned int cd_value_4; // new - unsigned int cd_value_5; // new + size_t cd_nelmts; + unsigned int cd_value_1; + unsigned int cd_value_2; + unsigned int cd_value_3; + unsigned int cd_value_4; + unsigned int cd_value_5; + unsigned int cd_value_6; + unsigned int cd_value_7; + unsigned int cd_value_8; + unsigned int cd_value_9; + unsigned int cd_value_10; } bench_params; typedef struct data_md { diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index 6d11e73d..4ba04504 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -65,7 +65,7 @@ herr_t ierr; data_contig_md *BUF_STRUCT; mem_monitor * MEM_MONITOR; -typedef struct filter_info { // new +typedef struct filter_info { int USE_COMPRESS; size_t *cd_nelmts; unsigned int *cd_values; @@ -74,7 +74,7 @@ typedef struct filter_info { // new H5Z_filter_t filter_id; } filter_info; -filter_info FILTER_INFO; // new +filter_info FILTER_INFO; void print_data(int n) @@ -98,7 +98,7 @@ set_dspace_plist(hid_t *plist_id_out, int data_collective) // Allocate memory for filter_info void -filter_info_init() // new +filter_info_init() { FILTER_INFO.USE_COMPRESS = 0; FILTER_INFO.cd_nelmts = (size_t *)malloc(sizeof(size_t)); @@ -120,7 +120,7 @@ filter_info_free() // Retrieve information about a filter on a dataset int -get_filter_info(hid_t dset_id) // new +get_filter_info(hid_t dset_id) { hid_t dcpl; dcpl = H5Dget_create_plist(dset_id); @@ -141,9 +141,9 @@ get_filter_info(hid_t dset_id) // new if (MY_RANK == 0) { printf(" Compression filter used to decompress: %s\n", FILTER_INFO.name); printf(" Filter ID: %d\n", FILTER_INFO.filter_id); - printf(" Number of auxiliary data: %d\n", FILTER_INFO.cd_nelmts); + printf(" Number of compression filter parameters: %d\n", FILTER_INFO.cd_nelmts); for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { - printf(" Auxiliary data %d: %d\n", i, FILTER_INFO.cd_values[i]); + printf(" Compression parameter %d: %d\n", i, FILTER_INFO.cd_values[i]); } } @@ -175,7 +175,7 @@ read_h5_data(time_step *ts, hid_t loc, hid_t *dset_ids, hid_t filespace, hid_t m dset_ids[6] = H5Dopen_async(loc, "py", dapl, ts->es_meta_create); dset_ids[7] = H5Dopen_async(loc, "pz", dapl, ts->es_meta_create); - int err = get_filter_info(dset_ids[0]); // new + int err = get_filter_info(dset_ids[0]); if (MY_RANK = 0) { if (err) { printf(" No compression filter on the dataset\n"); @@ -590,7 +590,7 @@ _run_benchmark_read(hid_t file_id, hid_t fapl, hid_t gapl, hid_t filespace, benc unsigned long read_time_exp = 0, metadata_time_exp = 0; unsigned long read_time_imp = 0, metadata_time_imp = 0; int dset_cnt = 8; - filter_info_init(); // new + filter_info_init(); for (int ts_index = 0; ts_index < nts; ts_index++) { meta_time1 = 0, meta_time2 = 0, meta_time3 = 0, meta_time4 = 0, meta_time5 = 0; sprintf(grp_name, "Timestep_%d", ts_index); @@ -643,7 +643,7 @@ _run_benchmark_read(hid_t file_id, hid_t fapl, hid_t gapl, hid_t filespace, benc *raw_read_time_out += (read_time_exp + read_time_imp); *inner_metadata_time += (meta_time1 + meta_time2 + meta_time3 + meta_time4 + meta_time5); } - filter_info_free(); // new + mem_monitor_final_run(MEM_MONITOR, &metadata_time_imp, &read_time_imp); *raw_read_time_out += read_time_imp; *inner_metadata_time += metadata_time_imp; @@ -886,12 +886,12 @@ main(int argc, char *argv[]) value = format_human_readable(total_size_bytes); fprintf(params.csv_fs, "total size, %.3lf, %cB\n", value.value, value.unit); - if (FILTER_INFO.USE_COMPRESS) { // new + if (FILTER_INFO.USE_COMPRESS) { fprintf(params.csv_fs, "compression filter name, %s\n", FILTER_INFO.name); fprintf(params.csv_fs, "filter ID, %d\n", FILTER_INFO.filter_id); - fprintf(params.csv_fs, "number of auxiliary data, %d\n", FILTER_INFO.cd_nelmts); - for (int i = 0; i < FILTER_INFO.cd_nelmts; ++i) { - fprintf(params.csv_fs, "auxiliary data %d, %d\n", i, FILTER_INFO.cd_values[i]); + fprintf(params.csv_fs, "number of compression filter parameters, %d\n", FILTER_INFO.cd_nelmts); + for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { + fprintf(params.csv_fs, "compression parameter %d, %d\n", i, FILTER_INFO.cd_values[i]); } } @@ -904,8 +904,9 @@ main(int argc, char *argv[]) fprintf(params.csv_fs, "observed time, %.3f, %s\n", oct_s, "seconds"); fclose(params.csv_fs); } + } - + filter_info_free(); error: H5E_BEGIN_TRY { diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 59807129..913069cf 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -899,13 +899,18 @@ set_globals(const bench_params *params) herr_t ret; // Construct auxiliary data for the filter - cd_values = (unsigned int *)malloc(5 * sizeof(unsigned int)); + cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); cd_values[0] = params->cd_value_1; cd_values[1] = params->cd_value_2; cd_values[2] = params->cd_value_3; cd_values[3] = params->cd_value_4; cd_values[4] = params->cd_value_5; - + cd_values[5] = params->cd_value_6; + cd_values[6] = params->cd_value_7; + cd_values[7] = params->cd_value_8; + cd_values[8] = params->cd_value_9; + cd_values[9] = params->cd_value_10; + // Create a new property list instance COMPRESS_INFO.dcpl_id = H5Pcreate(H5P_DATASET_CREATE); assert(COMPRESS_INFO.dcpl_id > 0); @@ -914,12 +919,6 @@ set_globals(const bench_params *params) ret = H5Premove_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ALL); assert(ret >= 0); - /* - // Set shuffle filter prior to any compression filters - ret = H5Pset_shuffle(COMPRESS_INFO.dcpl_id); - assert(ret >= 0); - */ - /* Set chunked layout and chunk dimensions */ ret = H5Pset_layout(COMPRESS_INFO.dcpl_id, H5D_CHUNKED); assert(ret >= 0); From 74881be7d0d58fc51544166fa35221b25b0654d1 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Mon, 12 Aug 2024 09:04:45 -0700 Subject: [PATCH 21/61] update CI --- .github/workflows/h5bench-hdf5-1.10.4.yml | 3 +++ .github/workflows/h5bench-hdf5-1.10.7.yml | 3 +++ .github/workflows/h5bench-hdf5-1.10.8.yml | 3 +++ 3 files changed, 9 insertions(+) diff --git a/.github/workflows/h5bench-hdf5-1.10.4.yml b/.github/workflows/h5bench-hdf5-1.10.4.yml index 712eb4e9..c3d97a50 100644 --- a/.github/workflows/h5bench-hdf5-1.10.4.yml +++ b/.github/workflows/h5bench-hdf5-1.10.4.yml @@ -1,5 +1,8 @@ name: h5bench (HDF5 1.10.4) +env: + ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true + on: pull_request: diff --git a/.github/workflows/h5bench-hdf5-1.10.7.yml b/.github/workflows/h5bench-hdf5-1.10.7.yml index 8834b81b..c6743019 100644 --- a/.github/workflows/h5bench-hdf5-1.10.7.yml +++ b/.github/workflows/h5bench-hdf5-1.10.7.yml @@ -1,5 +1,8 @@ name: h5bench (HDF5 1.10.7) +env: + ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true + on: pull_request: diff --git a/.github/workflows/h5bench-hdf5-1.10.8.yml b/.github/workflows/h5bench-hdf5-1.10.8.yml index 3c2fc5f1..ed831b78 100644 --- a/.github/workflows/h5bench-hdf5-1.10.8.yml +++ b/.github/workflows/h5bench-hdf5-1.10.8.yml @@ -1,5 +1,8 @@ name: h5bench (HDF5 1.10.8) +env: + ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true + on: pull_request: From 59fbabfad45d9a87ab5514e6d1749fb1e7063f7f Mon Sep 17 00:00:00 2001 From: skyFzz Date: Mon, 12 Aug 2024 12:15:44 -0400 Subject: [PATCH 22/61] Fix multiple definitions error. Update documentation. --- commons/h5bench_util.c | 2 +- docs/source/vpic.rst | 22 ++++++++++++++-------- h5bench_patterns/h5bench_write.c | 2 +- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/commons/h5bench_util.c b/commons/h5bench_util.c index d182971a..55d98056 100644 --- a/commons/h5bench_util.c +++ b/commons/h5bench_util.c @@ -42,7 +42,7 @@ char* compress_filter_names[] = { }; int compress_filter_ids[] = { -1, 5, 4, 1, 32024, 32013, 32003 }; -unsigned int *cd_values; +static unsigned int *cd_values; unsigned long get_time_usec() diff --git a/docs/source/vpic.rst b/docs/source/vpic.rst index 006d7052..de144934 100644 --- a/docs/source/vpic.rst +++ b/docs/source/vpic.rst @@ -69,13 +69,18 @@ Compression Settings **Parameter** **Description** ======================================= ========================================================== ``COMPRESS`` `YES` or `NO` (optional) enables parralel compression -``COMPRESS_FILTER`` Options: ``N_BIT``, ``SZIP``, ``GZIP`, ``SZ3```, ``ZFP``, ``SNAPPY_CUDA`` -``NUM_AUXILIARY_DATA`` Number of auxiliary data to control the behavior of the compression -``AUXILIARY_DATA_1`` Auxiliary data -``AUXILIARY_DATA_2`` Auxiliary data -``AUXILIARY_DATA_3`` Auxiliary data -``AUXILIARY_DATA_4`` Auxiliary data -``AUXILIARY_DATA_5`` Auxiliary data +``COMPRESS_FILTER`` Options: ``N_BIT``, ``SZIP``, ``GZIP``, ``SZ3``, ``ZFP``, ``SNAPPY_CUDA`` +``CD_NELMTS`` Number of auxiliary data to control the behavior of the compression +``CD_VALUES_1`` Auxiliary data +``CD_VALUES_2`` Auxiliary data +``CD_VALUES_3`` Auxiliary data +``CD_VALUES_4`` Auxiliary data +``CD_VALUES_5`` Auxiliary data +``CD_VALUES_6`` Auxiliary data +``CD_VALUES_7`` Auxiliary data +``CD_VALUES_8`` Auxiliary data +``CD_VALUES_9`` Auxiliary data +``CD_VALUES_10`` Auxiliary data ``CHUNK_DIM_1`` Chunk dimension ``CHUNK_DIM_2`` Chunk dimension ``CHUNK_DIM_3`` Chunk dimension @@ -85,7 +90,8 @@ Compression and decompression are applicable for ``h5bench_write`` and ``h5bench For built-in compressions ``N_BIT``/``SZIP``/``GZIP`` to work on datasets in ``h5bench_write`` you just need to define the value for ``COMPRESS_FILTER`` and chunk dimensions. For external compressions ``SZ3``/``ZFP``/``SNAPPY_CUDA`` to work you **must** also download and build the compression filter plugin on your system, and specify the installation path ``path`` in ``vol`` so that HDF5 can apply. See `Enable Plugins `_ for details using a external compression. If ``h5bench_write`` executed successfully with a intended compression, ``h5bench_read`` will read compressed data and apply decompression automatically. -The ``NUM_AUXILIARY_DATA`` and ``AUXILIARY_DATA_[1-5]`` parameters are optional and only applicable to external compressions. Their default values are ``0`` and only accpet ``unsigned int`` data type. You can provide 5 auxiliary data at maximum. For information on how to define these values, see `H5Z-ZFP Interfaces `_ for an example to manipulate the ZFP compression. +The ``CD_NELMTS`` and ``CD_VALUES_[1-10]`` parameters are optional and only applicable to external compressions. Their default values are ``0`` and only accpet ``unsigned int`` data type. You can provide 10 auxiliary data at maximum. For information on how to define these values, see `H5Z-ZFP Interfaces `_ for an example to manipulate the ZFP compression, and see `SZ3 Usage Example `_ to manipulate the SZ3 compression. + .. warning:: diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 913069cf..3bc20b65 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -69,7 +69,7 @@ typedef struct compress_info { hsize_t total_compressed_size; } compress_info; -unsigned int *cd_values; +static unsigned int *cd_values; // Global Variables and dimensions async_mode ASYNC_MODE; From 2e093799cf9642436ddb52789ab8f59869d7ca51 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Tue, 13 Aug 2024 16:04:55 -0400 Subject: [PATCH 23/61] Skip calling H5Pget_filter() when H5Pget_nfilters() returns 0, indicating no filter is used in read --- commons/h5bench_util.c | 2 -- h5bench_patterns/h5bench_read.c | 28 ++++++++++++++++------------ 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/commons/h5bench_util.c b/commons/h5bench_util.c index 55d98056..624c99d3 100644 --- a/commons/h5bench_util.c +++ b/commons/h5bench_util.c @@ -195,7 +195,6 @@ ts_delayed_close(mem_monitor *mon, unsigned long *metadata_time_total, int dset_ unsigned long meta_time = 0; if (!has_vol_async) { - printf("DEBUG - ts_delayed_close() does not work, has_vol_async == 0\n"); return 0; } @@ -215,7 +214,6 @@ ts_delayed_close(mem_monitor *mon, unsigned long *metadata_time_total, int dset_ } } *metadata_time_total = meta_time; - printf("DEBUG - ts_delayed_close() works\n"); return 0; } diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index 4ba04504..05361261 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -102,6 +102,7 @@ filter_info_init() { FILTER_INFO.USE_COMPRESS = 0; FILTER_INFO.cd_nelmts = (size_t *)malloc(sizeof(size_t)); + *(FILTER_INFO.cd_nelmts) = 10; FILTER_INFO.cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); FILTER_INFO.name = (char *)malloc(10 * sizeof(char)); FILTER_INFO.filter_config = (unsigned int *)malloc(1 * sizeof(unsigned int)); @@ -126,14 +127,20 @@ get_filter_info(hid_t dset_id) dcpl = H5Dget_create_plist(dset_id); if (dcpl < 0) { - printf("Invalid dataset creation property list identifier."); - return 1; + printf("Invalid dataset creation property list identifier.\n"); + return -1; + } + + // Check the number of filters in the pipeline, skip calling H5Pget_filter if 0 filter is detected in the pipeline + int num_filters = H5Pget_nfilters(dcpl); + if (num_filters <= 0) { + return 0; } - FILTER_INFO.filter_id = H5Pget_filter2(dcpl, 0, H5Z_FLAG_MANDATORY, FILTER_INFO.cd_nelmts, FILTER_INFO.cd_values, 10, FILTER_INFO.name, FILTER_INFO.filter_config); if (FILTER_INFO.filter_id < 0) { - return 1; + printf("Failed to retrieve filter information.\n"); + return -1; } FILTER_INFO.USE_COMPRESS = 1; @@ -175,14 +182,12 @@ read_h5_data(time_step *ts, hid_t loc, hid_t *dset_ids, hid_t filespace, hid_t m dset_ids[6] = H5Dopen_async(loc, "py", dapl, ts->es_meta_create); dset_ids[7] = H5Dopen_async(loc, "pz", dapl, ts->es_meta_create); - int err = get_filter_info(dset_ids[0]); - if (MY_RANK = 0) { - if (err) { - printf(" No compression filter on the dataset\n"); - } else { - printf(" Read filter info successfully\n"); + int ret = get_filter_info(dset_ids[0]); + if (ret < 0) { + if (MY_RANK == 0) { + printf("get_filter_info() failed\n"); } - } + } t2 = get_time_usec(); @@ -793,7 +798,6 @@ main(int argc, char *argv[]) MPI_Allreduce(&NUM_PARTICLES, &TOTAL_PARTICLES, 1, MPI_LONG_LONG, MPI_SUM, MPI_COMM_WORLD); MPI_Scan(&NUM_PARTICLES, &FILE_OFFSET, 1, MPI_LONG_LONG, MPI_SUM, MPI_COMM_WORLD); - // E.g. Rank 2: `FILE_OFFSET_2 = (NUM_PARTICLES_0 + NUM_PARTICLES_1 + NUM_PARTICLES_2) - NUM_PARTICLES_2` = NUM_PARTICLES_0 + NUM_PARTICLES_1 FILE_OFFSET -= NUM_PARTICLES; // Allocate memory for each particlee BUF_STRUCT = prepare_contig_memory_multi_dim(params.dim_1, params.dim_2, params.dim_3); From a5a9e5e71143f367661eb9b349a7e6987793f5f1 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Tue, 13 Aug 2024 13:53:41 -0700 Subject: [PATCH 24/61] fix clang formatter --- .github/workflows/clang-format-fix.yml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/.github/workflows/clang-format-fix.yml b/.github/workflows/clang-format-fix.yml index 9145f65c..8b1d4880 100644 --- a/.github/workflows/clang-format-fix.yml +++ b/.github/workflows/clang-format-fix.yml @@ -1,16 +1,18 @@ -name: clang-format Check +name: clang-format Fix on: workflow_dispatch: push: jobs: formatting-check: - name: Formatting Check + name: Commit Format Changes runs-on: ubuntu-latest if: "!contains(github.event.head_commit.message, 'skip-ci')" + permissions: + contents: write # In order to allow EndBug/add-and-commit to commit changes steps: - - uses: actions/checkout@v2 - - name: Run clang-format style check for C programs. - uses: DoozyX/clang-format-lint-action@v0.11 + - uses: actions/checkout@v3 + - name: Fix C formatting issues detected by clang-format + uses: DoozyX/clang-format-lint-action@v0.13 with: source: '.' extensions: 'c,h,cpp,hpp' @@ -18,8 +20,8 @@ jobs: inplace: True style: file # exclude: './config ' - - uses: EndBug/add-and-commit@v7 + - uses: EndBug/add-and-commit@v9 with: author_name: github-actions author_email: github-actions[bot]@users.noreply.github.com - message: 'Committing clang-format changes' + message: 'committing clang-format changes' From 73b0930afec5ba7dbd0527f6add2632658e70ce7 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Tue, 13 Aug 2024 14:04:44 -0700 Subject: [PATCH 25/61] remove --- .github/workflows/clang-format-fix.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/clang-format-fix.yml b/.github/workflows/clang-format-fix.yml index 8b1d4880..e1d6f701 100644 --- a/.github/workflows/clang-format-fix.yml +++ b/.github/workflows/clang-format-fix.yml @@ -8,7 +8,7 @@ jobs: runs-on: ubuntu-latest if: "!contains(github.event.head_commit.message, 'skip-ci')" permissions: - contents: write # In order to allow EndBug/add-and-commit to commit changes + contents: write steps: - uses: actions/checkout@v3 - name: Fix C formatting issues detected by clang-format From 2ad8e7988f42651abc36afbe793e6240069287b1 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Tue, 13 Aug 2024 14:05:29 -0700 Subject: [PATCH 26/61] add stage --- .github/workflows/clang-format-fix.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/clang-format-fix.yml b/.github/workflows/clang-format-fix.yml index e1d6f701..7c5aca5e 100644 --- a/.github/workflows/clang-format-fix.yml +++ b/.github/workflows/clang-format-fix.yml @@ -1,6 +1,7 @@ name: clang-format Fix on: workflow_dispatch: + pull_request: push: jobs: formatting-check: From 65466156872f295b506c667dfc77f4a8af6bf5b8 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Tue, 13 Aug 2024 14:14:44 -0700 Subject: [PATCH 27/61] remove trigger --- .github/workflows/clang-format-fix.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/clang-format-fix.yml b/.github/workflows/clang-format-fix.yml index 7c5aca5e..e1d6f701 100644 --- a/.github/workflows/clang-format-fix.yml +++ b/.github/workflows/clang-format-fix.yml @@ -1,7 +1,6 @@ name: clang-format Fix on: workflow_dispatch: - pull_request: push: jobs: formatting-check: From 2a818091cef83d4b0d8d7021796155437f0d7962 Mon Sep 17 00:00:00 2001 From: github-actions Date: Tue, 13 Aug 2024 21:16:35 +0000 Subject: [PATCH 28/61] committing clang-format changes --- commons/h5bench_util.c | 178 +++++++++++++++---------------- commons/h5bench_util.h | 44 ++++---- h5bench_patterns/h5bench_read.c | 161 ++++++++++++++-------------- h5bench_patterns/h5bench_write.c | 145 +++++++++++++------------ 4 files changed, 262 insertions(+), 266 deletions(-) diff --git a/commons/h5bench_util.c b/commons/h5bench_util.c index 624c99d3..50a250d3 100644 --- a/commons/h5bench_util.c +++ b/commons/h5bench_util.c @@ -31,17 +31,9 @@ int parse_unit(char *str_in, unsigned long long *num, char **unit_str); int has_vol_async; -char* compress_filter_names[] = { - "INVALID", - "N_BIT", - "SZIP", - "GZIP", - "SZ3", - "ZFP", - "SNAPPY_CUDA" -}; - -int compress_filter_ids[] = { -1, 5, 4, 1, 32024, 32013, 32003 }; +char *compress_filter_names[] = {"INVALID", "N_BIT", "SZIP", "GZIP", "SZ3", "ZFP", "SNAPPY_CUDA"}; + +int compress_filter_ids[] = {-1, 5, 4, 1, 32024, 32013, 32003}; static unsigned int *cd_values; unsigned long @@ -196,7 +188,7 @@ ts_delayed_close(mem_monitor *mon, unsigned long *metadata_time_total, int dset_ if (!has_vol_async) { return 0; - } + } for (int i = 0; i < mon->time_step_cnt; i++) { ts_run = &(mon->time_steps[i]); @@ -214,7 +206,7 @@ ts_delayed_close(mem_monitor *mon, unsigned long *metadata_time_total, int dset_ } } *metadata_time_total = meta_time; - return 0; + return 0; } int @@ -865,62 +857,62 @@ _set_params(char *key, char *val_in, bench_params *params_in_out, int do_write) else (*params_in_out).read_option = READ_OPTION_INVALID; } - else if (strcmp(key, "COMPRESS_FILTER") == 0) { // New - if (strcmp(val_in, "N_BIT") == 0) { - (*params_in_out).compress_filter = N_BIT; - } - else if (strcmp(val_in, "SZIP") == 0) { - (*params_in_out).compress_filter = SZIP; - } - else if (strcmp(val_in, "GZIP") == 0) { - (*params_in_out).compress_filter = GZIP; - } - else if (strcmp(val_in, "SZ3") == 0) { - (*params_in_out).compress_filter = SZ3; - } - else if (strcmp(val_in, "ZFP") == 0) { - (*params_in_out).compress_filter = ZFP; - } - else if (strcmp(val_in, "SNAPPY_CUDA") == 0) { - (*params_in_out).compress_filter = SNAPPY_CUDA; - } - - else - (*params_in_out).compress_filter = COMPRESS_FILTER_INVALID; - } - else if (strcmp(key, "CD_NELMTS") == 0) { - (*params_in_out).cd_nelmts = atoi(val); - } - else if (strcmp(key, "CD_VALUES_1") == 0) { - (*params_in_out).cd_value_1 = atoi(val); - } - else if (strcmp(key, "CD_VALUES_2") == 0) { - (*params_in_out).cd_value_2 = atoi(val); - } - else if (strcmp(key, "CD_VALUES_3") == 0) { - (*params_in_out).cd_value_3 = atoi(val); - } - else if (strcmp(key, "CD_VALUES_4") == 0) { - (*params_in_out).cd_value_4 = atoi(val); - } - else if (strcmp(key, "CD_VALUES_5") == 0) { - (*params_in_out).cd_value_5 = atoi(val); - } - else if (strcmp(key, "CD_VALUES_6") == 0) { - (*params_in_out).cd_value_6 = atoi(val); - } - else if (strcmp(key, "CD_VALUES_7") == 0) { - (*params_in_out).cd_value_7 = atoi(val); - } - else if (strcmp(key, "CD_VALUES_8") == 0) { - (*params_in_out).cd_value_8 = atoi(val); - } - else if (strcmp(key, "CD_VALUES_9") == 0) { - (*params_in_out).cd_value_9 = atoi(val); - } - else if (strcmp(key, "CD_VALUES_10") == 0) { - (*params_in_out).cd_value_10 = atoi(val); - } + else if (strcmp(key, "COMPRESS_FILTER") == 0) { // New + if (strcmp(val_in, "N_BIT") == 0) { + (*params_in_out).compress_filter = N_BIT; + } + else if (strcmp(val_in, "SZIP") == 0) { + (*params_in_out).compress_filter = SZIP; + } + else if (strcmp(val_in, "GZIP") == 0) { + (*params_in_out).compress_filter = GZIP; + } + else if (strcmp(val_in, "SZ3") == 0) { + (*params_in_out).compress_filter = SZ3; + } + else if (strcmp(val_in, "ZFP") == 0) { + (*params_in_out).compress_filter = ZFP; + } + else if (strcmp(val_in, "SNAPPY_CUDA") == 0) { + (*params_in_out).compress_filter = SNAPPY_CUDA; + } + + else + (*params_in_out).compress_filter = COMPRESS_FILTER_INVALID; + } + else if (strcmp(key, "CD_NELMTS") == 0) { + (*params_in_out).cd_nelmts = atoi(val); + } + else if (strcmp(key, "CD_VALUES_1") == 0) { + (*params_in_out).cd_value_1 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_2") == 0) { + (*params_in_out).cd_value_2 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_3") == 0) { + (*params_in_out).cd_value_3 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_4") == 0) { + (*params_in_out).cd_value_4 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_5") == 0) { + (*params_in_out).cd_value_5 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_6") == 0) { + (*params_in_out).cd_value_6 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_7") == 0) { + (*params_in_out).cd_value_7 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_8") == 0) { + (*params_in_out).cd_value_8 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_9") == 0) { + (*params_in_out).cd_value_9 = atoi(val); + } + else if (strcmp(key, "CD_VALUES_10") == 0) { + (*params_in_out).cd_value_10 = atoi(val); + } else if (strcmp(key, "NUM_DIMS") == 0) { int num = atoi(val); if (num > 0) @@ -1170,12 +1162,12 @@ bench_params_init(bench_params *params_out) (*params_out).align_threshold = 0; (*params_out).align_len = 0; - (*params_out).cd_nelmts = 0; // new - (*params_out).cd_value_1 = 0; // new - (*params_out).cd_value_2 = 0; // new - (*params_out).cd_value_3 = 0; // new - (*params_out).cd_value_4 = 0; // new - (*params_out).cd_value_5 = 0; // new + (*params_out).cd_nelmts = 0; // new + (*params_out).cd_value_1 = 0; // new + (*params_out).cd_value_2 = 0; // new + (*params_out).cd_value_3 = 0; // new + (*params_out).cd_value_4 = 0; // new + (*params_out).cd_value_5 = 0; // new } int @@ -1349,24 +1341,24 @@ print_params(const bench_params *p) if (p->useCompress) { printf("Use compression: %d\n", p->useCompress); - printf(" Compression_filter_name: %s\n", compress_filter_names[p->compress_filter]); - printf(" Compression_filter_id: %d\n", compress_filter_ids[p->compress_filter]); - printf(" Number of compression filter parameters: %d\n", p->cd_nelmts); - cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); - cd_values[0] = p->cd_value_1; - cd_values[1] = p->cd_value_2; - cd_values[2] = p->cd_value_3; - cd_values[3] = p->cd_value_4; - cd_values[4] = p->cd_value_5; - cd_values[5] = p->cd_value_6; - cd_values[6] = p->cd_value_7; - cd_values[7] = p->cd_value_8; - cd_values[8] = p->cd_value_9; - cd_values[9] = p->cd_value_10; - for (int i = 0; i < p->cd_nelmts; ++i) { - printf(" Compression parameter %d: %d\n", i + 1, cd_values[i]); - } - free(cd_values); + printf(" Compression_filter_name: %s\n", compress_filter_names[p->compress_filter]); + printf(" Compression_filter_id: %d\n", compress_filter_ids[p->compress_filter]); + printf(" Number of compression filter parameters: %d\n", p->cd_nelmts); + cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); + cd_values[0] = p->cd_value_1; + cd_values[1] = p->cd_value_2; + cd_values[2] = p->cd_value_3; + cd_values[3] = p->cd_value_4; + cd_values[4] = p->cd_value_5; + cd_values[5] = p->cd_value_6; + cd_values[6] = p->cd_value_7; + cd_values[7] = p->cd_value_8; + cd_values[8] = p->cd_value_9; + cd_values[9] = p->cd_value_10; + for (int i = 0; i < p->cd_nelmts; ++i) { + printf(" Compression parameter %d: %d\n", i + 1, cd_values[i]); + } + free(cd_values); printf(" chunk_dim1: %lu\n", p->chunk_dim_1); if (p->num_dims >= 2) { printf(" chunk_dim2: %lu\n", p->chunk_dim_2); diff --git a/commons/h5bench_util.h b/commons/h5bench_util.h index bac8f0a5..64098b4a 100644 --- a/commons/h5bench_util.h +++ b/commons/h5bench_util.h @@ -105,21 +105,21 @@ typedef enum compress_filter { N_BIT, SZIP, GZIP, - SZ3, - ZFP, - SNAPPY_CUDA + SZ3, + ZFP, + SNAPPY_CUDA } compress_filter; typedef struct bench_params { - io_operation io_op; - pattern mem_pattern; - pattern file_pattern; - read_option read_option; + io_operation io_op; + pattern mem_pattern; + pattern file_pattern; + read_option read_option; compress_filter compress_filter; - int useCompress; - int useCSV; - async_mode asyncMode; - int subfiling; + int useCompress; + int useCSV; + async_mode asyncMode; + int subfiling; union access_pattern { read_pattern pattern_read; write_pattern pattern_write; @@ -159,17 +159,17 @@ typedef struct bench_params { unsigned long align_threshold; unsigned long align_len; unsigned long stdev_dim_1; - size_t cd_nelmts; - unsigned int cd_value_1; - unsigned int cd_value_2; - unsigned int cd_value_3; - unsigned int cd_value_4; - unsigned int cd_value_5; - unsigned int cd_value_6; - unsigned int cd_value_7; - unsigned int cd_value_8; - unsigned int cd_value_9; - unsigned int cd_value_10; + size_t cd_nelmts; + unsigned int cd_value_1; + unsigned int cd_value_2; + unsigned int cd_value_3; + unsigned int cd_value_4; + unsigned int cd_value_5; + unsigned int cd_value_6; + unsigned int cd_value_7; + unsigned int cd_value_8; + unsigned int cd_value_9; + unsigned int cd_value_10; } bench_params; typedef struct data_md { diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index 05361261..ddcfa435 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -66,12 +66,12 @@ data_contig_md *BUF_STRUCT; mem_monitor * MEM_MONITOR; typedef struct filter_info { - int USE_COMPRESS; - size_t *cd_nelmts; - unsigned int *cd_values; - char *name; - unsigned int *filter_config; - H5Z_filter_t filter_id; + int USE_COMPRESS; + size_t * cd_nelmts; + unsigned int *cd_values; + char * name; + unsigned int *filter_config; + H5Z_filter_t filter_id; } filter_info; filter_info FILTER_INFO; @@ -98,65 +98,66 @@ set_dspace_plist(hid_t *plist_id_out, int data_collective) // Allocate memory for filter_info void -filter_info_init() +filter_info_init() { - FILTER_INFO.USE_COMPRESS = 0; - FILTER_INFO.cd_nelmts = (size_t *)malloc(sizeof(size_t)); - *(FILTER_INFO.cd_nelmts) = 10; - FILTER_INFO.cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); - FILTER_INFO.name = (char *)malloc(10 * sizeof(char)); - FILTER_INFO.filter_config = (unsigned int *)malloc(1 * sizeof(unsigned int)); + FILTER_INFO.USE_COMPRESS = 0; + FILTER_INFO.cd_nelmts = (size_t *)malloc(sizeof(size_t)); + *(FILTER_INFO.cd_nelmts) = 10; + FILTER_INFO.cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); + FILTER_INFO.name = (char *)malloc(10 * sizeof(char)); + FILTER_INFO.filter_config = (unsigned int *)malloc(1 * sizeof(unsigned int)); } - // Free memory for filter_info void filter_info_free() { - free(FILTER_INFO.cd_nelmts); - free(FILTER_INFO.cd_values); - free(FILTER_INFO.name); - free(FILTER_INFO.filter_config); + free(FILTER_INFO.cd_nelmts); + free(FILTER_INFO.cd_values); + free(FILTER_INFO.name); + free(FILTER_INFO.filter_config); } // Retrieve information about a filter on a dataset int -get_filter_info(hid_t dset_id) +get_filter_info(hid_t dset_id) { - hid_t dcpl; - dcpl = H5Dget_create_plist(dset_id); - - if (dcpl < 0) { - printf("Invalid dataset creation property list identifier.\n"); - return -1; - } - - // Check the number of filters in the pipeline, skip calling H5Pget_filter if 0 filter is detected in the pipeline - int num_filters = H5Pget_nfilters(dcpl); - if (num_filters <= 0) { - return 0; - } - FILTER_INFO.filter_id = H5Pget_filter2(dcpl, 0, H5Z_FLAG_MANDATORY, FILTER_INFO.cd_nelmts, FILTER_INFO.cd_values, 10, FILTER_INFO.name, FILTER_INFO.filter_config); - - if (FILTER_INFO.filter_id < 0) { - printf("Failed to retrieve filter information.\n"); - return -1; - } - - FILTER_INFO.USE_COMPRESS = 1; - - if (MY_RANK == 0) { - printf(" Compression filter used to decompress: %s\n", FILTER_INFO.name); - printf(" Filter ID: %d\n", FILTER_INFO.filter_id); - printf(" Number of compression filter parameters: %d\n", FILTER_INFO.cd_nelmts); - for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { - printf(" Compression parameter %d: %d\n", i, FILTER_INFO.cd_values[i]); - } - } - - return 0; -} + hid_t dcpl; + dcpl = H5Dget_create_plist(dset_id); + + if (dcpl < 0) { + printf("Invalid dataset creation property list identifier.\n"); + return -1; + } + + // Check the number of filters in the pipeline, skip calling H5Pget_filter if 0 filter is detected in the + // pipeline + int num_filters = H5Pget_nfilters(dcpl); + if (num_filters <= 0) { + return 0; + } + FILTER_INFO.filter_id = + H5Pget_filter2(dcpl, 0, H5Z_FLAG_MANDATORY, FILTER_INFO.cd_nelmts, FILTER_INFO.cd_values, 10, + FILTER_INFO.name, FILTER_INFO.filter_config); + + if (FILTER_INFO.filter_id < 0) { + printf("Failed to retrieve filter information.\n"); + return -1; + } + + FILTER_INFO.USE_COMPRESS = 1; + + if (MY_RANK == 0) { + printf(" Compression filter used to decompress: %s\n", FILTER_INFO.name); + printf(" Filter ID: %d\n", FILTER_INFO.filter_id); + printf(" Number of compression filter parameters: %d\n", FILTER_INFO.cd_nelmts); + for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { + printf(" Compression parameter %d: %d\n", i, FILTER_INFO.cd_values[i]); + } + } + return 0; +} // Create HDF5 file and read data void @@ -165,7 +166,7 @@ read_h5_data(time_step *ts, hid_t loc, hid_t *dset_ids, hid_t filespace, hid_t m { hid_t dapl; unsigned long t1, t2, t3; - // Create a dataset access property list + // Create a dataset access property list dapl = H5Pcreate(H5P_DATASET_ACCESS); #if H5_VERSION_GE(1, 10, 0) H5Pset_all_coll_metadata_ops(dapl, true); @@ -181,13 +182,13 @@ read_h5_data(time_step *ts, hid_t loc, hid_t *dset_ids, hid_t filespace, hid_t m dset_ids[5] = H5Dopen_async(loc, "px", dapl, ts->es_meta_create); dset_ids[6] = H5Dopen_async(loc, "py", dapl, ts->es_meta_create); dset_ids[7] = H5Dopen_async(loc, "pz", dapl, ts->es_meta_create); - - int ret = get_filter_info(dset_ids[0]); - if (ret < 0) { - if (MY_RANK == 0) { - printf("get_filter_info() failed\n"); - } - } + + int ret = get_filter_info(dset_ids[0]); + if (ret < 0) { + if (MY_RANK == 0) { + printf("get_filter_info() failed\n"); + } + } t2 = get_time_usec(); @@ -595,7 +596,7 @@ _run_benchmark_read(hid_t file_id, hid_t fapl, hid_t gapl, hid_t filespace, benc unsigned long read_time_exp = 0, metadata_time_exp = 0; unsigned long read_time_imp = 0, metadata_time_imp = 0; int dset_cnt = 8; - filter_info_init(); + filter_info_init(); for (int ts_index = 0; ts_index < nts; ts_index++) { meta_time1 = 0, meta_time2 = 0, meta_time3 = 0, meta_time4 = 0, meta_time5 = 0; sprintf(grp_name, "Timestep_%d", ts_index); @@ -687,9 +688,9 @@ int main(int argc, char *argv[]) { int mpi_thread_lvl_provided = -1; - // Initialize the MPI exe env which multiple threads may make MPI calls + // Initialize the MPI exe env which multiple threads may make MPI calls MPI_Init_thread(&argc, &argv, MPI_THREAD_MULTIPLE, &mpi_thread_lvl_provided); - assert(MPI_THREAD_MULTIPLE == mpi_thread_lvl_provided); + assert(MPI_THREAD_MULTIPLE == mpi_thread_lvl_provided); MPI_Comm_rank(MPI_COMM_WORLD, &MY_RANK); MPI_Comm_size(MPI_COMM_WORLD, &NUM_RANKS); @@ -731,9 +732,9 @@ main(int argc, char *argv[]) hid_t fapl, gapl; set_pl(&fapl, &gapl); - // Initialize array to store the size of each dimension, at max 64 dimensions + // Initialize array to store the size of each dimension, at max 64 dimensions hsize_t dims[64] = {0}; - // Open an existing HDF5 file with read-only access + // Open an existing HDF5 file with read-only access hid_t file_id = H5Fopen(file_name, H5F_ACC_RDONLY, fapl); hid_t filespace = get_filespace(file_id); int dims_cnt = H5Sget_simple_extent_dims(filespace, dims, NULL); @@ -742,7 +743,7 @@ main(int argc, char *argv[]) for (int i = 0; i < dims_cnt; i++) { if (MY_RANK == 0) printf("dims[%d] = %llu (total number for the file)\n", i, dims[i]); - // Calculate the size/area/volume + // Calculate the size/area/volume total_particles *= dims[i]; } } @@ -777,8 +778,8 @@ main(int argc, char *argv[]) goto error; } } - // NUM_RANKS here refers to the number of processes instead of the number of dimensions - NUM_PARTICLES = total_particles / NUM_RANKS; + // NUM_RANKS here refers to the number of processes instead of the number of dimensions + NUM_PARTICLES = total_particles / NUM_RANKS; unsigned long long read_elem_cnt = params.try_num_particles; @@ -799,7 +800,7 @@ main(int argc, char *argv[]) MPI_Allreduce(&NUM_PARTICLES, &TOTAL_PARTICLES, 1, MPI_LONG_LONG, MPI_SUM, MPI_COMM_WORLD); MPI_Scan(&NUM_PARTICLES, &FILE_OFFSET, 1, MPI_LONG_LONG, MPI_SUM, MPI_COMM_WORLD); FILE_OFFSET -= NUM_PARTICLES; - // Allocate memory for each particlee + // Allocate memory for each particlee BUF_STRUCT = prepare_contig_memory_multi_dim(params.dim_1, params.dim_2, params.dim_3); unsigned long t1 = get_time_usec(); @@ -889,15 +890,16 @@ main(int argc, char *argv[]) "seconds"); value = format_human_readable(total_size_bytes); fprintf(params.csv_fs, "total size, %.3lf, %cB\n", value.value, value.unit); - - if (FILTER_INFO.USE_COMPRESS) { - fprintf(params.csv_fs, "compression filter name, %s\n", FILTER_INFO.name); - fprintf(params.csv_fs, "filter ID, %d\n", FILTER_INFO.filter_id); - fprintf(params.csv_fs, "number of compression filter parameters, %d\n", FILTER_INFO.cd_nelmts); - for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { - fprintf(params.csv_fs, "compression parameter %d, %d\n", i, FILTER_INFO.cd_values[i]); - } - } + + if (FILTER_INFO.USE_COMPRESS) { + fprintf(params.csv_fs, "compression filter name, %s\n", FILTER_INFO.name); + fprintf(params.csv_fs, "filter ID, %d\n", FILTER_INFO.filter_id); + fprintf(params.csv_fs, "number of compression filter parameters, %d\n", + FILTER_INFO.cd_nelmts); + for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { + fprintf(params.csv_fs, "compression parameter %d, %d\n", i, FILTER_INFO.cd_values[i]); + } + } fprintf(params.csv_fs, "raw time, %.3f, %s\n", rrt_s, "seconds"); value = format_human_readable(raw_rate); @@ -908,9 +910,8 @@ main(int argc, char *argv[]) fprintf(params.csv_fs, "observed time, %.3f, %s\n", oct_s, "seconds"); fclose(params.csv_fs); } - } - filter_info_free(); + filter_info_free(); error: H5E_BEGIN_TRY { diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 3bc20b65..67686990 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -55,9 +55,9 @@ #include "H5FDioc.h" #endif -#define DIM_MAX 3 -#define H5Z_FILTER_ZFP 32013 -#define H5Z_FILTER_SZ3 32024 +#define DIM_MAX 3 +#define H5Z_FILTER_ZFP 32013 +#define H5Z_FILTER_SZ3 32024 #define H5Z_FILTER_SNAPPY_CUDA 32003 herr_t ierr; @@ -66,7 +66,7 @@ typedef struct compress_info { int USE_COMPRESS; hid_t dcpl_id; hsize_t chunk_dims[DIM_MAX]; - hsize_t total_compressed_size; + hsize_t total_compressed_size; } compress_info; static unsigned int *cd_values; @@ -766,7 +766,7 @@ _run_benchmark_write(bench_params params, hid_t file_id, hid_t fapl, hid_t files unsigned long metadata_time_imp = 0, data_time_imp = 0; unsigned long meta_time1 = 0, meta_time2 = 0, meta_time3 = 0, meta_time4 = 0, meta_time5 = 0; COMPRESS_INFO.total_compressed_size = 0; - for (int ts_index = 0; ts_index < timestep_cnt; ts_index++) { + for (int ts_index = 0; ts_index < timestep_cnt; ts_index++) { meta_time1 = 0, meta_time2 = 0, meta_time3 = 0, meta_time4 = 0, meta_time5 = 0; time_step *ts = &(MEM_MONITOR->time_steps[ts_index]); MEM_MONITOR->mem_used += ts->mem_size; @@ -834,13 +834,13 @@ _run_benchmark_write(bench_params params, hid_t file_id, hid_t fapl, hid_t files for (int j = 0; j < dset_cnt; j++) { if (ts->dset_ids[j] != 0) { - // get the size of each dataset after compression before losing access - hsize_t dset_size = H5Dget_storage_size(ts->dset_ids[j]); - COMPRESS_INFO.total_compressed_size += dset_size; + // get the size of each dataset after compression before losing access + hsize_t dset_size = H5Dget_storage_size(ts->dset_ids[j]); + COMPRESS_INFO.total_compressed_size += dset_size; - // close the dataset - H5Dclose_async(ts->dset_ids[j], ts->es_meta_close); - } + // close the dataset + H5Dclose_async(ts->dset_ids[j], ts->es_meta_close); + } } H5Gclose_async(ts->grp_id, ts->es_meta_close); @@ -898,26 +898,26 @@ set_globals(const bench_params *params) if (COMPRESS_INFO.USE_COMPRESS) { // set DCPL herr_t ret; - // Construct auxiliary data for the filter - cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); - cd_values[0] = params->cd_value_1; - cd_values[1] = params->cd_value_2; - cd_values[2] = params->cd_value_3; - cd_values[3] = params->cd_value_4; - cd_values[4] = params->cd_value_5; - cd_values[5] = params->cd_value_6; - cd_values[6] = params->cd_value_7; - cd_values[7] = params->cd_value_8; - cd_values[8] = params->cd_value_9; - cd_values[9] = params->cd_value_10; - - // Create a new property list instance + // Construct auxiliary data for the filter + cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); + cd_values[0] = params->cd_value_1; + cd_values[1] = params->cd_value_2; + cd_values[2] = params->cd_value_3; + cd_values[3] = params->cd_value_4; + cd_values[4] = params->cd_value_5; + cd_values[5] = params->cd_value_6; + cd_values[6] = params->cd_value_7; + cd_values[7] = params->cd_value_8; + cd_values[8] = params->cd_value_9; + cd_values[9] = params->cd_value_10; + + // Create a new property list instance COMPRESS_INFO.dcpl_id = H5Pcreate(H5P_DATASET_CREATE); assert(COMPRESS_INFO.dcpl_id > 0); - // Clear any possible residual filter settings - ret = H5Premove_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ALL); - assert(ret >= 0); + // Clear any possible residual filter settings + ret = H5Premove_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ALL); + assert(ret >= 0); /* Set chunked layout and chunk dimensions */ ret = H5Pset_layout(COMPRESS_INFO.dcpl_id, H5D_CHUNKED); @@ -926,31 +926,34 @@ set_globals(const bench_params *params) H5Pset_chunk(COMPRESS_INFO.dcpl_id, params->num_dims, (const hsize_t *)COMPRESS_INFO.chunk_dims); assert(ret >= 0); - // Adds the specified filter to pipeline - if (params->compress_filter == N_BIT) { - ret = H5Pset_nbit(COMPRESS_INFO.dcpl_id); - } - else if (params->compress_filter == SZIP) { - ret = H5Pset_szip(COMPRESS_INFO.dcpl_id, H5_SZIP_EC_OPTION_MASK, 8); - } - else if (params->compress_filter == GZIP) { - ret = H5Pset_deflate(COMPRESS_INFO.dcpl_id, 9); - } - else if (params->compress_filter == SZ3) { - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ3, H5Z_FLAG_MANDATORY, params->cd_nelmts, cd_values); - } - else if (params->compress_filter == ZFP) { - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ZFP, H5Z_FLAG_MANDATORY, params->cd_nelmts, cd_values); - } - else if (params->compress_filter == SNAPPY_CUDA) { - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SNAPPY_CUDA, H5Z_FLAG_MANDATORY, params->cd_nelmts, cd_values); - } - else { - ret = -1; - } - free(cd_values); + // Adds the specified filter to pipeline + if (params->compress_filter == N_BIT) { + ret = H5Pset_nbit(COMPRESS_INFO.dcpl_id); + } + else if (params->compress_filter == SZIP) { + ret = H5Pset_szip(COMPRESS_INFO.dcpl_id, H5_SZIP_EC_OPTION_MASK, 8); + } + else if (params->compress_filter == GZIP) { + ret = H5Pset_deflate(COMPRESS_INFO.dcpl_id, 9); + } + else if (params->compress_filter == SZ3) { + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ3, H5Z_FLAG_MANDATORY, params->cd_nelmts, + cd_values); + } + else if (params->compress_filter == ZFP) { + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ZFP, H5Z_FLAG_MANDATORY, params->cd_nelmts, + cd_values); + } + else if (params->compress_filter == SNAPPY_CUDA) { + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SNAPPY_CUDA, H5Z_FLAG_MANDATORY, + params->cd_nelmts, cd_values); + } + else { + ret = -1; + } + free(cd_values); assert(ret >= 0); - } + } ASYNC_MODE = params->asyncMode; } @@ -1163,9 +1166,9 @@ main(int argc, char *argv[]) unsigned long t2 = get_time_usec(); // t2 - t1: metadata: creating/opening unsigned long raw_write_time, inner_metadata_time, local_data_size; - - // Run write benchmark - int stat = _run_benchmark_write(params, file_id, fapl, filespace, memspace, data, data_size, + + // Run write benchmark + int stat = _run_benchmark_write(params, file_id, fapl, filespace, memspace, data, data_size, &local_data_size, &raw_write_time, &inner_metadata_time); if (stat < 0) { @@ -1186,7 +1189,7 @@ main(int argc, char *argv[]) H5Fclose_async(file_id, 0); - // reopen file and try to get the compressed data size for calculating compression ratio + // reopen file and try to get the compressed data size for calculating compression ratio unsigned long tfclose_end = get_time_usec(); MPI_Barrier(MPI_COMM_WORLD); @@ -1210,18 +1213,18 @@ main(int argc, char *argv[]) read_time_val(params.compute_time, TIME_US) * (params.cnt_time_step - 1); printf("Total emulated compute time: %.3lf s\n", total_sleep_time_us / (1000.0 * 1000.0)); - // Report total write size + // Report total write size double total_size_bytes = NUM_RANKS * local_data_size; value = format_human_readable(total_size_bytes); printf("Total write size: %.3lf %cB\n", value.value, value.unit); - float compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; - // Report compression ratio - if (COMPRESS_INFO.USE_COMPRESS) { - value = format_human_readable(COMPRESS_INFO.total_compressed_size); - printf("Total compressed size: %.3lf %cB\n", value.value, value.unit); - printf("Compression ratio: %.3f\n", compression_ratio); - } + float compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; + // Report compression ratio + if (COMPRESS_INFO.USE_COMPRESS) { + value = format_human_readable(COMPRESS_INFO.total_compressed_size); + printf("Total compressed size: %.3lf %cB\n", value.value, value.unit); + printf("Compression ratio: %.3f\n", compression_ratio); + } float rwt_s = (float)raw_write_time / (1000.0 * 1000.0); float raw_rate = (float)total_size_bytes / rwt_s; @@ -1234,7 +1237,7 @@ main(int argc, char *argv[]) printf("H5Fcreate() time: %.3f s\n", fcreate_time_s); float flush_time_s = (float)(tflush_end - tflush_start) / (1000.0 * 1000.0); - printf("H5Fflush() time: %.3f s\n", flush_time_s); + printf("H5Fflush() time: %.3f s\n", flush_time_s); float fclose_time_s = (float)(tfclose_end - tfclose_start) / (1000.0 * 1000.0); printf("H5Fclose() time: %.3f s\n", fclose_time_s); @@ -1260,12 +1263,12 @@ main(int argc, char *argv[]) "seconds"); value = format_human_readable(total_size_bytes); fprintf(params.csv_fs, "total size, %.3lf, %cB\n", value.value, value.unit); - - if (COMPRESS_INFO.USE_COMPRESS) { - value = format_human_readable(COMPRESS_INFO.total_compressed_size); - fprintf(params.csv_fs, "total compressed size, %.3lf, %cB\n", value.value, value.unit); - fprintf(params.csv_fs, "compression ratio, %.3lf, %s\n", compression_ratio, ""); - } + + if (COMPRESS_INFO.USE_COMPRESS) { + value = format_human_readable(COMPRESS_INFO.total_compressed_size); + fprintf(params.csv_fs, "total compressed size, %.3lf, %cB\n", value.value, value.unit); + fprintf(params.csv_fs, "compression ratio, %.3lf, %s\n", compression_ratio, ""); + } fprintf(params.csv_fs, "raw time, %.3f, %s\n", rwt_s, "seconds"); value = format_human_readable(raw_rate); From 4d5385dcc37c3bfd83a857b633588604a191b50a Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Tue, 13 Aug 2024 14:17:59 -0700 Subject: [PATCH 29/61] update trigger --- .github/workflows/clang-format-fix.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/clang-format-fix.yml b/.github/workflows/clang-format-fix.yml index e1d6f701..52781162 100644 --- a/.github/workflows/clang-format-fix.yml +++ b/.github/workflows/clang-format-fix.yml @@ -1,4 +1,4 @@ -name: clang-format Fix +name: clang-format Fix Format on: workflow_dispatch: push: From 60b2794c6b8621f2b4c99017bcc86a3daaff0e56 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Thu, 15 Aug 2024 11:14:45 -0400 Subject: [PATCH 30/61] Add docker image for compression libs, CI jobs testing, and sampel json files --- .../Dockerfile | 76 +++++++++++++++++++ samples/sync-write-read-chunked-1d-GZIP.json | 57 ++++++++++++++ samples/sync-write-read-chunked-1d-N_BIT.json | 57 ++++++++++++++ samples/sync-write-read-chunked-1d-SZ3.json | 58 ++++++++++++++ samples/sync-write-read-chunked-1d-SZIP.json | 57 ++++++++++++++ samples/sync-write-read-chunked-1d-ZFP.json | 58 ++++++++++++++ samples/sync-write-read-chunked-2d-GZIP.json | 57 ++++++++++++++ samples/sync-write-read-chunked-2d-N_BIT.json | 57 ++++++++++++++ samples/sync-write-read-chunked-2d-SZ3.json | 58 ++++++++++++++ samples/sync-write-read-chunked-2d-SZIP.json | 57 ++++++++++++++ samples/sync-write-read-chunked-2d-ZFP.json | 58 ++++++++++++++ samples/sync-write-read-chunked-3d-GZIP.json | 57 ++++++++++++++ samples/sync-write-read-chunked-3d-N_BIT.json | 57 ++++++++++++++ samples/sync-write-read-chunked-3d-SZ3.json | 58 ++++++++++++++ samples/sync-write-read-chunked-3d-SZIP.json | 57 ++++++++++++++ samples/sync-write-read-chunked-3d-ZFP.json | 58 ++++++++++++++ workflows/h5bench-hdf5-1.14.0.yml | 28 ++++++- 17 files changed, 964 insertions(+), 1 deletion(-) create mode 100644 docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile create mode 100644 samples/sync-write-read-chunked-1d-GZIP.json create mode 100644 samples/sync-write-read-chunked-1d-N_BIT.json create mode 100644 samples/sync-write-read-chunked-1d-SZ3.json create mode 100644 samples/sync-write-read-chunked-1d-SZIP.json create mode 100644 samples/sync-write-read-chunked-1d-ZFP.json create mode 100644 samples/sync-write-read-chunked-2d-GZIP.json create mode 100644 samples/sync-write-read-chunked-2d-N_BIT.json create mode 100644 samples/sync-write-read-chunked-2d-SZ3.json create mode 100644 samples/sync-write-read-chunked-2d-SZIP.json create mode 100644 samples/sync-write-read-chunked-2d-ZFP.json create mode 100644 samples/sync-write-read-chunked-3d-GZIP.json create mode 100644 samples/sync-write-read-chunked-3d-N_BIT.json create mode 100644 samples/sync-write-read-chunked-3d-SZ3.json create mode 100644 samples/sync-write-read-chunked-3d-SZIP.json create mode 100644 samples/sync-write-read-chunked-3d-ZFP.json diff --git a/docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile b/docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile new file mode 100644 index 00000000..5889b0bf --- /dev/null +++ b/docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile @@ -0,0 +1,76 @@ +FROM ubuntu:focal + +LABEL Description="Ubuntu 20.04 environment with HDF5 1.14.1" + +ENV DEBIAN_FRONTEND=noninteractive +ENV HDF5_LIBTOOL=/usr/bin/libtoolize + +RUN apt-get update \ + && apt-get install -y \ + git \ + curl \ + wget \ + sudo \ + gpg \ + ca-certificates \ + m4 \ + autoconf \ + automake \ + libtool \ + pkg-config \ + cmake \ + libtool \ + zlib1g-dev \ + python3 \ + python3-pip \ + python3-dev \ + python3-setuptools \ + gcc \ + g++ \ + libopenmpi-dev \ + software-properties-common \ + && wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | sudo tee /etc/apt/trusted.gpg.d/kitware.gpg >/dev/null \ + && sudo apt-add-repository 'deb https://apt.kitware.com/ubuntu/ focal main' \ + && apt-get update \ + && apt-get install cmake -y \ + && pip3 install psutil \ + && wget https://github.com/HDFGroup/hdf5/archive/refs/tags/hdf5-1_14_1.tar.gz \ + && tar zxvf hdf5-1_14_1.tar.gz \ + && mv hdf5-hdf5-1_14_1 hdf5 \ + && cd hdf5 \ + && ./autogen.sh \ + && CC=mpicc ./configure --prefix=/opt/hdf5 --enable-parallel --enable-threadsafe --enable-unsupported \ + && make -j 8 \ + && make install \ + && cd .. \ + && wget https://github.com/szcompressor/SZ3.git \ + && cd SZ3 \ + && mkdir build installer \ + && export HDF5_HOME=/opt/hdf5 \ + && export PATH=/opt/hdf5/bin:$PATH \ + && cd build \ + && cmake -DCMAKE_INSTALL_PREFIX=/opt/SZ3/installer -DBUILD_H5Z_FILTER=ON .. \ + && make \ + && make install \ + && cd ../.. \ + && wget https://github.com/LLNL/zfp.git \ + && cd zfp \ + && mkdir build installer \ + && cd build \ + && cmake -DCMAKE_INSTALL_PREFIX=/opt/zfp/installer -DZFP_BIT_STREAM_WORD_SIZE=8 .. \ + && make \ + && make install \ + && cd ../.. \ + && wget https://github.com/LLNL/H5Z-ZFP.git \ + && cd H5Z-ZFP \ + && mkdir build installer \ + && cd build \ + && export HDF5_DIR=/opt/hdf5 \ + && export ZFP_DIR=/opt/zfp/installer/lib64/cmake/zfp \ + && cmake -DCMAKE_INSTALL_PREFIX=/opt/H5Z-ZFP/installer .. \ + && make \ + && make install \ + && cd ../.. + && rm -rf /var/lib/apt/lists/* \ + && apt-get clean \ + && apt-get autoclean diff --git a/samples/sync-write-read-chunked-1d-GZIP.json b/samples/sync-write-read-chunked-1d-GZIP.json new file mode 100644 index 00000000..246ded19 --- /dev/null +++ b/samples/sync-write-read-chunked-1d-GZIP.json @@ -0,0 +1,57 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "16777216", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "GZIP", + "CHUNK_DIM_1": "16777216", + "CHUNK_DIM_2": "1", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "16777216", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-1d-N_BIT.json b/samples/sync-write-read-chunked-1d-N_BIT.json new file mode 100644 index 00000000..6ca9f0af --- /dev/null +++ b/samples/sync-write-read-chunked-1d-N_BIT.json @@ -0,0 +1,57 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "16777216", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "N_BIT", + "CHUNK_DIM_1": "16777216", + "CHUNK_DIM_2": "1", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "16777216", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-1d-SZ3.json b/samples/sync-write-read-chunked-1d-SZ3.json new file mode 100644 index 00000000..afdc3829 --- /dev/null +++ b/samples/sync-write-read-chunked-1d-SZ3.json @@ -0,0 +1,58 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + "path": "opt/SZ3/installer/lib64" + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "16777216", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZ3", + "CHUNK_DIM_1": "16777216", + "CHUNK_DIM_2": "1", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "16777216", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-1d-SZIP.json b/samples/sync-write-read-chunked-1d-SZIP.json new file mode 100644 index 00000000..a487fc2a --- /dev/null +++ b/samples/sync-write-read-chunked-1d-SZIP.json @@ -0,0 +1,57 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "16777216", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZIP", + "CHUNK_DIM_1": "16777216", + "CHUNK_DIM_2": "1", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "16777216", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-1d-ZFP.json b/samples/sync-write-read-chunked-1d-ZFP.json new file mode 100644 index 00000000..666378e8 --- /dev/null +++ b/samples/sync-write-read-chunked-1d-ZFP.json @@ -0,0 +1,58 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + "path": "opt/H5Z-ZFP/installer/plugin" + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "16777216", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "ZFP", + "CHUNK_DIM_1": "16777216", + "CHUNK_DIM_2": "1", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "16777216", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-2d-GZIP.json b/samples/sync-write-read-chunked-2d-GZIP.json new file mode 100644 index 00000000..be8e432d --- /dev/null +++ b/samples/sync-write-read-chunked-2d-GZIP.json @@ -0,0 +1,57 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "GZIP", + "CHUNK_DIM_1": "1024", + "CHUNK_DIM_2": "1024", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-2d-N_BIT.json b/samples/sync-write-read-chunked-2d-N_BIT.json new file mode 100644 index 00000000..11e74214 --- /dev/null +++ b/samples/sync-write-read-chunked-2d-N_BIT.json @@ -0,0 +1,57 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "N_BIT", + "CHUNK_DIM_1": "1024", + "CHUNK_DIM_2": "1024", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-2d-SZ3.json b/samples/sync-write-read-chunked-2d-SZ3.json new file mode 100644 index 00000000..19a290ca --- /dev/null +++ b/samples/sync-write-read-chunked-2d-SZ3.json @@ -0,0 +1,58 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + "path": "opt/SZ3/installer/lib64" + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZ3", + "CHUNK_DIM_1": "1024", + "CHUNK_DIM_2": "1024", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-2d-SZIP.json b/samples/sync-write-read-chunked-2d-SZIP.json new file mode 100644 index 00000000..264e87e3 --- /dev/null +++ b/samples/sync-write-read-chunked-2d-SZIP.json @@ -0,0 +1,57 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZIP", + "CHUNK_DIM_1": "1024", + "CHUNK_DIM_2": "1024", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-2d-ZFP.json b/samples/sync-write-read-chunked-2d-ZFP.json new file mode 100644 index 00000000..a072c1cb --- /dev/null +++ b/samples/sync-write-read-chunked-2d-ZFP.json @@ -0,0 +1,58 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + "path": "opt/H5Z-ZFP/installer/plugin" + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "ZFP", + "CHUNK_DIM_1": "1024", + "CHUNK_DIM_2": "1024", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-3d-GZIP.json b/samples/sync-write-read-chunked-3d-GZIP.json new file mode 100644 index 00000000..4abb2fd3 --- /dev/null +++ b/samples/sync-write-read-chunked-3d-GZIP.json @@ -0,0 +1,57 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "GZIP", + "CHUNK_DIM_1": "64", + "CHUNK_DIM_2": "64", + "CHUNK_DIM_3": "64" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-3d-N_BIT.json b/samples/sync-write-read-chunked-3d-N_BIT.json new file mode 100644 index 00000000..47e95248 --- /dev/null +++ b/samples/sync-write-read-chunked-3d-N_BIT.json @@ -0,0 +1,57 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "N_BIT", + "CHUNK_DIM_1": "64", + "CHUNK_DIM_2": "64", + "CHUNK_DIM_3": "64" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-3d-SZ3.json b/samples/sync-write-read-chunked-3d-SZ3.json new file mode 100644 index 00000000..58c8e966 --- /dev/null +++ b/samples/sync-write-read-chunked-3d-SZ3.json @@ -0,0 +1,58 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + "path": "opt/SZ3/installer/lib64" + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZ3", + "CHUNK_DIM_1": "64", + "CHUNK_DIM_2": "64", + "CHUNK_DIM_3": "64" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-3d-SZIP.json b/samples/sync-write-read-chunked-3d-SZIP.json new file mode 100644 index 00000000..f16915f8 --- /dev/null +++ b/samples/sync-write-read-chunked-3d-SZIP.json @@ -0,0 +1,57 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZIP", + "CHUNK_DIM_1": "64", + "CHUNK_DIM_2": "64", + "CHUNK_DIM_3": "64" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/samples/sync-write-read-chunked-3d-ZFP.json b/samples/sync-write-read-chunked-3d-ZFP.json new file mode 100644 index 00000000..2e30f556 --- /dev/null +++ b/samples/sync-write-read-chunked-3d-ZFP.json @@ -0,0 +1,58 @@ +{ + "mpi": { + "command": "mpirun", + "ranks": "4", + "configuration": "--allow-run-as-root --oversubscribe" + }, + "vol": { + "path": "opt/H5Z-ZFP/installer/plugin" + }, + "file-system": { + }, + "directory": "storage", + "benchmarks": [ + { + "benchmark": "write", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC", + "COMPRESS": "YES", + "COMPRESS_FILTER": "ZFP", + "CHUNK_DIM_1": "64", + "CHUNK_DIM_2": "64", + "CHUNK_DIM_3": "64" + } + }, + { + "benchmark": "read", + "file": "test.h5" + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } + ] +} diff --git a/workflows/h5bench-hdf5-1.14.0.yml b/workflows/h5bench-hdf5-1.14.0.yml index 4d26a71c..b41a7387 100644 --- a/workflows/h5bench-hdf5-1.14.0.yml +++ b/workflows/h5bench-hdf5-1.14.0.yml @@ -9,7 +9,7 @@ jobs: h5bench: runs-on: ubuntu-20.04 container: - image: hpcio/hdf5-1.14.0 + image: hpcio/hdf5-1.14.1-compress timeout-minutes: 60 steps: @@ -126,6 +126,32 @@ jobs: cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-contig-1d-small.json + - name: Test h5bench SYNC write/read N_BIT filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-N_BIT.json + + - name: Test h5bench SYNC write/read SZIP filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-SZIP.json + + - name: Test h5bench SYNC write/read GZIP filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-GZIP.json + + - name: Test h5bench SYNC write/read SZ3 filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-SZ3.json + + - name: Test h5bench SYNC write/read ZFP filter + run: | + export LD_LIBRARY_PATH=/opt/zfp/installer/lib64:$LD_LIBRARY_PATH + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-ZFP.json + - name: Test h5bench SYNC write 1D contiguous (memory) strided (file) run: | cd build-sync From 3ae9dd0240781f4c9e01a3ccc30510ac64e8359a Mon Sep 17 00:00:00 2001 From: skyFzz Date: Thu, 15 Aug 2024 12:09:26 -0400 Subject: [PATCH 31/61] Update Dockerfile. Create a new yml just for compression. --- .../Dockerfile | 3 + workflows/h5bench-hdf5-1.14.0.yml | 28 +--- workflows/h5bench-hdf5-1.14.1-compress.yml | 137 ++++++++++++++++++ 3 files changed, 141 insertions(+), 27 deletions(-) create mode 100644 workflows/h5bench-hdf5-1.14.1-compress.yml diff --git a/docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile b/docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile index 5889b0bf..9de3b0a1 100644 --- a/docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile +++ b/docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile @@ -43,6 +43,9 @@ RUN apt-get update \ && make -j 8 \ && make install \ && cd .. \ + && export PATH=/opt/hdf5/bin:$PATH \ + && export LD_LIBRARY_PATH=/opt/hdf5/lib:$LD_LIBRARY_PATH \ + && export HDF5_HOME=/opt/hdf5 \ && wget https://github.com/szcompressor/SZ3.git \ && cd SZ3 \ && mkdir build installer \ diff --git a/workflows/h5bench-hdf5-1.14.0.yml b/workflows/h5bench-hdf5-1.14.0.yml index b41a7387..4d26a71c 100644 --- a/workflows/h5bench-hdf5-1.14.0.yml +++ b/workflows/h5bench-hdf5-1.14.0.yml @@ -9,7 +9,7 @@ jobs: h5bench: runs-on: ubuntu-20.04 container: - image: hpcio/hdf5-1.14.1-compress + image: hpcio/hdf5-1.14.0 timeout-minutes: 60 steps: @@ -126,32 +126,6 @@ jobs: cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-contig-1d-small.json - - name: Test h5bench SYNC write/read N_BIT filter - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-N_BIT.json - - - name: Test h5bench SYNC write/read SZIP filter - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-SZIP.json - - - name: Test h5bench SYNC write/read GZIP filter - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-GZIP.json - - - name: Test h5bench SYNC write/read SZ3 filter - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-SZ3.json - - - name: Test h5bench SYNC write/read ZFP filter - run: | - export LD_LIBRARY_PATH=/opt/zfp/installer/lib64:$LD_LIBRARY_PATH - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-ZFP.json - - name: Test h5bench SYNC write 1D contiguous (memory) strided (file) run: | cd build-sync diff --git a/workflows/h5bench-hdf5-1.14.1-compress.yml b/workflows/h5bench-hdf5-1.14.1-compress.yml new file mode 100644 index 00000000..ebfdb9b1 --- /dev/null +++ b/workflows/h5bench-hdf5-1.14.1-compress.yml @@ -0,0 +1,137 @@ +name: h5bench (HDF5 1.14.0) + +on: + pull_request: + + workflow_dispatch: + +jobs: + h5bench: + runs-on: ubuntu-20.04 + container: + image: hpcio/hdf5-1.14.1-compress + timeout-minutes: 60 + + steps: + - uses: actions/checkout@v2 + with: + submodules: true + + - name: Build Argobots + run: | + current="$PWD" + + export ABT_DIR=$current/vol-async/argobots + + cd $ABT_DIR + + ./autogen.sh + ./configure --prefix=$ABT_DIR/install + + make -j 8 + make install + + - name: Build h5bench SYNC + run: | + current="$PWD" + + export HDF5_HOME=/opt/hdf5 + + mkdir build-sync + cd build-sync + + cmake .. \ + -DCMAKE_C_COMPILER=$HDF5_HOME/bin/h5pcc \ + -DH5BENCH_ALL=ON + make + + - name: Test h5bench SYNC write/read + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-contig-1d-small.json + + - name: Test h5bench SYNC write/read 1D N_BIT filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-N_BIT.json + + - name: Test h5bench SYNC write/read 1D SZIP filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-SZIP.json + + - name: Test h5bench SYNC write/read 1D GZIP filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-GZIP.json + + - name: Test h5bench SYNC write/read 1D SZ3 filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-SZ3.json + + - name: Test h5bench SYNC write/read 1D ZFP filter + run: | + export LD_LIBRARY_PATH=/opt/zfp/installer/lib64:$LD_LIBRARY_PATH + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-ZFP.json + + - name: Test h5bench SYNC write/read 2D N_BIT filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-2d-N_BIT.json + + - name: Test h5bench SYNC write/read 2D SZIP filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-2d-SZIP.json + + - name: Test h5bench SYNC write/read 2D GZIP filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-2d-GZIP.json + + - name: Test h5bench SYNC write/read 2D SZ3 filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-2d-SZ3.json + + - name: Test h5bench SYNC write/read 2D ZFP filter + run: | + export LD_LIBRARY_PATH=/opt/zfp/installer/lib64:$LD_LIBRARY_PATH + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-2d-ZFP.json + + - name: Test h5bench SYNC write/read 3D N_BIT filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-3d-N_BIT.json + + - name: Test h5bench SYNC write/read 3D SZIP filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-3d-SZIP.json + + - name: Test h5bench SYNC write/read 3D GZIP filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-3d-GZIP.json + + - name: Test h5bench SYNC write/read 3D SZ3 filter + run: | + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-3d-SZ3.json + + - name: Test h5bench SYNC write/read 3D ZFP filter + run: | + export LD_LIBRARY_PATH=/opt/zfp/installer/lib64:$LD_LIBRARY_PATH + cd build-sync + ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-3d-ZFP.json + + - name: Upload artifact + if: always() + uses: actions/upload-artifact@v2 + with: + name: test + path: build*/storage/**/std* + retention-days: 1 From 9b17ba62c8585d8ad6c268bfdb79c1d31003ab6d Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 15 Aug 2024 12:26:16 -0700 Subject: [PATCH 32/61] update name --- .../Dockerfile | 79 ------------------- .../Dockerfile | 76 ++++++++++++++++++ 2 files changed, 76 insertions(+), 79 deletions(-) delete mode 100644 docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile create mode 100644 docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile diff --git a/docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile b/docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile deleted file mode 100644 index 9de3b0a1..00000000 --- a/docker/ubuntu-20.04-hdf5-1.14.1-compress/Dockerfile +++ /dev/null @@ -1,79 +0,0 @@ -FROM ubuntu:focal - -LABEL Description="Ubuntu 20.04 environment with HDF5 1.14.1" - -ENV DEBIAN_FRONTEND=noninteractive -ENV HDF5_LIBTOOL=/usr/bin/libtoolize - -RUN apt-get update \ - && apt-get install -y \ - git \ - curl \ - wget \ - sudo \ - gpg \ - ca-certificates \ - m4 \ - autoconf \ - automake \ - libtool \ - pkg-config \ - cmake \ - libtool \ - zlib1g-dev \ - python3 \ - python3-pip \ - python3-dev \ - python3-setuptools \ - gcc \ - g++ \ - libopenmpi-dev \ - software-properties-common \ - && wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | sudo tee /etc/apt/trusted.gpg.d/kitware.gpg >/dev/null \ - && sudo apt-add-repository 'deb https://apt.kitware.com/ubuntu/ focal main' \ - && apt-get update \ - && apt-get install cmake -y \ - && pip3 install psutil \ - && wget https://github.com/HDFGroup/hdf5/archive/refs/tags/hdf5-1_14_1.tar.gz \ - && tar zxvf hdf5-1_14_1.tar.gz \ - && mv hdf5-hdf5-1_14_1 hdf5 \ - && cd hdf5 \ - && ./autogen.sh \ - && CC=mpicc ./configure --prefix=/opt/hdf5 --enable-parallel --enable-threadsafe --enable-unsupported \ - && make -j 8 \ - && make install \ - && cd .. \ - && export PATH=/opt/hdf5/bin:$PATH \ - && export LD_LIBRARY_PATH=/opt/hdf5/lib:$LD_LIBRARY_PATH \ - && export HDF5_HOME=/opt/hdf5 \ - && wget https://github.com/szcompressor/SZ3.git \ - && cd SZ3 \ - && mkdir build installer \ - && export HDF5_HOME=/opt/hdf5 \ - && export PATH=/opt/hdf5/bin:$PATH \ - && cd build \ - && cmake -DCMAKE_INSTALL_PREFIX=/opt/SZ3/installer -DBUILD_H5Z_FILTER=ON .. \ - && make \ - && make install \ - && cd ../.. \ - && wget https://github.com/LLNL/zfp.git \ - && cd zfp \ - && mkdir build installer \ - && cd build \ - && cmake -DCMAKE_INSTALL_PREFIX=/opt/zfp/installer -DZFP_BIT_STREAM_WORD_SIZE=8 .. \ - && make \ - && make install \ - && cd ../.. \ - && wget https://github.com/LLNL/H5Z-ZFP.git \ - && cd H5Z-ZFP \ - && mkdir build installer \ - && cd build \ - && export HDF5_DIR=/opt/hdf5 \ - && export ZFP_DIR=/opt/zfp/installer/lib64/cmake/zfp \ - && cmake -DCMAKE_INSTALL_PREFIX=/opt/H5Z-ZFP/installer .. \ - && make \ - && make install \ - && cd ../.. - && rm -rf /var/lib/apt/lists/* \ - && apt-get clean \ - && apt-get autoclean diff --git a/docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile b/docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile new file mode 100644 index 00000000..87f7d1e4 --- /dev/null +++ b/docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile @@ -0,0 +1,76 @@ +FROM ubuntu:focal + +LABEL Description="Ubuntu 20.04 environment with HDF5 1.14.1 (compression filters)" + +ENV DEBIAN_FRONTEND=noninteractive +ENV HDF5_LIBTOOL=/usr/bin/libtoolize + +RUN apt-get update \ + && apt-get install -y \ + git \ + curl \ + wget \ + sudo \ + gpg \ + ca-certificates \ + m4 \ + autoconf \ + automake \ + libtool \ + pkg-config \ + cmake \ + libtool \ + zlib1g-dev \ + python3 \ + python3-pip \ + python3-dev \ + python3-setuptools \ + gcc \ + g++ \ + libopenmpi-dev \ + software-properties-common +RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | sudo tee /etc/apt/trusted.gpg.d/kitware.gpg >/dev/null \ + && sudo apt-add-repository 'deb https://apt.kitware.com/ubuntu/ focal main' \ + && apt-get update \ + && apt-get install cmake -y \ + && pip3 install psutil +RUN wget https://github.com/HDFGroup/hdf5/archive/refs/tags/hdf5-1_14_1.tar.gz \ + && tar zxvf hdf5-1_14_1.tar.gz \ + && mv hdf5-hdf5-1_14_1 hdf5 \ + && cd hdf5 \ + && ./autogen.sh \ + && CC=mpicc ./configure --prefix=/opt/hdf5 --enable-parallel --enable-threadsafe --enable-shared --enable-unsupported \ + && make -j 8 \ + && make install +RUN cd ~ \ + && export PATH=/opt/hdf5/bin:$PATH \ + && export LD_LIBRARY_PATH=/opt/hdf5/lib:$LD_LIBRARY_PATH \ + && export HDF5_HOME=/opt/hdf5 \ + && git clone https://github.com/szcompressor/SZ3 \ + && cd SZ3 \ + && mkdir build \ + && cd build \ + && cmake -DCMAKE_INSTALL_PREFIX=/opt/SZ3 -DBUILD_H5Z_FILTER=ON .. \ + && make \ + && make install +RUN cd ~ \ + && git clone https://github.com/LLNL/zfp \ + && cd zfp \ + && mkdir build \ + && cd build \ + && cmake -DCMAKE_INSTALL_PREFIX=/opt/zfp -DZFP_BIT_STREAM_WORD_SIZE=8 .. \ + && make \ + && make install +RUN cd ~ \ + && export HDF5_DIR=/opt/hdf5 \ + && export ZFP_DIR=/opt/zfp/lib64/cmake/zfp \ + && git clone https://github.com/LLNL/H5Z-ZFP \ + && cd H5Z-ZFP \ + && mkdir build \ + && cd build \ + && CC=mpicc cmake -DCMAKE_INSTALL_PREFIX=/opt/H5Z-ZFP -DFORTRAN_INTERFACE=OFF -DCMAKE_PREFIX_PATH="/opt/hdf5;/opt/zfp" .. \ + && make \ + && make install +RUN rm -rf /var/lib/apt/lists/* \ + && apt-get clean \ + && apt-get autoclean From b018002436d825416442f8833573683422051ab2 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 15 Aug 2024 12:32:47 -0700 Subject: [PATCH 33/61] move file to correct location, use final image name --- .../h5bench-hdf5-1.14.1-compress.yml | 18 +- workflows/h5bench-hdf5-1.14.0.yml | 543 ------------------ 2 files changed, 2 insertions(+), 559 deletions(-) rename {workflows => .github/workflows}/h5bench-hdf5-1.14.1-compress.yml (92%) delete mode 100644 workflows/h5bench-hdf5-1.14.0.yml diff --git a/workflows/h5bench-hdf5-1.14.1-compress.yml b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml similarity index 92% rename from workflows/h5bench-hdf5-1.14.1-compress.yml rename to .github/workflows/h5bench-hdf5-1.14.1-compress.yml index ebfdb9b1..91591602 100644 --- a/workflows/h5bench-hdf5-1.14.1-compress.yml +++ b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml @@ -1,4 +1,4 @@ -name: h5bench (HDF5 1.14.0) +name: h5bench (HDF5 1.14.0 + compression) on: pull_request: @@ -9,7 +9,7 @@ jobs: h5bench: runs-on: ubuntu-20.04 container: - image: hpcio/hdf5-1.14.1-compress + image: hpcio/hdf5-1.14.1-compression timeout-minutes: 60 steps: @@ -17,20 +17,6 @@ jobs: with: submodules: true - - name: Build Argobots - run: | - current="$PWD" - - export ABT_DIR=$current/vol-async/argobots - - cd $ABT_DIR - - ./autogen.sh - ./configure --prefix=$ABT_DIR/install - - make -j 8 - make install - - name: Build h5bench SYNC run: | current="$PWD" diff --git a/workflows/h5bench-hdf5-1.14.0.yml b/workflows/h5bench-hdf5-1.14.0.yml deleted file mode 100644 index 4d26a71c..00000000 --- a/workflows/h5bench-hdf5-1.14.0.yml +++ /dev/null @@ -1,543 +0,0 @@ -name: h5bench (HDF5 1.14.0) - -on: - pull_request: - - workflow_dispatch: - -jobs: - h5bench: - runs-on: ubuntu-20.04 - container: - image: hpcio/hdf5-1.14.0 - timeout-minutes: 60 - - steps: - - uses: actions/checkout@v2 - with: - submodules: true - - - name: Dependencies - run: | - # VOL-ASYNC - git clone --recursive https://github.com/hpc-io/vol-async.git - - - name: Build Argobots - run: | - current="$PWD" - - export ABT_DIR=$current/vol-async/argobots - - cd $ABT_DIR - - ./autogen.sh - ./configure --prefix=$ABT_DIR/install - - make -j 8 - make install - - - name: Build VOL-ASYNC - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - - cd $VOL_DIR - mkdir build - cd build - - cmake .. -DCMAKE_PREFIX_PATH=$HDF5_DIR - make - - - name: Test VOL-ASYNC - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export HDF5_HOME=$HDF5_DIR - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$current/vol-async/src - - export LD_LIBRARY_PATH=$VOL_DIR/src:$HDF5_DIR/lib:$ABT_DIR/lib:$LD_LIBRARY_PATH - export HDF5_PLUGIN_PATH="$VOL_DIR/src" - export HDF5_VOL_CONNECTOR="async under_vol=0;under_info={}" - - cd $VOL_DIR/build - - export LD_PRELOAD=$ASYNC_DIR/libh5async.so:$ABT_DIR/lib/libabt.so:$HDF5_DIR/lib/libhdf5.so - - ctest - - - name: Build h5bench SYNC - run: | - current="$PWD" - - export HDF5_HOME=/opt/hdf5 - - mkdir build-sync - cd build-sync - - cmake .. \ - -DCMAKE_C_COMPILER=$HDF5_HOME/bin/h5pcc \ - -DH5BENCH_ALL=ON - make - - - name: Build h5bench ASYNC - run: | - current="$PWD" - - export HDF5_HOME=/opt/hdf5 - export ASYNC_HOME=$current/vol-async/src - - mkdir build-async - cd build-async - - cmake .. \ - -DWITH_ASYNC_VOL:BOOL=ON \ - -DCMAKE_C_FLAGS="-I/$current/vol-async/src -L/$current/vol-async/src" \ - -DCMAKE_C_COMPILER=$HDF5_HOME/bin/h5pcc \ - -DH5BENCH_ALL=ON - make - - - name: Test h5bench ASYNC write/read - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ASYNC_DIR/libh5async.so:$ABT_DIR/lib/libabt.so:$HDF5_DIR/lib/libhdf5.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-read-contig-1d-small.json - - cat ../samples/async-write-read-contig-1d-small.json - - ./h5bench --debug --abort-on-failure ../samples/async-write-read-contig-1d-small.json - - - name: Test h5bench SYNC write/read - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-contig-1d-small.json - - - name: Test h5bench SYNC write 1D contiguous (memory) strided (file) - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-1d-contig-strided.json - - - name: Test h5bench SYNC write 1D contiguous (memory) contiguous (file) - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-1d-contig-contig.json - - - name: Test h5bench SYNC write 1D contiguous (memory) interleaved (file) - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-1d-contig-interleaved.json - - - name: Test h5bench SYNC write 1D interleaved (memory) contiguous (file) - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-1d-interleaved-contig.json - - - name: Test h5bench SYNC write 1D interleaved (memory) interleaved (file) - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-1d-interleaved-interleaved.json - - - name: Test h5bench SYNC write 2D contiguous (memory) contiguous (file) - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-2d-contig-contig.json - - - name: Test h5bench SYNC write 2D contiguous (memory) interleaved (file) - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-2d-contig-interleaved.json - - - name: Test h5bench SYNC write 2D interleaved (memory) contiguous (file) - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-2d-interleaved-contig.json - - - name: Test h5bench SYNC write 2D interleaved (memory) interleaved (file) - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-2d-interleaved-interleaved.json - - - name: Test h5bench SYNC write 3D contiguous (memory) contiguous (file) - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-3d-contig-contig.json - - - name: Test h5bench SYNC read 1D contiguous (memory) contiguous (file) full - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-1d-contig-contig-read-full.json - - - name: Test h5bench SYNC read 1D contiguous (memory) contiguous (file) partial - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-1d-contig-contig-read-partial.json - - - name: Test h5bench SYNC read 1D contiguous (memory) contiguous (file) strided - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-1d-contig-contig-read-strided.json - - - name: Test h5bench SYNC read 2D contiguous (memory) contiguous (file) full - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-2d-contig-contig-read-full.json - - - name: Test h5bench SYNC read 3D contiguous (memory) contiguous (file) full - run: | - cd build-sync - ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-2d-contig-contig-read-full.json - - - name: Test h5bench SYNC write unlimited - run: | - cd build-sync - ./h5bench --debug --abort-on-failure ../samples/sync-write-unlimited.json - - - name: Test h5bench SYNC overwrite - run: | - cd build-sync - ./h5bench --debug --abort-on-failure ../samples/sync-overwrite.json - - - name: Test h5bench SYNC append - run: | - cd build-sync - ./h5bench --debug --abort-on-failure ../samples/sync-append.json - - - name: Test h5bench SYNC exerciser - run: | - cd build-sync - ./h5bench --debug --abort-on-failure ../samples/sync-exerciser.json - - - name: Test h5bench SYNC metadata - run: | - cd build-sync - ./h5bench --debug --abort-on-failure ../samples/sync-metadata.json - - - name: Test h5bench SYNC amrex - run: | - cd build-sync - ./h5bench --debug --abort-on-failure ../samples/sync-amrex.json - - - name: Test h5bench SYNC openpmd - run: | - cd build-sync - ./h5bench --debug --abort-on-failure ../samples/sync-openpmd.json - - - name: Test h5bench SYNC e3sm - run: | - export LD_LIBRARY_PATH=/opt/hdf5/lib:$LD_LIBRARY_PATH - - cd build-sync - ./h5bench --debug --abort-on-failure ../samples/sync-e3sm.json - - - name: Test h5bench ASYNC write/read - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-read-contig-1d-small.json - - cat ../samples/async-write-read-contig-1d-small.json - - ./h5bench --debug --abort-on-failure ../samples/async-write-read-contig-1d-small.json - - - name: Test h5bench ASYNC write 1D contiguous (memory) strided (file) - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-1d-contig-strided.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-1d-contig-strided.json - - - name: Test h5bench ASYNC write 1D contiguous (memory) contiguous (file) - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-1d-contig-contig.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-1d-contig-contig.json - - - name: Test h5bench ASYNC write 1D contiguous (memory) interleaved (file) - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-1d-contig-interleaved.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-1d-contig-interleaved.json - - - name: Test h5bench ASYNC write 1D interleaved (memory) contiguous (file) - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-1d-interleaved-contig.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-1d-interleaved-contig.json - - - name: Test h5bench ASYNC write 1D interleaved (memory) interleaved (file) - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-1d-interleaved-interleaved.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-1d-interleaved-interleaved.json - - - name: Test h5bench ASYNC write 2D contiguous (memory) contiguous (file) - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-2d-contig-contig.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-2d-contig-contig.json - - - name: Test h5bench ASYNC write 2D contiguous (memory) interleaved (file) - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-2d-contig-interleaved.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-2d-contig-interleaved.json - - - name: Test h5bench ASYNC write 2D interleaved (memory) contiguous (file) - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-2d-interleaved-contig.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-2d-interleaved-contig.json - - - name: Test h5bench ASYNC write 2D interleaved (memory) interleaved (file) - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-2d-interleaved-interleaved.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-2d-interleaved-interleaved.json - - - name: Test h5bench ASYNC write 3D contiguous (memory) contiguous (file) - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-3d-contig-contig.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-3d-contig-contig.json - - - name: Test h5bench ASYNC read 1D contiguous (memory) contiguous (file) full - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-1d-contig-contig-read-full.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-1d-contig-contig-read-full.json - - - name: Test h5bench ASYNC read 1D contiguous (memory) contiguous (file) partial - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-1d-contig-contig-read-partial.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-1d-contig-contig-read-partial.json - - - name: Test h5bench ASYNC read 1D contiguous (memory) contiguous (file) strided - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-1d-contig-contig-read-strided.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-1d-contig-contig-read-strided.json - - - name: Test h5bench ASYNC read 2D contiguous (memory) contiguous (file) full - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-2d-contig-contig-read-full.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-2d-contig-contig-read-full.json - - - name: Test h5bench ASYNC read 3D contiguous (memory) contiguous (file) full - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-write-2d-contig-contig-read-full.json - - ./h5bench --debug --abort-on-failure --validate-mode ../samples/async-write-2d-contig-contig-read-full.json - - - name: Test h5bench ASYNC amrex - run: | - current="$PWD" - - export HDF5_DIR=/opt/hdf5 - export ABT_DIR=$current/vol-async/argobots/install - export VOL_DIR=$current/vol-async - export ASYNC_DIR=$VOL_DIR/src - - export LD_PRELOAD=$ABT_DIR/lib/libabt.so - - cd build-async - - python3 ../samples/update.py ../samples/async-amrex.json - - ./h5bench --debug --abort-on-failure ../samples/async-amrex.json - - - name: Upload artifact - if: always() - uses: actions/upload-artifact@v2 - with: - name: test - path: build*/storage/**/std* - retention-days: 1 From 48508da75ea5cd6aa64d9ec62dbcb23fa0e10ecf Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 15 Aug 2024 13:00:59 -0700 Subject: [PATCH 34/61] fix typo in new samples --- samples/sync-write-read-chunked-1d-GZIP.json | 2 +- samples/sync-write-read-chunked-1d-N_BIT.json | 2 +- samples/sync-write-read-chunked-1d-SZ3.json | 2 +- samples/sync-write-read-chunked-1d-SZIP.json | 2 +- samples/sync-write-read-chunked-1d-ZFP.json | 2 +- samples/sync-write-read-chunked-2d-GZIP.json | 2 +- samples/sync-write-read-chunked-2d-N_BIT.json | 2 +- samples/sync-write-read-chunked-2d-SZ3.json | 2 +- samples/sync-write-read-chunked-2d-SZIP.json | 2 +- samples/sync-write-read-chunked-2d-ZFP.json | 2 +- samples/sync-write-read-chunked-3d-GZIP.json | 2 +- samples/sync-write-read-chunked-3d-N_BIT.json | 2 +- samples/sync-write-read-chunked-3d-SZ3.json | 2 +- samples/sync-write-read-chunked-3d-SZIP.json | 2 +- samples/sync-write-read-chunked-3d-ZFP.json | 2 +- 15 files changed, 15 insertions(+), 15 deletions(-) diff --git a/samples/sync-write-read-chunked-1d-GZIP.json b/samples/sync-write-read-chunked-1d-GZIP.json index 246ded19..94a3b2b8 100644 --- a/samples/sync-write-read-chunked-1d-GZIP.json +++ b/samples/sync-write-read-chunked-1d-GZIP.json @@ -36,7 +36,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-1d-N_BIT.json b/samples/sync-write-read-chunked-1d-N_BIT.json index 6ca9f0af..68c5e994 100644 --- a/samples/sync-write-read-chunked-1d-N_BIT.json +++ b/samples/sync-write-read-chunked-1d-N_BIT.json @@ -36,7 +36,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-1d-SZ3.json b/samples/sync-write-read-chunked-1d-SZ3.json index afdc3829..383400a8 100644 --- a/samples/sync-write-read-chunked-1d-SZ3.json +++ b/samples/sync-write-read-chunked-1d-SZ3.json @@ -37,7 +37,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-1d-SZIP.json b/samples/sync-write-read-chunked-1d-SZIP.json index a487fc2a..c0b32f37 100644 --- a/samples/sync-write-read-chunked-1d-SZIP.json +++ b/samples/sync-write-read-chunked-1d-SZIP.json @@ -36,7 +36,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-1d-ZFP.json b/samples/sync-write-read-chunked-1d-ZFP.json index 666378e8..92d95c5d 100644 --- a/samples/sync-write-read-chunked-1d-ZFP.json +++ b/samples/sync-write-read-chunked-1d-ZFP.json @@ -37,7 +37,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-2d-GZIP.json b/samples/sync-write-read-chunked-2d-GZIP.json index be8e432d..64313aa6 100644 --- a/samples/sync-write-read-chunked-2d-GZIP.json +++ b/samples/sync-write-read-chunked-2d-GZIP.json @@ -36,7 +36,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-2d-N_BIT.json b/samples/sync-write-read-chunked-2d-N_BIT.json index 11e74214..632d917c 100644 --- a/samples/sync-write-read-chunked-2d-N_BIT.json +++ b/samples/sync-write-read-chunked-2d-N_BIT.json @@ -36,7 +36,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-2d-SZ3.json b/samples/sync-write-read-chunked-2d-SZ3.json index 19a290ca..f8fdec63 100644 --- a/samples/sync-write-read-chunked-2d-SZ3.json +++ b/samples/sync-write-read-chunked-2d-SZ3.json @@ -37,7 +37,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-2d-SZIP.json b/samples/sync-write-read-chunked-2d-SZIP.json index 264e87e3..5d0ac6d2 100644 --- a/samples/sync-write-read-chunked-2d-SZIP.json +++ b/samples/sync-write-read-chunked-2d-SZIP.json @@ -36,7 +36,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-2d-ZFP.json b/samples/sync-write-read-chunked-2d-ZFP.json index a072c1cb..78e53fff 100644 --- a/samples/sync-write-read-chunked-2d-ZFP.json +++ b/samples/sync-write-read-chunked-2d-ZFP.json @@ -37,7 +37,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-3d-GZIP.json b/samples/sync-write-read-chunked-3d-GZIP.json index 4abb2fd3..2a50a1fa 100644 --- a/samples/sync-write-read-chunked-3d-GZIP.json +++ b/samples/sync-write-read-chunked-3d-GZIP.json @@ -36,7 +36,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-3d-N_BIT.json b/samples/sync-write-read-chunked-3d-N_BIT.json index 47e95248..9b3c4ba5 100644 --- a/samples/sync-write-read-chunked-3d-N_BIT.json +++ b/samples/sync-write-read-chunked-3d-N_BIT.json @@ -36,7 +36,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-3d-SZ3.json b/samples/sync-write-read-chunked-3d-SZ3.json index 58c8e966..9d844067 100644 --- a/samples/sync-write-read-chunked-3d-SZ3.json +++ b/samples/sync-write-read-chunked-3d-SZ3.json @@ -37,7 +37,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-3d-SZIP.json b/samples/sync-write-read-chunked-3d-SZIP.json index f16915f8..252f03db 100644 --- a/samples/sync-write-read-chunked-3d-SZIP.json +++ b/samples/sync-write-read-chunked-3d-SZIP.json @@ -36,7 +36,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", diff --git a/samples/sync-write-read-chunked-3d-ZFP.json b/samples/sync-write-read-chunked-3d-ZFP.json index 2e30f556..866b6e05 100644 --- a/samples/sync-write-read-chunked-3d-ZFP.json +++ b/samples/sync-write-read-chunked-3d-ZFP.json @@ -37,7 +37,7 @@ }, { "benchmark": "read", - "file": "test.h5" + "file": "test.h5", "configuration": { "MEM_PATTERN": "CONTIG", "FILE_PATTERN": "CONTIG", From c0453cfda393abac3f26f067a2fbc827b3373ca1 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 15 Aug 2024 13:01:16 -0700 Subject: [PATCH 35/61] update name --- .github/workflows/h5bench-hdf5-1.14.1-compress.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml index 91591602..00dc2316 100644 --- a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml +++ b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml @@ -1,4 +1,4 @@ -name: h5bench (HDF5 1.14.0 + compression) +name: h5bench (HDF5 1.14.1 + compression) on: pull_request: From 451b6748729d047ea5b72155d23660f24595a4f9 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 15 Aug 2024 13:23:35 -0700 Subject: [PATCH 36/61] fix path and compile only baseline kernels --- .github/workflows/h5bench-hdf5-1.14.1-compress.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml index 00dc2316..c891178d 100644 --- a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml +++ b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml @@ -27,8 +27,7 @@ jobs: cd build-sync cmake .. \ - -DCMAKE_C_COMPILER=$HDF5_HOME/bin/h5pcc \ - -DH5BENCH_ALL=ON + -DCMAKE_C_COMPILER=$HDF5_HOME/bin/h5pcc make - name: Test h5bench SYNC write/read @@ -58,7 +57,7 @@ jobs: - name: Test h5bench SYNC write/read 1D ZFP filter run: | - export LD_LIBRARY_PATH=/opt/zfp/installer/lib64:$LD_LIBRARY_PATH + export LD_LIBRARY_PATH=/opt/zfp/lib64:$LD_LIBRARY_PATH cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-ZFP.json @@ -84,7 +83,7 @@ jobs: - name: Test h5bench SYNC write/read 2D ZFP filter run: | - export LD_LIBRARY_PATH=/opt/zfp/installer/lib64:$LD_LIBRARY_PATH + export LD_LIBRARY_PATH=/opt/zfp/lib64:$LD_LIBRARY_PATH cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-2d-ZFP.json @@ -110,7 +109,7 @@ jobs: - name: Test h5bench SYNC write/read 3D ZFP filter run: | - export LD_LIBRARY_PATH=/opt/zfp/installer/lib64:$LD_LIBRARY_PATH + export LD_LIBRARY_PATH=/opt/zfp/lib64:$LD_LIBRARY_PATH cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-3d-ZFP.json From f152731c325d0340971ae8811fc5c89b1ab025b9 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 15 Aug 2024 13:29:53 -0700 Subject: [PATCH 37/61] update path according to docker installation --- samples/sync-write-read-chunked-1d-SZ3.json | 2 +- samples/sync-write-read-chunked-1d-ZFP.json | 2 +- samples/sync-write-read-chunked-2d-SZ3.json | 2 +- samples/sync-write-read-chunked-2d-ZFP.json | 2 +- samples/sync-write-read-chunked-3d-SZ3.json | 2 +- samples/sync-write-read-chunked-3d-ZFP.json | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/samples/sync-write-read-chunked-1d-SZ3.json b/samples/sync-write-read-chunked-1d-SZ3.json index 383400a8..93815e46 100644 --- a/samples/sync-write-read-chunked-1d-SZ3.json +++ b/samples/sync-write-read-chunked-1d-SZ3.json @@ -5,7 +5,7 @@ "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "opt/SZ3/installer/lib64" + "path": "/opt/SZ3/lib64" }, "file-system": { }, diff --git a/samples/sync-write-read-chunked-1d-ZFP.json b/samples/sync-write-read-chunked-1d-ZFP.json index 92d95c5d..f5fd27d8 100644 --- a/samples/sync-write-read-chunked-1d-ZFP.json +++ b/samples/sync-write-read-chunked-1d-ZFP.json @@ -5,7 +5,7 @@ "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "opt/H5Z-ZFP/installer/plugin" + "path": "/opt/H5Z-ZFP/plugin" }, "file-system": { }, diff --git a/samples/sync-write-read-chunked-2d-SZ3.json b/samples/sync-write-read-chunked-2d-SZ3.json index f8fdec63..362404a9 100644 --- a/samples/sync-write-read-chunked-2d-SZ3.json +++ b/samples/sync-write-read-chunked-2d-SZ3.json @@ -5,7 +5,7 @@ "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "opt/SZ3/installer/lib64" + "path": "/opt/SZ3/lib64" }, "file-system": { }, diff --git a/samples/sync-write-read-chunked-2d-ZFP.json b/samples/sync-write-read-chunked-2d-ZFP.json index 78e53fff..da5d0586 100644 --- a/samples/sync-write-read-chunked-2d-ZFP.json +++ b/samples/sync-write-read-chunked-2d-ZFP.json @@ -5,7 +5,7 @@ "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "opt/H5Z-ZFP/installer/plugin" + "path": "/opt/H5Z-ZFP/plugin" }, "file-system": { }, diff --git a/samples/sync-write-read-chunked-3d-SZ3.json b/samples/sync-write-read-chunked-3d-SZ3.json index 9d844067..850a7c9e 100644 --- a/samples/sync-write-read-chunked-3d-SZ3.json +++ b/samples/sync-write-read-chunked-3d-SZ3.json @@ -5,7 +5,7 @@ "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "opt/SZ3/installer/lib64" + "path": "/opt/SZ3/lib64" }, "file-system": { }, diff --git a/samples/sync-write-read-chunked-3d-ZFP.json b/samples/sync-write-read-chunked-3d-ZFP.json index 866b6e05..d78b6682 100644 --- a/samples/sync-write-read-chunked-3d-ZFP.json +++ b/samples/sync-write-read-chunked-3d-ZFP.json @@ -5,7 +5,7 @@ "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "opt/H5Z-ZFP/installer/plugin" + "path": "/opt/H5Z-ZFP/plugin" }, "file-system": { }, From b2a80c4e7068d81ec802283848afead6dd4f7f2c Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 15 Aug 2024 14:13:13 -0700 Subject: [PATCH 38/61] temporarily continue on error --- .github/workflows/h5bench-hdf5-1.14.1-compress.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml index c891178d..0dced7b8 100644 --- a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml +++ b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml @@ -11,6 +11,7 @@ jobs: container: image: hpcio/hdf5-1.14.1-compression timeout-minutes: 60 + continue-on-error: true steps: - uses: actions/checkout@v2 From 7c9bc873ce57652e44248de9a24afaaa3435f19b Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 15 Aug 2024 14:25:28 -0700 Subject: [PATCH 39/61] temporarily continue on error --- .github/workflows/h5bench-hdf5-1.14.1-compress.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml index 0dced7b8..cdb9f244 100644 --- a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml +++ b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml @@ -11,7 +11,6 @@ jobs: container: image: hpcio/hdf5-1.14.1-compression timeout-minutes: 60 - continue-on-error: true steps: - uses: actions/checkout@v2 @@ -42,6 +41,7 @@ jobs: ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-N_BIT.json - name: Test h5bench SYNC write/read 1D SZIP filter + continue-on-error: true run: | cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-SZIP.json From da2c912ce5adecd46292835bc248cb4645c51c35 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 15 Aug 2024 14:44:49 -0700 Subject: [PATCH 40/61] correct path for CI --- samples/sync-write-read-chunked-1d-SZ3.json | 2 +- samples/sync-write-read-chunked-2d-SZ3.json | 2 +- samples/sync-write-read-chunked-3d-SZ3.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/samples/sync-write-read-chunked-1d-SZ3.json b/samples/sync-write-read-chunked-1d-SZ3.json index 93815e46..8ec25055 100644 --- a/samples/sync-write-read-chunked-1d-SZ3.json +++ b/samples/sync-write-read-chunked-1d-SZ3.json @@ -5,7 +5,7 @@ "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "/opt/SZ3/lib64" + "path": "/opt/SZ3/lib" }, "file-system": { }, diff --git a/samples/sync-write-read-chunked-2d-SZ3.json b/samples/sync-write-read-chunked-2d-SZ3.json index 362404a9..84b969d3 100644 --- a/samples/sync-write-read-chunked-2d-SZ3.json +++ b/samples/sync-write-read-chunked-2d-SZ3.json @@ -5,7 +5,7 @@ "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "/opt/SZ3/lib64" + "path": "/opt/SZ3/lib" }, "file-system": { }, diff --git a/samples/sync-write-read-chunked-3d-SZ3.json b/samples/sync-write-read-chunked-3d-SZ3.json index 850a7c9e..e08772fa 100644 --- a/samples/sync-write-read-chunked-3d-SZ3.json +++ b/samples/sync-write-read-chunked-3d-SZ3.json @@ -5,7 +5,7 @@ "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "/opt/SZ3/lib64" + "path": "/opt/SZ3/lib" }, "file-system": { }, From 0244e3f52e0204bbbd117c5001b7e525c50316da Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 22 Aug 2024 13:35:27 -0700 Subject: [PATCH 41/61] reduce test size and include path --- .../h5bench-hdf5-1.14.1-compress.yml | 6 +- samples/sync-write-read-chunked-1d-GZIP.json | 8 +-- samples/sync-write-read-chunked-1d-N_BIT.json | 58 +++++++++--------- samples/sync-write-read-chunked-1d-SZ3.json | 60 +++++++++---------- samples/sync-write-read-chunked-1d-SZIP.json | 58 +++++++++--------- samples/sync-write-read-chunked-1d-ZFP.json | 60 +++++++++---------- samples/sync-write-read-chunked-2d-GZIP.json | 54 ++++++++--------- samples/sync-write-read-chunked-2d-N_BIT.json | 54 ++++++++--------- samples/sync-write-read-chunked-2d-SZ3.json | 56 ++++++++--------- samples/sync-write-read-chunked-2d-SZIP.json | 54 ++++++++--------- samples/sync-write-read-chunked-2d-ZFP.json | 56 ++++++++--------- samples/sync-write-read-chunked-3d-GZIP.json | 54 ++++++++--------- samples/sync-write-read-chunked-3d-N_BIT.json | 54 ++++++++--------- samples/sync-write-read-chunked-3d-SZ3.json | 54 ++++++++--------- samples/sync-write-read-chunked-3d-SZIP.json | 52 ++++++++-------- samples/sync-write-read-chunked-3d-ZFP.json | 54 ++++++++--------- 16 files changed, 397 insertions(+), 395 deletions(-) diff --git a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml index cdb9f244..dd5d6037 100644 --- a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml +++ b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml @@ -41,7 +41,6 @@ jobs: ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-N_BIT.json - name: Test h5bench SYNC write/read 1D SZIP filter - continue-on-error: true run: | cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-SZIP.json @@ -53,12 +52,13 @@ jobs: - name: Test h5bench SYNC write/read 1D SZ3 filter run: | + export LD_LIBRARY_PATH=/opt/SZ3/lib:$LD_LIBRARY_PATH cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-SZ3.json - name: Test h5bench SYNC write/read 1D ZFP filter run: | - export LD_LIBRARY_PATH=/opt/zfp/lib64:$LD_LIBRARY_PATH + export LD_LIBRARY_PATH=/opt/zfp/lib:$LD_LIBRARY_PATH cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-1d-ZFP.json @@ -79,6 +79,7 @@ jobs: - name: Test h5bench SYNC write/read 2D SZ3 filter run: | + export LD_LIBRARY_PATH=/opt/SZ3/lib:$LD_LIBRARY_PATH cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-2d-SZ3.json @@ -105,6 +106,7 @@ jobs: - name: Test h5bench SYNC write/read 3D SZ3 filter run: | + export LD_LIBRARY_PATH=/opt/SZ3/lib:$LD_LIBRARY_PATH cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-3d-SZ3.json diff --git a/samples/sync-write-read-chunked-1d-GZIP.json b/samples/sync-write-read-chunked-1d-GZIP.json index 94a3b2b8..fc5942f1 100644 --- a/samples/sync-write-read-chunked-1d-GZIP.json +++ b/samples/sync-write-read-chunked-1d-GZIP.json @@ -1,7 +1,7 @@ { "mpi": { "command": "mpirun", - "ranks": "4", + "ranks": "2", "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { @@ -22,14 +22,14 @@ "COLLECTIVE_METADATA": "YES", "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", "NUM_DIMS": "1", - "DIM_1": "16777216", + "DIM_1": "4194304", "DIM_2": "1", "DIM_3": "1", "CSV_FILE": "output.csv", "MODE": "SYNC", "COMPRESS": "YES", "COMPRESS_FILTER": "GZIP", - "CHUNK_DIM_1": "16777216", + "CHUNK_DIM_1": "4194304", "CHUNK_DIM_2": "1", "CHUNK_DIM_3": "1" } @@ -46,7 +46,7 @@ "COLLECTIVE_METADATA": "YES", "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", "NUM_DIMS": "1", - "DIM_1": "16777216", + "DIM_1": "4194304", "DIM_2": "1", "DIM_3": "1", "CSV_FILE": "output.csv", diff --git a/samples/sync-write-read-chunked-1d-N_BIT.json b/samples/sync-write-read-chunked-1d-N_BIT.json index 68c5e994..0b18e5ac 100644 --- a/samples/sync-write-read-chunked-1d-N_BIT.json +++ b/samples/sync-write-read-chunked-1d-N_BIT.json @@ -1,8 +1,8 @@ { "mpi": { "command": "mpirun", - "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "ranks": "2", + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { }, @@ -22,36 +22,36 @@ "COLLECTIVE_METADATA": "YES", "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", "NUM_DIMS": "1", - "DIM_1": "16777216", + "DIM_1": "4194304", "DIM_2": "1", "DIM_3": "1", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "N_BIT", - "CHUNK_DIM_1": "16777216", - "CHUNK_DIM_2": "1", - "CHUNK_DIM_3": "1" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "1", - "DIM_1": "16777216", - "DIM_2": "1", - "DIM_3": "1", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "COMPRESS": "YES", + "COMPRESS_FILTER": "N_BIT", + "CHUNK_DIM_1": "4194304", + "CHUNK_DIM_2": "1", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "4194304", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-1d-SZ3.json b/samples/sync-write-read-chunked-1d-SZ3.json index 8ec25055..68f5d196 100644 --- a/samples/sync-write-read-chunked-1d-SZ3.json +++ b/samples/sync-write-read-chunked-1d-SZ3.json @@ -1,11 +1,11 @@ { "mpi": { "command": "mpirun", - "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "ranks": "2", + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "/opt/SZ3/lib" + "path": "/opt/SZ3/lib" }, "file-system": { }, @@ -23,36 +23,36 @@ "COLLECTIVE_METADATA": "YES", "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", "NUM_DIMS": "1", - "DIM_1": "16777216", + "DIM_1": "4194304", "DIM_2": "1", "DIM_3": "1", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "SZ3", - "CHUNK_DIM_1": "16777216", - "CHUNK_DIM_2": "1", - "CHUNK_DIM_3": "1" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "1", - "DIM_1": "16777216", - "DIM_2": "1", - "DIM_3": "1", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZ3", + "CHUNK_DIM_1": "4194304", + "CHUNK_DIM_2": "1", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "4194304", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-1d-SZIP.json b/samples/sync-write-read-chunked-1d-SZIP.json index c0b32f37..f6d50752 100644 --- a/samples/sync-write-read-chunked-1d-SZIP.json +++ b/samples/sync-write-read-chunked-1d-SZIP.json @@ -1,8 +1,8 @@ { "mpi": { "command": "mpirun", - "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "ranks": "2", + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { }, @@ -22,36 +22,36 @@ "COLLECTIVE_METADATA": "YES", "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", "NUM_DIMS": "1", - "DIM_1": "16777216", + "DIM_1": "4194304", "DIM_2": "1", "DIM_3": "1", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "SZIP", - "CHUNK_DIM_1": "16777216", - "CHUNK_DIM_2": "1", - "CHUNK_DIM_3": "1" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "1", - "DIM_1": "16777216", - "DIM_2": "1", - "DIM_3": "1", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZIP", + "CHUNK_DIM_1": "4194304", + "CHUNK_DIM_2": "1", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "4194304", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-1d-ZFP.json b/samples/sync-write-read-chunked-1d-ZFP.json index f5fd27d8..1b39be27 100644 --- a/samples/sync-write-read-chunked-1d-ZFP.json +++ b/samples/sync-write-read-chunked-1d-ZFP.json @@ -1,11 +1,11 @@ { "mpi": { "command": "mpirun", - "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "ranks": "2", + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "/opt/H5Z-ZFP/plugin" + "path": "/opt/H5Z-ZFP/plugin" }, "file-system": { }, @@ -23,36 +23,36 @@ "COLLECTIVE_METADATA": "YES", "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", "NUM_DIMS": "1", - "DIM_1": "16777216", + "DIM_1": "4194304", "DIM_2": "1", "DIM_3": "1", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "ZFP", - "CHUNK_DIM_1": "16777216", - "CHUNK_DIM_2": "1", - "CHUNK_DIM_3": "1" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "1", - "DIM_1": "16777216", - "DIM_2": "1", - "DIM_3": "1", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "COMPRESS": "YES", + "COMPRESS_FILTER": "ZFP", + "CHUNK_DIM_1": "4194304", + "CHUNK_DIM_2": "1", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "1", + "DIM_1": "4194304", + "DIM_2": "1", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-2d-GZIP.json b/samples/sync-write-read-chunked-2d-GZIP.json index 64313aa6..8fe59d88 100644 --- a/samples/sync-write-read-chunked-2d-GZIP.json +++ b/samples/sync-write-read-chunked-2d-GZIP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { }, @@ -27,31 +27,31 @@ "DIM_3": "1", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "GZIP", - "CHUNK_DIM_1": "1024", - "CHUNK_DIM_2": "1024", - "CHUNK_DIM_3": "1" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "2", - "DIM_1": "1024", - "DIM_2": "1024", - "DIM_3": "1", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "COMPRESS": "YES", + "COMPRESS_FILTER": "GZIP", + "CHUNK_DIM_1": "1024", + "CHUNK_DIM_2": "1024", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-2d-N_BIT.json b/samples/sync-write-read-chunked-2d-N_BIT.json index 632d917c..3d8bd3a2 100644 --- a/samples/sync-write-read-chunked-2d-N_BIT.json +++ b/samples/sync-write-read-chunked-2d-N_BIT.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { }, @@ -27,31 +27,31 @@ "DIM_3": "1", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "N_BIT", - "CHUNK_DIM_1": "1024", - "CHUNK_DIM_2": "1024", - "CHUNK_DIM_3": "1" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "2", - "DIM_1": "1024", - "DIM_2": "1024", - "DIM_3": "1", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "COMPRESS": "YES", + "COMPRESS_FILTER": "N_BIT", + "CHUNK_DIM_1": "1024", + "CHUNK_DIM_2": "1024", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-2d-SZ3.json b/samples/sync-write-read-chunked-2d-SZ3.json index 84b969d3..4f5709e0 100644 --- a/samples/sync-write-read-chunked-2d-SZ3.json +++ b/samples/sync-write-read-chunked-2d-SZ3.json @@ -2,10 +2,10 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "/opt/SZ3/lib" + "path": "/opt/SZ3/lib" }, "file-system": { }, @@ -28,31 +28,31 @@ "DIM_3": "1", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "SZ3", - "CHUNK_DIM_1": "1024", - "CHUNK_DIM_2": "1024", - "CHUNK_DIM_3": "1" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "2", - "DIM_1": "1024", - "DIM_2": "1024", - "DIM_3": "1", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZ3", + "CHUNK_DIM_1": "1024", + "CHUNK_DIM_2": "1024", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-2d-SZIP.json b/samples/sync-write-read-chunked-2d-SZIP.json index 5d0ac6d2..8ea2d19e 100644 --- a/samples/sync-write-read-chunked-2d-SZIP.json +++ b/samples/sync-write-read-chunked-2d-SZIP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { }, @@ -27,31 +27,31 @@ "DIM_3": "1", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "SZIP", - "CHUNK_DIM_1": "1024", - "CHUNK_DIM_2": "1024", - "CHUNK_DIM_3": "1" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "2", - "DIM_1": "1024", - "DIM_2": "1024", - "DIM_3": "1", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZIP", + "CHUNK_DIM_1": "1024", + "CHUNK_DIM_2": "1024", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-2d-ZFP.json b/samples/sync-write-read-chunked-2d-ZFP.json index da5d0586..6793d09d 100644 --- a/samples/sync-write-read-chunked-2d-ZFP.json +++ b/samples/sync-write-read-chunked-2d-ZFP.json @@ -2,10 +2,10 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "/opt/H5Z-ZFP/plugin" + "path": "/opt/H5Z-ZFP/plugin" }, "file-system": { }, @@ -28,31 +28,31 @@ "DIM_3": "1", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "ZFP", - "CHUNK_DIM_1": "1024", - "CHUNK_DIM_2": "1024", - "CHUNK_DIM_3": "1" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "2", - "DIM_1": "1024", - "DIM_2": "1024", - "DIM_3": "1", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "COMPRESS": "YES", + "COMPRESS_FILTER": "ZFP", + "CHUNK_DIM_1": "1024", + "CHUNK_DIM_2": "1024", + "CHUNK_DIM_3": "1" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "2", + "DIM_1": "1024", + "DIM_2": "1024", + "DIM_3": "1", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-3d-GZIP.json b/samples/sync-write-read-chunked-3d-GZIP.json index 2a50a1fa..ec8832ed 100644 --- a/samples/sync-write-read-chunked-3d-GZIP.json +++ b/samples/sync-write-read-chunked-3d-GZIP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { }, @@ -27,31 +27,31 @@ "DIM_3": "64", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "GZIP", - "CHUNK_DIM_1": "64", - "CHUNK_DIM_2": "64", - "CHUNK_DIM_3": "64" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "3", - "DIM_1": "64", - "DIM_2": "64", - "DIM_3": "64", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "COMPRESS": "YES", + "COMPRESS_FILTER": "GZIP", + "CHUNK_DIM_1": "64", + "CHUNK_DIM_2": "64", + "CHUNK_DIM_3": "64" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-3d-N_BIT.json b/samples/sync-write-read-chunked-3d-N_BIT.json index 9b3c4ba5..5e932345 100644 --- a/samples/sync-write-read-chunked-3d-N_BIT.json +++ b/samples/sync-write-read-chunked-3d-N_BIT.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { }, @@ -27,31 +27,31 @@ "DIM_3": "64", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "N_BIT", - "CHUNK_DIM_1": "64", - "CHUNK_DIM_2": "64", - "CHUNK_DIM_3": "64" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "3", - "DIM_1": "64", - "DIM_2": "64", - "DIM_3": "64", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "COMPRESS": "YES", + "COMPRESS_FILTER": "N_BIT", + "CHUNK_DIM_1": "64", + "CHUNK_DIM_2": "64", + "CHUNK_DIM_3": "64" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", + "DIM_2": "64", + "DIM_3": "64", + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-3d-SZ3.json b/samples/sync-write-read-chunked-3d-SZ3.json index e08772fa..f698af75 100644 --- a/samples/sync-write-read-chunked-3d-SZ3.json +++ b/samples/sync-write-read-chunked-3d-SZ3.json @@ -2,10 +2,10 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "/opt/SZ3/lib" + "path": "/opt/SZ3/lib" }, "file-system": { }, @@ -26,33 +26,33 @@ "DIM_1": "64", "DIM_2": "64", "DIM_3": "64", - "CSV_FILE": "output.csv", + "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "SZ3", - "CHUNK_DIM_1": "64", - "CHUNK_DIM_2": "64", - "CHUNK_DIM_3": "64" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "3", - "DIM_1": "64", + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZ3", + "CHUNK_DIM_1": "64", + "CHUNK_DIM_2": "64", + "CHUNK_DIM_3": "64" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", "DIM_2": "64", "DIM_3": "64", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-3d-SZIP.json b/samples/sync-write-read-chunked-3d-SZIP.json index 252f03db..edc7f86e 100644 --- a/samples/sync-write-read-chunked-3d-SZIP.json +++ b/samples/sync-write-read-chunked-3d-SZIP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { }, @@ -22,36 +22,36 @@ "COLLECTIVE_METADATA": "YES", "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", "NUM_DIMS": "3", - "DIM_1": "64", + "DIM_1": "64", "DIM_2": "64", "DIM_3": "64", "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "SZIP", - "CHUNK_DIM_1": "64", - "CHUNK_DIM_2": "64", - "CHUNK_DIM_3": "64" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "3", - "DIM_1": "64", + "COMPRESS": "YES", + "COMPRESS_FILTER": "SZIP", + "CHUNK_DIM_1": "64", + "CHUNK_DIM_2": "64", + "CHUNK_DIM_3": "64" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", "DIM_2": "64", "DIM_3": "64", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } diff --git a/samples/sync-write-read-chunked-3d-ZFP.json b/samples/sync-write-read-chunked-3d-ZFP.json index d78b6682..ce6b8f94 100644 --- a/samples/sync-write-read-chunked-3d-ZFP.json +++ b/samples/sync-write-read-chunked-3d-ZFP.json @@ -2,10 +2,10 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe" }, "vol": { - "path": "/opt/H5Z-ZFP/plugin" + "path": "/opt/H5Z-ZFP/plugin" }, "file-system": { }, @@ -26,33 +26,33 @@ "DIM_1": "64", "DIM_2": "64", "DIM_3": "64", - "CSV_FILE": "output.csv", + "CSV_FILE": "output.csv", "MODE": "SYNC", - "COMPRESS": "YES", - "COMPRESS_FILTER": "ZFP", - "CHUNK_DIM_1": "64", - "CHUNK_DIM_2": "64", - "CHUNK_DIM_3": "64" - } - }, - { - "benchmark": "read", - "file": "test.h5", - "configuration": { - "MEM_PATTERN": "CONTIG", - "FILE_PATTERN": "CONTIG", - "TIMESTEPS": "5", - "DELAYED_CLOSE_TIMESTEPS": "2", - "COLLECTIVE_DATA": "YES", - "COLLECTIVE_METADATA": "YES", - "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", - "NUM_DIMS": "3", - "DIM_1": "64", + "COMPRESS": "YES", + "COMPRESS_FILTER": "ZFP", + "CHUNK_DIM_1": "64", + "CHUNK_DIM_2": "64", + "CHUNK_DIM_3": "64" + } + }, + { + "benchmark": "read", + "file": "test.h5", + "configuration": { + "MEM_PATTERN": "CONTIG", + "FILE_PATTERN": "CONTIG", + "TIMESTEPS": "5", + "DELAYED_CLOSE_TIMESTEPS": "2", + "COLLECTIVE_DATA": "YES", + "COLLECTIVE_METADATA": "YES", + "EMULATED_COMPUTE_TIME_PER_TIMESTEP": "5 s", + "NUM_DIMS": "3", + "DIM_1": "64", "DIM_2": "64", "DIM_3": "64", - "CSV_FILE": "output.csv", - "MODE": "SYNC" - } - } + "CSV_FILE": "output.csv", + "MODE": "SYNC" + } + } ] } From 1044efc614b5beb35ff7d8848e6ce3265de501d9 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 22 Aug 2024 15:20:11 -0700 Subject: [PATCH 42/61] fix issues --- h5bench_patterns/h5bench_read.c | 14 +++++++------- h5bench_patterns/h5bench_write.c | 11 +++++++++++ samples/sync-write-read-chunked-1d-N_BIT.json | 2 +- samples/sync-write-read-chunked-1d-SZ3.json | 2 +- samples/sync-write-read-chunked-1d-SZIP.json | 2 +- samples/sync-write-read-chunked-1d-ZFP.json | 2 +- samples/sync-write-read-chunked-2d-GZIP.json | 2 +- samples/sync-write-read-chunked-2d-N_BIT.json | 2 +- samples/sync-write-read-chunked-2d-SZ3.json | 2 +- samples/sync-write-read-chunked-2d-SZIP.json | 2 +- samples/sync-write-read-chunked-2d-ZFP.json | 2 +- samples/sync-write-read-chunked-3d-GZIP.json | 2 +- samples/sync-write-read-chunked-3d-N_BIT.json | 2 +- samples/sync-write-read-chunked-3d-SZ3.json | 2 +- samples/sync-write-read-chunked-3d-SZIP.json | 2 +- samples/sync-write-read-chunked-3d-ZFP.json | 2 +- 16 files changed, 32 insertions(+), 21 deletions(-) diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index ddcfa435..36d52f92 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -104,7 +104,7 @@ filter_info_init() FILTER_INFO.cd_nelmts = (size_t *)malloc(sizeof(size_t)); *(FILTER_INFO.cd_nelmts) = 10; FILTER_INFO.cd_values = (unsigned int *)malloc(10 * sizeof(unsigned int)); - FILTER_INFO.name = (char *)malloc(10 * sizeof(char)); + FILTER_INFO.name = (char *)malloc(255 * sizeof(char)); FILTER_INFO.filter_config = (unsigned int *)malloc(1 * sizeof(unsigned int)); } @@ -137,7 +137,7 @@ get_filter_info(hid_t dset_id) return 0; } FILTER_INFO.filter_id = - H5Pget_filter2(dcpl, 0, H5Z_FLAG_MANDATORY, FILTER_INFO.cd_nelmts, FILTER_INFO.cd_values, 10, + H5Pget_filter2(dcpl, 0, H5Z_FLAG_MANDATORY, &FILTER_INFO.cd_nelmts, FILTER_INFO.cd_values, 255, FILTER_INFO.name, FILTER_INFO.filter_config); if (FILTER_INFO.filter_id < 0) { @@ -150,9 +150,9 @@ get_filter_info(hid_t dset_id) if (MY_RANK == 0) { printf(" Compression filter used to decompress: %s\n", FILTER_INFO.name); printf(" Filter ID: %d\n", FILTER_INFO.filter_id); - printf(" Number of compression filter parameters: %d\n", FILTER_INFO.cd_nelmts); + printf(" Number of compression filter parameters: %ld\n", *FILTER_INFO.cd_nelmts); for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { - printf(" Compression parameter %d: %d\n", i, FILTER_INFO.cd_values[i]); + printf(" Compression parameter %d: %lu\n", i, FILTER_INFO.cd_values[i]); } } @@ -894,10 +894,10 @@ main(int argc, char *argv[]) if (FILTER_INFO.USE_COMPRESS) { fprintf(params.csv_fs, "compression filter name, %s\n", FILTER_INFO.name); fprintf(params.csv_fs, "filter ID, %d\n", FILTER_INFO.filter_id); - fprintf(params.csv_fs, "number of compression filter parameters, %d\n", - FILTER_INFO.cd_nelmts); + fprintf(params.csv_fs, "number of compression filter parameters, %ld\n", + *FILTER_INFO.cd_nelmts); for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { - fprintf(params.csv_fs, "compression parameter %d, %d\n", i, FILTER_INFO.cd_values[i]); + fprintf(params.csv_fs, "compression parameter %d, %lu\n", i, FILTER_INFO.cd_values[i]); } } diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 67686990..59262d1f 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -1061,6 +1061,17 @@ main(int argc, char *argv[]) char * output_file; bench_params params; + params.cd_value_1 = 0; + params.cd_value_2 = 0; + params.cd_value_3 = 0; + params.cd_value_4 = 0; + params.cd_value_5 = 0; + params.cd_value_6 = 0; + params.cd_value_7 = 0; + params.cd_value_8 = 0; + params.cd_value_9 = 0; + params.cd_value_10 = 0; + char *cfg_file_path = argv[1]; output_file = argv[2]; if (MY_RANK == 0) { diff --git a/samples/sync-write-read-chunked-1d-N_BIT.json b/samples/sync-write-read-chunked-1d-N_BIT.json index 0b18e5ac..41f4dce1 100644 --- a/samples/sync-write-read-chunked-1d-N_BIT.json +++ b/samples/sync-write-read-chunked-1d-N_BIT.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "2", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { }, diff --git a/samples/sync-write-read-chunked-1d-SZ3.json b/samples/sync-write-read-chunked-1d-SZ3.json index 68f5d196..1f843720 100644 --- a/samples/sync-write-read-chunked-1d-SZ3.json +++ b/samples/sync-write-read-chunked-1d-SZ3.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "2", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { "path": "/opt/SZ3/lib" diff --git a/samples/sync-write-read-chunked-1d-SZIP.json b/samples/sync-write-read-chunked-1d-SZIP.json index f6d50752..03467832 100644 --- a/samples/sync-write-read-chunked-1d-SZIP.json +++ b/samples/sync-write-read-chunked-1d-SZIP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "2", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { }, diff --git a/samples/sync-write-read-chunked-1d-ZFP.json b/samples/sync-write-read-chunked-1d-ZFP.json index 1b39be27..49f9f47d 100644 --- a/samples/sync-write-read-chunked-1d-ZFP.json +++ b/samples/sync-write-read-chunked-1d-ZFP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "2", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { "path": "/opt/H5Z-ZFP/plugin" diff --git a/samples/sync-write-read-chunked-2d-GZIP.json b/samples/sync-write-read-chunked-2d-GZIP.json index 8fe59d88..a52b43d0 100644 --- a/samples/sync-write-read-chunked-2d-GZIP.json +++ b/samples/sync-write-read-chunked-2d-GZIP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { }, diff --git a/samples/sync-write-read-chunked-2d-N_BIT.json b/samples/sync-write-read-chunked-2d-N_BIT.json index 3d8bd3a2..d79bc878 100644 --- a/samples/sync-write-read-chunked-2d-N_BIT.json +++ b/samples/sync-write-read-chunked-2d-N_BIT.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { }, diff --git a/samples/sync-write-read-chunked-2d-SZ3.json b/samples/sync-write-read-chunked-2d-SZ3.json index 4f5709e0..f38dfd4e 100644 --- a/samples/sync-write-read-chunked-2d-SZ3.json +++ b/samples/sync-write-read-chunked-2d-SZ3.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { "path": "/opt/SZ3/lib" diff --git a/samples/sync-write-read-chunked-2d-SZIP.json b/samples/sync-write-read-chunked-2d-SZIP.json index 8ea2d19e..8e12554a 100644 --- a/samples/sync-write-read-chunked-2d-SZIP.json +++ b/samples/sync-write-read-chunked-2d-SZIP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { }, diff --git a/samples/sync-write-read-chunked-2d-ZFP.json b/samples/sync-write-read-chunked-2d-ZFP.json index 6793d09d..b746f81d 100644 --- a/samples/sync-write-read-chunked-2d-ZFP.json +++ b/samples/sync-write-read-chunked-2d-ZFP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { "path": "/opt/H5Z-ZFP/plugin" diff --git a/samples/sync-write-read-chunked-3d-GZIP.json b/samples/sync-write-read-chunked-3d-GZIP.json index ec8832ed..cd038e83 100644 --- a/samples/sync-write-read-chunked-3d-GZIP.json +++ b/samples/sync-write-read-chunked-3d-GZIP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { }, diff --git a/samples/sync-write-read-chunked-3d-N_BIT.json b/samples/sync-write-read-chunked-3d-N_BIT.json index 5e932345..54dc0097 100644 --- a/samples/sync-write-read-chunked-3d-N_BIT.json +++ b/samples/sync-write-read-chunked-3d-N_BIT.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { }, diff --git a/samples/sync-write-read-chunked-3d-SZ3.json b/samples/sync-write-read-chunked-3d-SZ3.json index f698af75..244d18e3 100644 --- a/samples/sync-write-read-chunked-3d-SZ3.json +++ b/samples/sync-write-read-chunked-3d-SZ3.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { "path": "/opt/SZ3/lib" diff --git a/samples/sync-write-read-chunked-3d-SZIP.json b/samples/sync-write-read-chunked-3d-SZIP.json index edc7f86e..d4ebf7ce 100644 --- a/samples/sync-write-read-chunked-3d-SZIP.json +++ b/samples/sync-write-read-chunked-3d-SZIP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { }, diff --git a/samples/sync-write-read-chunked-3d-ZFP.json b/samples/sync-write-read-chunked-3d-ZFP.json index ce6b8f94..95f79110 100644 --- a/samples/sync-write-read-chunked-3d-ZFP.json +++ b/samples/sync-write-read-chunked-3d-ZFP.json @@ -2,7 +2,7 @@ "mpi": { "command": "mpirun", "ranks": "4", - "configuration": "--allow-run-as-root --oversubscribe" + "configuration": "--allow-run-as-root --oversubscribe -n 2" }, "vol": { "path": "/opt/H5Z-ZFP/plugin" From 9861e1c7f310d1519fafd4b81cdc8b90ba0d5839 Mon Sep 17 00:00:00 2001 From: github-actions Date: Thu, 22 Aug 2024 22:20:33 +0000 Subject: [PATCH 43/61] committing clang-format changes --- h5bench_patterns/h5bench_write.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 59262d1f..bf209d8f 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -1061,15 +1061,15 @@ main(int argc, char *argv[]) char * output_file; bench_params params; - params.cd_value_1 = 0; - params.cd_value_2 = 0; - params.cd_value_3 = 0; - params.cd_value_4 = 0; - params.cd_value_5 = 0; - params.cd_value_6 = 0; - params.cd_value_7 = 0; - params.cd_value_8 = 0; - params.cd_value_9 = 0; + params.cd_value_1 = 0; + params.cd_value_2 = 0; + params.cd_value_3 = 0; + params.cd_value_4 = 0; + params.cd_value_5 = 0; + params.cd_value_6 = 0; + params.cd_value_7 = 0; + params.cd_value_8 = 0; + params.cd_value_9 = 0; params.cd_value_10 = 0; char *cfg_file_path = argv[1]; From 6147b1243ab8e21ca70b4ebb7fa976d0c5c08048 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 22 Aug 2024 15:21:50 -0700 Subject: [PATCH 44/61] update Docker --- .../Dockerfile | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile b/docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile index 87f7d1e4..be1373e2 100644 --- a/docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile +++ b/docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile @@ -20,7 +20,9 @@ RUN apt-get update \ pkg-config \ cmake \ libtool \ - zlib1g-dev \ + zlib1g-dev \ + libaec0 \ + libaec-dev \ python3 \ python3-pip \ python3-dev \ @@ -28,7 +30,8 @@ RUN apt-get update \ gcc \ g++ \ libopenmpi-dev \ - software-properties-common + software-properties-common \ + && ldconfig RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | sudo tee /etc/apt/trusted.gpg.d/kitware.gpg >/dev/null \ && sudo apt-add-repository 'deb https://apt.kitware.com/ubuntu/ focal main' \ && apt-get update \ @@ -39,7 +42,7 @@ RUN wget https://github.com/HDFGroup/hdf5/archive/refs/tags/hdf5-1_14_1.tar.gz \ && mv hdf5-hdf5-1_14_1 hdf5 \ && cd hdf5 \ && ./autogen.sh \ - && CC=mpicc ./configure --prefix=/opt/hdf5 --enable-parallel --enable-threadsafe --enable-shared --enable-unsupported \ + && CC=mpicc CXX=mpicxx ./configure --prefix=/opt/hdf5 --enable-parallel --enable-cxx --enable-threadsafe --enable-shared --disable-static --enable-unsupported --with-zlib=yes --with-szlib=yes \ && make -j 8 \ && make install RUN cd ~ \ @@ -63,12 +66,14 @@ RUN cd ~ \ && make install RUN cd ~ \ && export HDF5_DIR=/opt/hdf5 \ - && export ZFP_DIR=/opt/zfp/lib64/cmake/zfp \ + && export PATH=/opt/hdf5/bin:$PATH \ + && export LD_LIBRARY_PATH=/opt/hdf5/lib:$LD_LIBRARY_PATH \ + && export ZFP_DIR=/opt/zfp/lib/cmake/zfp \ && git clone https://github.com/LLNL/H5Z-ZFP \ && cd H5Z-ZFP \ && mkdir build \ && cd build \ - && CC=mpicc cmake -DCMAKE_INSTALL_PREFIX=/opt/H5Z-ZFP -DFORTRAN_INTERFACE=OFF -DCMAKE_PREFIX_PATH="/opt/hdf5;/opt/zfp" .. \ + && CC=mpicc cmake -DCMAKE_INSTALL_PREFIX=/opt/H5Z-ZFP -DFORTRAN_INTERFACE=OFF .. \ && make \ && make install RUN rm -rf /var/lib/apt/lists/* \ From baa9b14a7b39e46107f891ec1c671566f8bf3548 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 22 Aug 2024 15:27:52 -0700 Subject: [PATCH 45/61] update action and fix typo --- .github/workflows/h5bench-hdf5-1.10.4.yml | 2 +- .github/workflows/h5bench-hdf5-1.10.7.yml | 2 +- .github/workflows/h5bench-hdf5-1.10.8.yml | 2 +- .github/workflows/h5bench-hdf5-1.12.0.yml | 2 +- .github/workflows/h5bench-hdf5-1.14.0.yml | 2 +- .github/workflows/h5bench-hdf5-1.14.1-compress.yml | 2 +- .github/workflows/h5bench-hdf5-1.14.1.yml | 2 +- .github/workflows/h5bench-hdf5-develop-test.yml | 2 +- .github/workflows/h5bench-hdf5-develop.yml | 2 +- h5bench_patterns/h5bench_read.c | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/h5bench-hdf5-1.10.4.yml b/.github/workflows/h5bench-hdf5-1.10.4.yml index c3d97a50..113fa093 100644 --- a/.github/workflows/h5bench-hdf5-1.10.4.yml +++ b/.github/workflows/h5bench-hdf5-1.10.4.yml @@ -226,7 +226,7 @@ jobs: - name: Upload artifact if: always() - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: test path: build/storage/**/std* diff --git a/.github/workflows/h5bench-hdf5-1.10.7.yml b/.github/workflows/h5bench-hdf5-1.10.7.yml index c6743019..7e662e87 100644 --- a/.github/workflows/h5bench-hdf5-1.10.7.yml +++ b/.github/workflows/h5bench-hdf5-1.10.7.yml @@ -226,7 +226,7 @@ jobs: - name: Upload artifact if: always() - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: test path: build/h5bench_e3sm-prefix/src/h5bench_e3sm-stamp/* diff --git a/.github/workflows/h5bench-hdf5-1.10.8.yml b/.github/workflows/h5bench-hdf5-1.10.8.yml index ed831b78..caa83bd3 100644 --- a/.github/workflows/h5bench-hdf5-1.10.8.yml +++ b/.github/workflows/h5bench-hdf5-1.10.8.yml @@ -226,7 +226,7 @@ jobs: - name: Upload artifact if: always() - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: test path: build/storage/**/std* diff --git a/.github/workflows/h5bench-hdf5-1.12.0.yml b/.github/workflows/h5bench-hdf5-1.12.0.yml index d194ae41..b02d7ba3 100644 --- a/.github/workflows/h5bench-hdf5-1.12.0.yml +++ b/.github/workflows/h5bench-hdf5-1.12.0.yml @@ -258,7 +258,7 @@ jobs: - name: Upload artifact if: always() - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: test path: build/storage/**/std* diff --git a/.github/workflows/h5bench-hdf5-1.14.0.yml b/.github/workflows/h5bench-hdf5-1.14.0.yml index b3be7393..58d82558 100644 --- a/.github/workflows/h5bench-hdf5-1.14.0.yml +++ b/.github/workflows/h5bench-hdf5-1.14.0.yml @@ -513,7 +513,7 @@ jobs: - name: Upload artifact if: always() - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: test path: build*/storage/**/std* diff --git a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml index dd5d6037..aa05188c 100644 --- a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml +++ b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml @@ -118,7 +118,7 @@ jobs: - name: Upload artifact if: always() - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: test path: build*/storage/**/std* diff --git a/.github/workflows/h5bench-hdf5-1.14.1.yml b/.github/workflows/h5bench-hdf5-1.14.1.yml index 2de7aceb..1d4f8316 100644 --- a/.github/workflows/h5bench-hdf5-1.14.1.yml +++ b/.github/workflows/h5bench-hdf5-1.14.1.yml @@ -513,7 +513,7 @@ jobs: - name: Upload artifact if: always() - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: test path: build*/storage/**/std* diff --git a/.github/workflows/h5bench-hdf5-develop-test.yml b/.github/workflows/h5bench-hdf5-develop-test.yml index e995e9e1..9b8545b3 100644 --- a/.github/workflows/h5bench-hdf5-develop-test.yml +++ b/.github/workflows/h5bench-hdf5-develop-test.yml @@ -152,7 +152,7 @@ jobs: - name: Upload artifact if: always() - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: test path: build*/storage/**/std* diff --git a/.github/workflows/h5bench-hdf5-develop.yml b/.github/workflows/h5bench-hdf5-develop.yml index b68c92e2..f796ec7f 100644 --- a/.github/workflows/h5bench-hdf5-develop.yml +++ b/.github/workflows/h5bench-hdf5-develop.yml @@ -645,7 +645,7 @@ jobs: - name: Upload artifact if: always() - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: test path: build*/storage/**/std* diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index 36d52f92..2c1b8a00 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -137,7 +137,7 @@ get_filter_info(hid_t dset_id) return 0; } FILTER_INFO.filter_id = - H5Pget_filter2(dcpl, 0, H5Z_FLAG_MANDATORY, &FILTER_INFO.cd_nelmts, FILTER_INFO.cd_values, 255, + H5Pget_filter2(dcpl, 0, H5Z_FLAG_MANDATORY, FILTER_INFO.cd_nelmts, FILTER_INFO.cd_values, 255, FILTER_INFO.name, FILTER_INFO.filter_config); if (FILTER_INFO.filter_id < 0) { From 752ac54758b8a6ab39b0654fc14c7b06f76d1468 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 22 Aug 2024 15:42:10 -0700 Subject: [PATCH 46/61] remove parameters --- h5bench_patterns/h5bench_read.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index 2c1b8a00..5f02c4d8 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -150,10 +150,10 @@ get_filter_info(hid_t dset_id) if (MY_RANK == 0) { printf(" Compression filter used to decompress: %s\n", FILTER_INFO.name); printf(" Filter ID: %d\n", FILTER_INFO.filter_id); - printf(" Number of compression filter parameters: %ld\n", *FILTER_INFO.cd_nelmts); - for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { - printf(" Compression parameter %d: %lu\n", i, FILTER_INFO.cd_values[i]); - } + //printf(" Number of compression filter parameters: %ld\n", *FILTER_INFO.cd_nelmts); + //for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { + // printf(" Compression parameter %d: %lu\n", i, FILTER_INFO.cd_values[i]); + //} } return 0; @@ -894,11 +894,11 @@ main(int argc, char *argv[]) if (FILTER_INFO.USE_COMPRESS) { fprintf(params.csv_fs, "compression filter name, %s\n", FILTER_INFO.name); fprintf(params.csv_fs, "filter ID, %d\n", FILTER_INFO.filter_id); - fprintf(params.csv_fs, "number of compression filter parameters, %ld\n", - *FILTER_INFO.cd_nelmts); - for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { - fprintf(params.csv_fs, "compression parameter %d, %lu\n", i, FILTER_INFO.cd_values[i]); - } + //fprintf(params.csv_fs, "number of compression filter parameters, %ld\n", + // *FILTER_INFO.cd_nelmts); + //for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { + // fprintf(params.csv_fs, "compression parameter %d, %lu\n", i, FILTER_INFO.cd_values[i]); + //} } fprintf(params.csv_fs, "raw time, %.3f, %s\n", rrt_s, "seconds"); From bd67248dcfcf018ca7fcf46a314c4df62d6c4d33 Mon Sep 17 00:00:00 2001 From: github-actions Date: Thu, 22 Aug 2024 22:42:33 +0000 Subject: [PATCH 47/61] committing clang-format changes --- h5bench_patterns/h5bench_read.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index 5f02c4d8..558e6b6b 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -150,8 +150,8 @@ get_filter_info(hid_t dset_id) if (MY_RANK == 0) { printf(" Compression filter used to decompress: %s\n", FILTER_INFO.name); printf(" Filter ID: %d\n", FILTER_INFO.filter_id); - //printf(" Number of compression filter parameters: %ld\n", *FILTER_INFO.cd_nelmts); - //for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { + // printf(" Number of compression filter parameters: %ld\n", *FILTER_INFO.cd_nelmts); + // for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { // printf(" Compression parameter %d: %lu\n", i, FILTER_INFO.cd_values[i]); //} } @@ -894,9 +894,9 @@ main(int argc, char *argv[]) if (FILTER_INFO.USE_COMPRESS) { fprintf(params.csv_fs, "compression filter name, %s\n", FILTER_INFO.name); fprintf(params.csv_fs, "filter ID, %d\n", FILTER_INFO.filter_id); - //fprintf(params.csv_fs, "number of compression filter parameters, %ld\n", + // fprintf(params.csv_fs, "number of compression filter parameters, %ld\n", // *FILTER_INFO.cd_nelmts); - //for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { + // for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { // fprintf(params.csv_fs, "compression parameter %d, %lu\n", i, FILTER_INFO.cd_values[i]); //} } From 6668391511e3d4a98304ec20df51ae8b484b0686 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Thu, 22 Aug 2024 15:44:25 -0700 Subject: [PATCH 48/61] remove parameters --- h5bench_patterns/h5bench_read.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/h5bench_patterns/h5bench_read.c b/h5bench_patterns/h5bench_read.c index 558e6b6b..d1776aeb 100644 --- a/h5bench_patterns/h5bench_read.c +++ b/h5bench_patterns/h5bench_read.c @@ -148,7 +148,7 @@ get_filter_info(hid_t dset_id) FILTER_INFO.USE_COMPRESS = 1; if (MY_RANK == 0) { - printf(" Compression filter used to decompress: %s\n", FILTER_INFO.name); + printf(" Compression filter to decompress: %s\n", FILTER_INFO.name); printf(" Filter ID: %d\n", FILTER_INFO.filter_id); // printf(" Number of compression filter parameters: %ld\n", *FILTER_INFO.cd_nelmts); // for (int i = 0; i < *(FILTER_INFO.cd_nelmts); ++i) { From ab7b7daabfa5635ad5623150ed7b3aa6fbbeab2a Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Fri, 23 Aug 2024 10:16:42 -0700 Subject: [PATCH 49/61] pin SZ3 version to 3.1.8 --- docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile b/docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile index be1373e2..82636cf5 100644 --- a/docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile +++ b/docker/ubuntu-20.04-hdf5-1.14.1-compression/Dockerfile @@ -51,6 +51,7 @@ RUN cd ~ \ && export HDF5_HOME=/opt/hdf5 \ && git clone https://github.com/szcompressor/SZ3 \ && cd SZ3 \ + && git checkout v3.1.8 \ && mkdir build \ && cd build \ && cmake -DCMAKE_INSTALL_PREFIX=/opt/SZ3 -DBUILD_H5Z_FILTER=ON .. \ From 278ee3cef19fb566614cc58869ada2653508cc25 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Fri, 23 Aug 2024 10:32:35 -0700 Subject: [PATCH 50/61] fix path --- .github/workflows/h5bench-hdf5-1.14.1-compress.yml | 4 ++-- .github/workflows/h5bench-hdf5-develop-test.yml | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml index aa05188c..38aa37af 100644 --- a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml +++ b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml @@ -85,7 +85,7 @@ jobs: - name: Test h5bench SYNC write/read 2D ZFP filter run: | - export LD_LIBRARY_PATH=/opt/zfp/lib64:$LD_LIBRARY_PATH + export LD_LIBRARY_PATH=/opt/zfp/lib:$LD_LIBRARY_PATH cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-2d-ZFP.json @@ -112,7 +112,7 @@ jobs: - name: Test h5bench SYNC write/read 3D ZFP filter run: | - export LD_LIBRARY_PATH=/opt/zfp/lib64:$LD_LIBRARY_PATH + export LD_LIBRARY_PATH=/opt/zfp/lib:$LD_LIBRARY_PATH cd build-sync ./h5bench --debug --abort-on-failure --validate-mode ../samples/sync-write-read-chunked-3d-ZFP.json diff --git a/.github/workflows/h5bench-hdf5-develop-test.yml b/.github/workflows/h5bench-hdf5-develop-test.yml index 9b8545b3..804de3fb 100644 --- a/.github/workflows/h5bench-hdf5-develop-test.yml +++ b/.github/workflows/h5bench-hdf5-develop-test.yml @@ -131,6 +131,9 @@ jobs: export ABT_DIR=/opt/argobots export ASYNC_DIR=/opt/vol-async + export LD_LIBRARY_PATH=/opt/SZ3/lib:$LD_LIBRARY_PATH + export LD_LIBRARY_PATH=/opt/zfp/lib:$LD_LIBRARY_PATH + cd build-sync ctest --verbose . From ce43d90f8695c05562ff7675f1c6296f6a60c627 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Fri, 23 Aug 2024 11:02:54 -0700 Subject: [PATCH 51/61] update CI --- .github/workflows/clang-format-check.yml | 2 +- .github/workflows/h5bench-hdf5-1.10.4.yml | 2 +- .github/workflows/h5bench-hdf5-1.10.7.yml | 2 +- .github/workflows/h5bench-hdf5-1.10.8.yml | 2 +- .github/workflows/h5bench-hdf5-1.12.0.yml | 2 +- .github/workflows/h5bench-hdf5-1.14.0.yml | 2 +- .github/workflows/h5bench-hdf5-1.14.1-compress.yml | 2 +- .github/workflows/h5bench-hdf5-1.14.1.yml | 2 +- .github/workflows/h5bench-hdf5-develop-test.yml | 2 +- .github/workflows/h5bench-hdf5-develop.yml | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/clang-format-check.yml b/.github/workflows/clang-format-check.yml index 52e4d061..40e36a0a 100644 --- a/.github/workflows/clang-format-check.yml +++ b/.github/workflows/clang-format-check.yml @@ -7,7 +7,7 @@ jobs: runs-on: ubuntu-latest if: "!contains(github.event.head_commit.message, 'skip-ci')" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Run clang-format style check for C programs. uses: DoozyX/clang-format-lint-action@v0.11 with: diff --git a/.github/workflows/h5bench-hdf5-1.10.4.yml b/.github/workflows/h5bench-hdf5-1.10.4.yml index 113fa093..92bf51b1 100644 --- a/.github/workflows/h5bench-hdf5-1.10.4.yml +++ b/.github/workflows/h5bench-hdf5-1.10.4.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.10.7.yml b/.github/workflows/h5bench-hdf5-1.10.7.yml index 7e662e87..023094d9 100644 --- a/.github/workflows/h5bench-hdf5-1.10.7.yml +++ b/.github/workflows/h5bench-hdf5-1.10.7.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.10.8.yml b/.github/workflows/h5bench-hdf5-1.10.8.yml index caa83bd3..ea4c6ad1 100644 --- a/.github/workflows/h5bench-hdf5-1.10.8.yml +++ b/.github/workflows/h5bench-hdf5-1.10.8.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.12.0.yml b/.github/workflows/h5bench-hdf5-1.12.0.yml index b02d7ba3..b0e27e9f 100644 --- a/.github/workflows/h5bench-hdf5-1.12.0.yml +++ b/.github/workflows/h5bench-hdf5-1.12.0.yml @@ -20,7 +20,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.14.0.yml b/.github/workflows/h5bench-hdf5-1.14.0.yml index 58d82558..8aa0b5d2 100644 --- a/.github/workflows/h5bench-hdf5-1.14.0.yml +++ b/.github/workflows/h5bench-hdf5-1.14.0.yml @@ -20,7 +20,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml index 38aa37af..2ec53f6e 100644 --- a/.github/workflows/h5bench-hdf5-1.14.1-compress.yml +++ b/.github/workflows/h5bench-hdf5-1.14.1-compress.yml @@ -13,7 +13,7 @@ jobs: timeout-minutes: 60 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.14.1.yml b/.github/workflows/h5bench-hdf5-1.14.1.yml index 1d4f8316..f9008c2c 100644 --- a/.github/workflows/h5bench-hdf5-1.14.1.yml +++ b/.github/workflows/h5bench-hdf5-1.14.1.yml @@ -20,7 +20,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-develop-test.yml b/.github/workflows/h5bench-hdf5-develop-test.yml index 804de3fb..b989d8db 100644 --- a/.github/workflows/h5bench-hdf5-develop-test.yml +++ b/.github/workflows/h5bench-hdf5-develop-test.yml @@ -15,7 +15,7 @@ jobs: OMPI_MCA_rmaps_base_oversubscribe: "yes" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-develop.yml b/.github/workflows/h5bench-hdf5-develop.yml index f796ec7f..dde52e3e 100644 --- a/.github/workflows/h5bench-hdf5-develop.yml +++ b/.github/workflows/h5bench-hdf5-develop.yml @@ -15,7 +15,7 @@ jobs: OMPI_MCA_rmaps_base_oversubscribe: "yes" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: true From 1bad0e83312f03ee7adfe6de0d6d4777dd687ef4 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Fri, 23 Aug 2024 13:53:25 -0700 Subject: [PATCH 52/61] refine tests --- .github/workflows/h5bench-hdf5-1.10.4.yml | 2 +- .github/workflows/h5bench-hdf5-1.10.7.yml | 2 +- .github/workflows/h5bench-hdf5-1.10.8.yml | 2 +- tests/test_async_h5bench.py | 2 +- tests/test_sync_h5bench.py | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/h5bench-hdf5-1.10.4.yml b/.github/workflows/h5bench-hdf5-1.10.4.yml index 92bf51b1..468fd24a 100644 --- a/.github/workflows/h5bench-hdf5-1.10.4.yml +++ b/.github/workflows/h5bench-hdf5-1.10.4.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v2 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.10.7.yml b/.github/workflows/h5bench-hdf5-1.10.7.yml index 023094d9..55cd3a5d 100644 --- a/.github/workflows/h5bench-hdf5-1.10.7.yml +++ b/.github/workflows/h5bench-hdf5-1.10.7.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v2 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.10.8.yml b/.github/workflows/h5bench-hdf5-1.10.8.yml index ea4c6ad1..03215b91 100644 --- a/.github/workflows/h5bench-hdf5-1.10.8.yml +++ b/.github/workflows/h5bench-hdf5-1.10.8.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v2 with: submodules: true diff --git a/tests/test_async_h5bench.py b/tests/test_async_h5bench.py index 8519027f..0183f660 100644 --- a/tests/test_async_h5bench.py +++ b/tests/test_async_h5bench.py @@ -16,7 +16,7 @@ BINARY_UNLIMITED = 'h5bench_write_unlimited' samples = \ - glob.glob('async-write-*d-*.json') + \ + glob.glob('sync-write-*d-*[!SZIP,N_BIT,SZ3,GZIP,ZFP].json') + \ glob.glob('async-append*.json') + \ glob.glob('async-overwrite*.json') + \ glob.glob('async-write-unlimited*.json') diff --git a/tests/test_sync_h5bench.py b/tests/test_sync_h5bench.py index e704a49b..b2c6f014 100644 --- a/tests/test_sync_h5bench.py +++ b/tests/test_sync_h5bench.py @@ -16,7 +16,7 @@ BINARY_UNLIMITED = 'h5bench_write_unlimited' samples = \ - glob.glob('sync-write-*d-*.json') + \ + glob.glob('sync-write-*d-*[!SZIP,N_BIT,SZ3,GZIP,ZFP].json') + \ glob.glob('sync-append*.json') + \ glob.glob('sync-overwrite*.json') + \ glob.glob('sync-write-unlimited*.json') From 65ac2311abf910d40663d60ea1b1ac97dc3ef1b3 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Fri, 23 Aug 2024 13:57:32 -0700 Subject: [PATCH 53/61] bump version --- .github/workflows/h5bench-hdf5-1.10.4.yml | 2 +- .github/workflows/h5bench-hdf5-1.10.7.yml | 2 +- .github/workflows/h5bench-hdf5-1.10.8.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/h5bench-hdf5-1.10.4.yml b/.github/workflows/h5bench-hdf5-1.10.4.yml index 468fd24a..0ed95b99 100644 --- a/.github/workflows/h5bench-hdf5-1.10.4.yml +++ b/.github/workflows/h5bench-hdf5-1.10.4.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.10.7.yml b/.github/workflows/h5bench-hdf5-1.10.7.yml index 55cd3a5d..f8fedaea 100644 --- a/.github/workflows/h5bench-hdf5-1.10.7.yml +++ b/.github/workflows/h5bench-hdf5-1.10.7.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.10.8.yml b/.github/workflows/h5bench-hdf5-1.10.8.yml index 03215b91..bd7be08e 100644 --- a/.github/workflows/h5bench-hdf5-1.10.8.yml +++ b/.github/workflows/h5bench-hdf5-1.10.8.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: submodules: true From 673c928ea029a9e64e40dce4ff6f241d67c309da Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Fri, 23 Aug 2024 13:58:59 -0700 Subject: [PATCH 54/61] bump version --- .github/workflows/h5bench-hdf5-1.10.4.yml | 2 +- .github/workflows/h5bench-hdf5-1.10.7.yml | 2 +- .github/workflows/h5bench-hdf5-1.10.8.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/h5bench-hdf5-1.10.4.yml b/.github/workflows/h5bench-hdf5-1.10.4.yml index 0ed95b99..92bf51b1 100644 --- a/.github/workflows/h5bench-hdf5-1.10.4.yml +++ b/.github/workflows/h5bench-hdf5-1.10.4.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.10.7.yml b/.github/workflows/h5bench-hdf5-1.10.7.yml index f8fedaea..023094d9 100644 --- a/.github/workflows/h5bench-hdf5-1.10.7.yml +++ b/.github/workflows/h5bench-hdf5-1.10.7.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: true diff --git a/.github/workflows/h5bench-hdf5-1.10.8.yml b/.github/workflows/h5bench-hdf5-1.10.8.yml index bd7be08e..ea4c6ad1 100644 --- a/.github/workflows/h5bench-hdf5-1.10.8.yml +++ b/.github/workflows/h5bench-hdf5-1.10.8.yml @@ -23,7 +23,7 @@ jobs: OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: true From e3c54e54a41fe3d876dcb86121bf36fd2dfbe50b Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Fri, 23 Aug 2024 14:36:53 -0700 Subject: [PATCH 55/61] update Ubuntu baseline CI image --- .github/workflows/h5bench-hdf5-1.10.4.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/h5bench-hdf5-1.10.4.yml b/.github/workflows/h5bench-hdf5-1.10.4.yml index 92bf51b1..66d5f673 100644 --- a/.github/workflows/h5bench-hdf5-1.10.4.yml +++ b/.github/workflows/h5bench-hdf5-1.10.4.yml @@ -16,7 +16,7 @@ jobs: h5bench: runs-on: ubuntu-20.04 container: - image: hpcio/hdf5-1.10.4 + image: hpcio/hdf5-1.10.4:test timeout-minutes: 60 env: OMPI_ALLOW_RUN_AS_ROOT: 1 From 762a7cb46e9dff3a89e99e3a9aade2340fc06b51 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Fri, 23 Aug 2024 18:57:32 -0400 Subject: [PATCH 56/61] Add check to total_compressed_size to avoid divide by 0 --- h5bench_patterns/h5bench_write.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index bf209d8f..98d30de7 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -1229,7 +1229,12 @@ main(int argc, char *argv[]) value = format_human_readable(total_size_bytes); printf("Total write size: %.3lf %cB\n", value.value, value.unit); - float compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; + // Assume no compression + float compression_ratio = 1.0; + if (COMPRESS_INFO.total_compressed_size > 0) { + compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; + } + // Report compression ratio if (COMPRESS_INFO.USE_COMPRESS) { value = format_human_readable(COMPRESS_INFO.total_compressed_size); From 08db82e6e27a02aeb4b2c9358f8005b565063c9d Mon Sep 17 00:00:00 2001 From: github-actions Date: Fri, 23 Aug 2024 22:57:55 +0000 Subject: [PATCH 57/61] committing clang-format changes --- h5bench_patterns/h5bench_write.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 98d30de7..b48c4474 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -1229,11 +1229,11 @@ main(int argc, char *argv[]) value = format_human_readable(total_size_bytes); printf("Total write size: %.3lf %cB\n", value.value, value.unit); - // Assume no compression - float compression_ratio = 1.0; - if (COMPRESS_INFO.total_compressed_size > 0) { - compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; - } + // Assume no compression + float compression_ratio = 1.0; + if (COMPRESS_INFO.total_compressed_size > 0) { + compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; + } // Report compression ratio if (COMPRESS_INFO.USE_COMPRESS) { From 7f1750e25492a498745fdb78285b580d382a7f9f Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Mon, 26 Aug 2024 08:29:26 -0700 Subject: [PATCH 58/61] update CI images --- .github/workflows/h5bench-hdf5-1.10.4.yml | 2 +- docker/ubuntu-18.04-hdf5-1.10.4/Dockerfile | 4 ++-- docker/ubuntu-18.04-hdf5-1.10.7/Dockerfile | 4 ++-- docker/ubuntu-18.04-hdf5-1.10.8/Dockerfile | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/h5bench-hdf5-1.10.4.yml b/.github/workflows/h5bench-hdf5-1.10.4.yml index 66d5f673..92bf51b1 100644 --- a/.github/workflows/h5bench-hdf5-1.10.4.yml +++ b/.github/workflows/h5bench-hdf5-1.10.4.yml @@ -16,7 +16,7 @@ jobs: h5bench: runs-on: ubuntu-20.04 container: - image: hpcio/hdf5-1.10.4:test + image: hpcio/hdf5-1.10.4 timeout-minutes: 60 env: OMPI_ALLOW_RUN_AS_ROOT: 1 diff --git a/docker/ubuntu-18.04-hdf5-1.10.4/Dockerfile b/docker/ubuntu-18.04-hdf5-1.10.4/Dockerfile index 900789b5..41cb8602 100644 --- a/docker/ubuntu-18.04-hdf5-1.10.4/Dockerfile +++ b/docker/ubuntu-18.04-hdf5-1.10.4/Dockerfile @@ -1,6 +1,6 @@ -FROM ubuntu:bionic +FROM ubuntu:focal -LABEL Description="Ubuntu 18.04 environment with HDF5 1.10.4" +LABEL Description="Ubuntu 20.04 environment with HDF5 1.10.4" ENV DEBIAN_FRONTEND=noninteractive ENV HDF5_LIBTOOL=/usr/bin/libtoolize diff --git a/docker/ubuntu-18.04-hdf5-1.10.7/Dockerfile b/docker/ubuntu-18.04-hdf5-1.10.7/Dockerfile index 82b59850..ca118574 100644 --- a/docker/ubuntu-18.04-hdf5-1.10.7/Dockerfile +++ b/docker/ubuntu-18.04-hdf5-1.10.7/Dockerfile @@ -1,6 +1,6 @@ -FROM ubuntu:bionic +FROM ubuntu:focal -LABEL Description="Ubuntu 18.04 environment with HDF5 1.10.7" +LABEL Description="Ubuntu 20.04 environment with HDF5 1.10.7" ENV DEBIAN_FRONTEND=noninteractive ENV HDF5_LIBTOOL=/usr/bin/libtoolize diff --git a/docker/ubuntu-18.04-hdf5-1.10.8/Dockerfile b/docker/ubuntu-18.04-hdf5-1.10.8/Dockerfile index 8db8ae59..416f4dfd 100644 --- a/docker/ubuntu-18.04-hdf5-1.10.8/Dockerfile +++ b/docker/ubuntu-18.04-hdf5-1.10.8/Dockerfile @@ -1,6 +1,6 @@ -FROM ubuntu:bionic +FROM ubuntu:focal -LABEL Description="Ubuntu 18.04 environment with HDF5 1.10.8" +LABEL Description="Ubuntu 20.04 environment with HDF5 1.10.8" ENV DEBIAN_FRONTEND=noninteractive ENV HDF5_LIBTOOL=/usr/bin/libtoolize From f8df39f0907ebd4c0829bec83cd572084728e442 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Mon, 26 Aug 2024 08:30:08 -0700 Subject: [PATCH 59/61] delete deprecated file --- h5bench_patterns/h5bench_write.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index b48c4474..915b11f1 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -1229,14 +1229,15 @@ main(int argc, char *argv[]) value = format_human_readable(total_size_bytes); printf("Total write size: %.3lf %cB\n", value.value, value.unit); - // Assume no compression - float compression_ratio = 1.0; - if (COMPRESS_INFO.total_compressed_size > 0) { - compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; - } - // Report compression ratio if (COMPRESS_INFO.USE_COMPRESS) { + // Assume no compression + float compression_ratio = 1.0; + + if (COMPRESS_INFO.total_compressed_size > 0) { + compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; + } + value = format_human_readable(COMPRESS_INFO.total_compressed_size); printf("Total compressed size: %.3lf %cB\n", value.value, value.unit); printf("Compression ratio: %.3f\n", compression_ratio); From b3ce0583a9832f7159ef9e6709965bf83bf4275b Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Mon, 26 Aug 2024 08:48:46 -0700 Subject: [PATCH 60/61] remove files --- configuration-h5bench.log | 28 ------------------- ...te-1d-contig-contig-gpfs-align-h5bench.log | 13 --------- 2 files changed, 41 deletions(-) delete mode 100644 configuration-h5bench.log delete mode 100644 samples/async-write-1d-contig-contig-gpfs-align-h5bench.log diff --git a/configuration-h5bench.log b/configuration-h5bench.log deleted file mode 100644 index 777421b0..00000000 --- a/configuration-h5bench.log +++ /dev/null @@ -1,28 +0,0 @@ -2024-03-14 06:25:11,586 h5bench - INFO - Starting h5bench Suite -2024-03-14 06:25:11,612 h5bench - INFO - Lustre support not detected -2024-03-14 06:25:11,613 h5bench - INFO - h5bench [e3sm] - Starting -2024-03-14 06:25:11,613 h5bench - INFO - h5bench [e3sm] - DIR: full-teste/85d5e926/ -2024-03-14 06:25:11,614 h5bench - INFO - Parallel setup: mpirun -np 8 --oversubscribe -2024-03-14 06:25:11,618 h5bench - CRITICAL - h5bench_e3sm is not available -2024-03-14 06:26:09,624 h5bench - INFO - Starting h5bench Suite -2024-03-14 06:26:09,626 h5bench - WARNING - Base directory already exists: full-teste -2024-03-14 06:26:09,630 h5bench - INFO - Lustre support not detected -2024-03-14 06:26:09,631 h5bench - DEBUG - HDF5_PLUGIN_PATH: /vol-async/src -2024-03-14 06:26:09,632 h5bench - DEBUG - LD_LIBRARY_PATH: /opt/mvapich2/intel/19.0/2.3.3/lib:/usr/local/gnu/8.4.0/lib64:/usr/local/gnu/8.4.0/lib:/opt/intel/debugger_2019/libipt/intel64/lib:/opt/intel/compilers_and_libraries_2019.5.281/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/daal/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/ipp/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/tbb/lib/intel64_lin/gcc4.4:/opt/ddn/cci/lib:/opt/ddn/ime/lib:/opt/ddn/isa-l/lib:/vol-async/src:/hdf5-async-vol-register-install/lib:/argobots/install/lib:/hdf5-install/install: -2024-03-14 06:26:09,632 h5bench - DEBUG - DYLD_LIBRARY_PATH: :/vol-async/src:/hdf5-async-vol-register-install/lib:/argobots/install/lib:/hdf5-install/install: -2024-03-14 06:26:09,632 h5bench - DEBUG - LD_PRELOAD: /usr/local/xalt/xalt/lib64/libxalt_init.so -2024-03-14 06:26:09,633 h5bench - INFO - h5bench [e3sm] - Starting -2024-03-14 06:26:09,633 h5bench - INFO - h5bench [e3sm] - DIR: full-teste/5e428961/ -2024-03-14 06:26:09,633 h5bench - INFO - Parallel setup: mpirun -np 8 --oversubscribe -2024-03-14 06:26:09,634 h5bench - CRITICAL - h5bench_e3sm is not available -2024-03-14 06:28:57,348 h5bench - INFO - Starting h5bench Suite -2024-03-14 06:28:57,350 h5bench - WARNING - Base directory already exists: full-teste -2024-03-14 06:28:57,354 h5bench - INFO - Lustre support not detected -2024-03-14 06:28:57,355 h5bench - DEBUG - HDF5_PLUGIN_PATH: /vol-async/src -2024-03-14 06:28:57,356 h5bench - DEBUG - LD_LIBRARY_PATH: /opt/mvapich2/intel/19.0/2.3.3/lib:/usr/local/gnu/8.4.0/lib64:/usr/local/gnu/8.4.0/lib:/opt/intel/debugger_2019/libipt/intel64/lib:/opt/intel/compilers_and_libraries_2019.5.281/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/daal/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/ipp/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/tbb/lib/intel64_lin/gcc4.4:/opt/ddn/cci/lib:/opt/ddn/ime/lib:/opt/ddn/isa-l/lib:/vol-async/src:/hdf5-async-vol-register-install/lib:/argobots/install/lib:/hdf5-install/install: -2024-03-14 06:28:57,356 h5bench - DEBUG - DYLD_LIBRARY_PATH: :/vol-async/src:/hdf5-async-vol-register-install/lib:/argobots/install/lib:/hdf5-install/install: -2024-03-14 06:28:57,356 h5bench - DEBUG - LD_PRELOAD: /usr/local/xalt/xalt/lib64/libxalt_init.so -2024-03-14 06:28:57,356 h5bench - INFO - h5bench [e3sm] - Starting -2024-03-14 06:28:57,357 h5bench - INFO - h5bench [e3sm] - DIR: full-teste/3e21d37b/ -2024-03-14 06:28:57,358 h5bench - INFO - Parallel setup: mpirun -np 8 --oversubscribe -2024-03-14 06:28:57,359 h5bench - CRITICAL - h5bench_e3sm is not available diff --git a/samples/async-write-1d-contig-contig-gpfs-align-h5bench.log b/samples/async-write-1d-contig-contig-gpfs-align-h5bench.log deleted file mode 100644 index 20e3c330..00000000 --- a/samples/async-write-1d-contig-contig-gpfs-align-h5bench.log +++ /dev/null @@ -1,13 +0,0 @@ -2024-03-14 09:18:29,895 h5bench - INFO - Starting h5bench Suite -2024-03-14 09:18:29,914 h5bench - INFO - Lustre support not detected -2024-03-14 09:18:29,915 h5bench - DEBUG - LD_LIBRARY_PATH: /opt/mvapich2/intel/19.0/2.3.3/lib:/usr/local/gnu/8.4.0/lib64:/usr/local/gnu/8.4.0/lib:/opt/intel/debugger_2019/libipt/intel64/lib:/opt/intel/compilers_and_libraries_2019.5.281/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/daal/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/ipp/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/tbb/lib/intel64_lin/gcc4.4:/opt/ddn/cci/lib:/opt/ddn/ime/lib:/opt/ddn/isa-l/lib -2024-03-14 09:18:29,916 h5bench - DEBUG - DYLD_LIBRARY_PATH: -2024-03-14 09:18:29,916 h5bench - DEBUG - LD_PRELOAD: /usr/local/xalt/xalt/lib64/libxalt_init.so -2024-03-14 09:18:29,916 h5bench - INFO - h5bench [write] - Starting -2024-03-14 09:18:29,917 h5bench - INFO - h5bench [write] - DIR: storage/300a21bf/ -2024-03-14 09:18:29,918 h5bench - INFO - Parallel setup: mpirun --allow-run-as-root -np 2 --oversubscribe -2024-03-14 09:18:29,920 h5bench - INFO - mpirun --allow-run-as-root -np 2 --oversubscribe /users/PAS2406/henryzhou1201/h5bench_project/bin//h5bench_write storage/300a21bf/h5bench.cfg storage/test.h5 -2024-03-14 09:18:30,014 h5bench - ERROR - Return: 2 (check storage/300a21bf/stderr for detailed log) -2024-03-14 09:18:30,016 h5bench - INFO - Runtime: 0.0979636 seconds (elapsed time, includes allocation wait time) -2024-03-14 09:18:30,016 h5bench - INFO - h5bench [write] - Complete -2024-03-14 09:18:30,016 h5bench - INFO - Finishing h5bench Suite From 5b048f18aa8a71e2579e6efef8d66a37062a2903 Mon Sep 17 00:00:00 2001 From: Jean Luca Bez Date: Mon, 26 Aug 2024 08:54:39 -0700 Subject: [PATCH 61/61] small correction --- h5bench_patterns/h5bench_write.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index 915b11f1..f2e159f4 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -1229,11 +1229,11 @@ main(int argc, char *argv[]) value = format_human_readable(total_size_bytes); printf("Total write size: %.3lf %cB\n", value.value, value.unit); + // Assume no compression + float compression_ratio = 1.0; + // Report compression ratio if (COMPRESS_INFO.USE_COMPRESS) { - // Assume no compression - float compression_ratio = 1.0; - if (COMPRESS_INFO.total_compressed_size > 0) { compression_ratio = total_size_bytes / COMPRESS_INFO.total_compressed_size; }

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 literal 0 HcmV?d00001 diff --git a/build_1.0/h5bench_write_normal_dist b/build_1.0/h5bench_write_normal_dist new file mode 100755 index 0000000000000000000000000000000000000000..bf82f41bb4530b300a4c12d02cc76dfb1cbe4e47 GIT binary patch literal 259784 zcmeFadwg6~)jmGG3>0Wdz@in4gtlNsXw%X{fCAIffho2UXsZE%q@)Q6P212UB_NkT zJDBk_8nKZGtwu$S%B#^Y=rr7>rIK(_gCay$;%&)+*~8)j*lS4bcBacgkY>=Zh5m0()`&6MdZXgPBH~} zN3XonKQ^xAdHUyCVEX4vM9w?jZ5X|yCwBql3>4viyIrASxX_fBuN|6Ag}fu%jla2d zwU?i~U~b*o6YFX>G&P^tTypY>Coh=OuyM|Ou^07|_uP-ICVPmrA-*DP{1G>K=sV;= zeu^~DtN)w-U;F&mKmOZ4{u>|u8z09SALti9#b8mkrmnGU@$ywjhQ{-xe0lALb>+)8 zRBsF|lJv)`HZ|04+;HZx$IhQKuXxVPECE~oQ(~YbE?)h1)M9dX|S1tjLMDc>uc+(HbG5oW#wpk>6*qGi|5RnS2AbboT|E0=3qcBKY2j_Xmx{ttf|_t>6&Y6Ha5*e zc~CGp0n_@^_$n!*H+fd zpF4lfNpns*ZT-fzO?6cba~tYWPH}*G`HFLvX$fmXB& z)@+!2_C_Qv1as<|)|~cs{CQBmBU!s9Z!e%eXB>*vpPOCzx7UE`WgCbhfsxMs1l<7@ zM(3GZx_IUM1;r=N&GMbOH487V+E7_jUcYJMl~t9EUV853(zWKzu}mJV-&o0BFz=Lk zB`2M7O7STrb51$+>Ctjd0$Ht$dhtTQfxERMOY&wHCL~~e&qXaD+ z$Mz*A@Vf)s_1LPJ!0#Mvjo1>{7GdLWs~$p~=4c<5BT;GyF&q!IGjYyKxOo=s44iMq zb{@8JY%SRMYs2;_Y&SAt{Z`<78@7)a8r!@E+Zt?5*sj6G-^tiMBWKyWaoNd#E9G6! zf-aV*Amkx9SD99wbx zD7H#$=VNQfR))>{U4oMeY*B3Eu^o)PP7h=5&xT>yA9H_&LN5pn%v&s36~;*q zKm(7(KZN|T=+$tz!$Sq3o>Mi-yw`M+Dm21a{GT)Y?eEocJ-=F(NB`Auma+64Ec)T) z?^8WJrh=>U)OSlB{TITRhp|PEqUA#&ufKgKj~>Q>vGA}SW6@uL!otvzA$Pj!XBqr` zIS-x^@Y9}!?WSJFc`wU@XQ$YwAXGeF`8|97EDt~9_*gi9l&8He$V2~H9{PiM%55?2 zp8A&JOtS;ySDS}_S04K;G4&0-8WDM~zE6nVgp{@WTOK{f7(4?vDxQc@)Nb^5jZ?a( z|2=v1JOY0DPwa!0Qm*GeU(8dlb)r8Dq9hn|$7+|Sq};;L(yO(9d6M@ToTU@8an6H3 zkEQ44Jo^8b2j?P*0|lXBW9Js=bK9L+L4$$KSSbW8?gT*X}v-=Q)G3Vw&pl@VsX9x6D;~sj)+G z9{nwO?0J*XQ}|)kLwWu#&BK4a!P9lH@~4D56#BN&Q-8eDOAY-@;}64sj|j!X-noMU?tW9Rl(A3Rv{$*Y&$sp||2X3(Pv*hNaeJ(CIew2tugru0>^%IRM!Ad|g*oF+ zX&yaK<)L#9I~JaK#t!YqpIgAk-?8Jy=3ku04o4Y1Y12oRE}T$7WJYXrsde7&GY{QRZqPscd5Zs_@@Wa)o6VO%sk=5 zJoVa~hkmK)zXLgO_&lS3`1Oe3E`mINFXhp5Tppa?g$(UBJI8LXpj@^~?!4#+9-g&J zq`U#szOS18TWI{JMRG%-kv#UCo~IqJ75_29*5PM3AItuC=Fz{y;Ed#q7qf&P^D*Q9 z5mQEG9=lC8{h}pD5APF>g=Z)ap1wTz8w}3edDnKK8*tX)2YK|D7@S?Z)ZhAe(THCY zwy|)o&x8MY(|?D}xYLey;;+NdBPMPaD>?MRJbF$v{#j_|C*C+X!_>DY$DeO8^x{L8 zh~{QP{rd6-60v^j5f|6hZNj>FrK%8?O=~u+3ze5&v3}!*@`lDWn;Of@L$QUW4ONZh zl{HPsi!EGLy8-KrjX0~Usj6I8zFAl7kzRWBrrO4;@-+?DY^bDE`Ps`?mM>krYVpeG zs`9fhj4oakEnl{@{0ii4tgqUD!?~54s<3A4i>x&1hT8S@byZ;a`10C@^2&`HHek(i ztk0bN!8vBj&FeLPxz4pzKZ3HEcU>zW#BD0BtPvVLtP0an+t zT570`b#>+Is~Xo}aeYm>*u=|%?ZIqkZ>(nps0GVX!S5TRG{DM&(56>xSYNe) zaL>u*G!;MBrq^%0T9js+SRmTE{2DI%nAR`q+i{g=P_<%nJ?d3oyOFiYYTL4Nq8EAw z6V}m2sa_KZpJQ6tbCi`0Rds0J@|tVv;Y)REE~lGcOCO&HU&Q(P@~Tan(EJTe_4OO! zdWKjH-)Y)ZRgT8JVk}xY%-Tp@>#6JH5bha;8m@voNNel#=?CW4*GgIQL$K6ZuQA!H zR#vWQgtti#S_WO^jWuMEH1al}(1y+H>&k1_)^1+lC7MPh%Ga-HV6PHh0A5dCxrI<( zS>IIdRik#p+FBHddNvaw?oX6A7$Yci^_m9wTh;o?_4Oem@004U$tA7dxVb8qhJNf9 z-Ox}qAANjNLp|%EC3v*Tv51WuS&1A*mYYMXL)XrwRn}}8McW|t$PwN&7ALGShV&T3 zwN0>0j>Zkd1AA7g6O`i?2*$kifpH;QVbkwvHlSveD}*RQGF5JD?cpXnv^`0}b| zFNsc&ld3xvd4X@1R|RRhvUu+(V!$NMuled5Yc@9{P}hs6TJEvFwz3>q3+K(R&du6T zb+u1Y9iCsKDsw(Qh8NGdcr4-?RAdx}Y@ctaI>|4}cN7xGK-_><^)s|P84+|sQJW1G z4l`$QE-n(!8;iJNEMn*Zp+H8X!3;4UA}C|+2!-+Eb!0f1*h}pEcD4Ifra-N#>sse?lINFPt)Gr z8`3ln6G!mqUm(L=k4L3dOQ3BW?yq`0dSo6q{^`-<#^l=2smsH_GD+u8%ktz@AL-)- z86`YE9#u}u(Ug{_dNg-}*nm1z8~5Iya(lHU4}XebV(3)B_152}*49qpQ&hFG4uSio zpZ_9e@)JW1Cf#%-b0&mtFzLqkGd(`^8SMERc=K{OLP+k#N&>qd%OA`MVvFOIck{7e+hxpvQuUsi9;^aM7?^kBg z5A}#RR# zr!D%2EV^saXIu1Pi*A+#BzMH3pJ4Ha#s&Uh-|wDe(dSzHg%;gg(_r>Ai_T{`ykC(; zKiMPVINPG1X3>i+`so(E#G>qE}e-m_@I# z=*uj6y+vPP(VH#$$1Hk_ML*x7w_0>>Er{9e7X1Q?ztf_xwCG(HeU(M;w&<%ZdXGi_ zghfwUbo)Mj%A#Lv@%LMFjrf{5VA0j{ls;(Dt1LZfi(YNfU5kE&MIW~4H5PruqSspV z(D=ar*ID#Q7QN1*7h3d<7JZsUueaz$7M*L0-fy-=-|P`_EVk%ZTl5l(-fYn$7TtSp zhuJZUex1c%YSC}7=w%k&eqN};qPJN5H5UD5i(YThw^;OMiypV=Ef)P2i{5I{6BfPQ zqPJW0PK&m-G^*Cox?i>C>3z)FD$U>G@3a zahyy<(#JE+DMY4N(leOm)FD$O=_8ruR4Y>`>BE`k6e1In^ubJX>W~@!7YN6WXS$H- zw50#}DAHW=%?wETC8jxb$fP9wXQugBQKm=I&oRv@M5as9zhU|arrRa`3#K`h$h1iM zQKmVC$ka=E57V4FWGW=x%QUA9nNmsrkZDd8G7(9ChiOg`GR2bq8q?F6E|T=^OmnJ` zDU|fBOmm8m2}$}hO!HB%%X50I^b)3LGhHF+)0qA+)1{K0&orM#$V4Q4 zJky*?WQrv{gK177GDVU;l4(vIGKG>poas4Cha`P4)0{$NhF_QVXS$f_w50#}2-5SI z9+31)OwVUJCFwsi%_&8uN7BzRy@2U1N&klFg-o|g`WH-ds*!1t^rK9l!gRf)_b^?; zbcLjQnLd^2Qc3@iX--Kp5lMfCX--8l#ghIS(~FoclJxCNb4rpal=Q7kpUHGc(w|}a zET)HFllEsi!gN~F*D}qiOJ+dQo0wk0bV|}!GJQ7FJ(9khX-;V}U6Q_-=_u3flD?4X zbC_C4D&4oZ@6cl0KMePHi&7|CIJ;x|Hd(r2pBEG^a9|0ZG5aG%wLIDM|mCX-;V} zJ(7NoX-;J_T}b2jmcMx~EK59bSuF8fY|Fmk(pAg)QV~3P6zkhPu$hOxW$lrWdj)X4 zQeAK~teWHv+}Ii1H@+uH)eP$gJxIcv>FV}}gsXZ^!O>f#+y{jJroYHx_rE5@62r0G z?pd*M567PPSL0#6h69a;T=|wWKK~p#d(-ZZvc>o!#9F5?o#E<pxm8K^iEGMWXZjLI(4Yrh@7h&3y3CPhUR~Q`f|a=kGS7Px1q{@W~G?*te5p! zlQqCB=C8n+DjFn-yD8rWcXh$s-341XU=J#k#8d7Tm>LCn0+&FI`*U>Y zM6?I&Bjml?y+dS@ka<64dMGndWm~kwc25lMs{XWP%P8rTRAQQ`#xk6<2gZCcr#+*w>OxxbHznvn9 zONX_2X?ShkJE1;?woHa*BHlTxdt!+~_pj{2@p^O+L(XpFf#2rXnv*IeEqxO+njo3;OQgSkSiI zf+lJ~1FEcu7LkGmSkSprP%-n*ONI~0k3%UckV7ft7#(AL@G{}N}Cyv#b zlV`l%6x92_Ii~ydE3DCu+=Aw7L1|T1>=%SER_HcKL0vg{rmL8O=H(VtF9qG1ThJrW zg&Mi4ti&$}F|p8{ECqGvV{C<7adm3jHasxVyEvZXxobD&rs~F9*(X1MNw?RYB#ZDnndSysqrtz zF!Y)P@}lm`1&2kZ%Vff>x+a8i@-P`0qbVo+(t|UQKED5D3`RL3A(c4ENbJQ}8r|!J z_vV*~Or#30_yL|k@nyT6@E6`fXp)xmShFI71V(2kT=o_slU1bCh&)b_$DQzp-$JC& zh9($MP#NoN;~aV*uQ?)9lN@tl&tbI7aAqB@&nPVo=d6auk4Mt=V`mGQ6W6z+fjg5G zlIU|^dr4Zi3!Gih(v2gw)nFpNcIcW&CwNlXdQ5gtEKyoy=ijaQ7#Bqxaj|r^oxff4 z=>$}tLVmHG->CWhCLi&qw8YL|rTGIUe*pOrJAZ-Z({ZUEbuW$C`BODNZSvvBrKNWM zD=%s%Gx_LSrDf(ErYM~x=Y5evF*wWUi%gUA?9R~6&amZserEud73dI;OpHx9uQV|Z zT969*1EGTO3uKp;p%aW(FS-ybXzUU#^r99g{Oo;MK441~1ya+E)K*Gub;AFXUut$B z^(U<2v8+}~wL0O3{8A->RF9F`MyYL1cyWHI2&IfEy}Fh<|eB<7{ zH7y=P4{TNl-QhE{wfs20mYCEbtJ^HrZqshMO{aF7Zok{~NKd(RB$l|p24i(BaSvw{ zu|!9+99Fc%oVa8-N-6k$hcKMJr?Cq2WkmUSs;M-Y#*8QCXqM9^vd&I96nuZD2srns ze#|j3aMb9JNy^v1Fa~r6``OVM{FGmst~0pO2&pIlaSOpND{f=_4n~NzUR8B znSY{*ypWCv6-^I40~y!wy5JR)pT6h%UyCSA@2nWi3NL9pydWEqa8!7C`6}u1@l|jm zbRao8;cJswUC)-ag3OPNY?+be(FrffFKdOGPZ`-uj4Y2%czk|YE8v`EWVyym%se{b zM}M3bvln*kdIVu-$}h6Q&Mo=%cwxuZX>6i=%l6O2UdGnK(>s z<$Vz+eEicApsq}Yu8{yGY)+eKbao1}bC0A7zOTjMsAL1;diW}17OG;dmf`g-VipeR zWr^Jyx}JNUp{p2$d!Y;SPV}0$M%g$k*$iA7!cJlc`!Zq5MW2SSf4Wu(JMqu7g9%i6 zNSHWf4jpQ^LX@mEHDO#LnpWDQkVh-(QKor#P274Q!{VYXAUD&h(rgmlq!h!|sa&lA zS1ZE7>>OR2lnV{+=|Y^97-#ERu3QMF9v9;&!<@}^oN{#qTwUObo=~{u_xeSU@gtzx?8yrSUp^ftqgf7315BDemOePeuOcxyo9`#@j=Mzhbj9duxtij?ntOKm3P=4$hz z?giPp9{s^v*(EFRrr0bru zGNymxrE$Is=R=2Em_Yl6iWm;C4dYAe;N^T7+034 z2^aT2prlYQ>_%2B({B4C#h)B{zn3MEK(elqtU-UV0>C*EUXMW2l!~<>u=L3qv@~#U zGu8oRG1ptfbzh`S1X>hf3hNe$LS-$(Gj`dm4=XF83g>~mnk>XAq(WFe4~2GhLixRd ztgWg4LCOP18a1G2j6DdtH$$f^P(m(i(S`LGfqV+W{Z9DypUZfBQnKh;8IN0qzpYCS zJLxb|ju~k+V%(Az-Ed@Kn-CYFg73$L-RVeC>hwLEk59I!(m@i$GO8dd3htJKe^DXA zP|_vL@Ly@Bw$%gK#`+R{0UitsA-0RL@-@K*WrZ7vU12fW6(+Xq8f)7r=-cj*^4sp$ z;;(nryu+4xd0hl~Of`19God=cCZg|IQzq-`txS5h&Rr6wpSRVM*k<~=f30H(TT+t{ z5rhR!8!rDTJi0O!gH0q#w5@Jsq-ewCQWhsDoyHmEl$q+APWawYI=WRyx9I4DtJzcH72RG}>y&a5Z|4fr=*)6eWBIe(8@g$~ znL(q!-Oo`OGw6sM%(SqLGZW09#e8kv>@OxPg>aJ!o@rCa90vaD6M@{!!{I6m@KlI# z6_IW;Q%HD=`dY4%X4PydffL}8T0)wfQX(r^=sQ()ZfU$ereo$f6_b=QK89xSr^9XN zhB=soVgX9>shybCB-@d`_&aeVgn+nM)kFcqPorh?S1W%S{9=A*wT1#CJ-X%F(ef$y zll#^|;DgYceT@;^IVwaq&`5iK4X?Jaj3bARW;wLA;DDBIl|x%QiB7bTcgv^92}fcX z?>o^U^m^nuj`xRMhyEd1Tz+Oh}2hwsw!-G%o~qVXp@7IO~L(r{l=+}ln3hLs-1!zr3xd;u#O z??QPP53ou!5xm{e@ED_kB0q<1)H~F0sCLO-xcgh0u}-5p2BR{Oe$=$ z5cb_LI$-x0*hy_254(_oeZy~wJ)}&w$^UL)=j~u%U-Is-PxG-CWn*Vjv6F?^M}95X zlOFa$@hlI!kb(V&@Z&^$;%Mw67Ixm22KHN0@5=78eeA{A*qK!9WFhuNiaq6Frvt_& zc-Vyu?0<(-CE}AtW9JH+=jyyY4(yNO7R|eGb%}TE{$?QYT|MGsCkwH+42s?RJ?uqU z*o6%2rwR7Sqp`nkVdrgnU_bQTVUGcrcGFTh^RY9jb|(w5?|oXZ4|v#TXJHpIu-_n| zsBkp)e_7c1xB#%v$BnIbVfQj0dqp;OCKWqbh<%b`AM~&nXJHpIuVA@didgKHy+w|kCBhG5$Z^jQtg|%B#(E&I znjvs!0Qk^%3V3!Nz}L5m|2MT;XxjyCw3Sfb_$8sv_M!4D5&i(7-U_cu#7`Iv^&mpk zm})_-y!Rd2wm2WuPKDZKLG4ngorHR!KrQy6@+=Xq$Ee~y4<|~*7mS8_2%%~SwV)<@ z-yzhJd{8m_r(t>*Vu6JnFSU#xz3U$DO zI-pSd3H1Vj8uOv@ED_#_A;SHW^tk1tp&mx48V@a~x8at|JBkCP`JfIe)U*ZFy6khm zIY85u`cQe62=B#+;GQl}SB-}H9zxadXF;9(PNA0NgX&#USWxYCh1Y&gsAWD>o+ZNX z2ULx^zr>@;h`PfdJF-v2FOhT3xnCWeATb!rB8ZOT9Z8T#77&X_40mHR!Iec(az7{k zoRW+6p3(xo^D_dd5CLmlqlhD_EF9fmC_(q0X>#b`d=IyRX5)a%nPNG#m5}&$moqbI z;miHv^>XG8)ZYpJ3W3&K&isNg7hM7x<#L869Dfw;-lbv=P8;-=L?WIhbpMKD3-s?g z0VQD?M#K-4u|VgH$DkGiio(vm;$R8VdiE6uD{WnIaJ&?&nVa+8*dzCVq?5>!4g1MI zU{F+`loEQyAtp0-CA`t}H9VpYt}<}xf)@$17p#@htVG=b1}ZnIQitG#5m$( zSt9(g(HIwvfl&v^cZ|^=8FMkd z&B(az5!x}Nu?hajvqbnic(NeJj%SX6vE<)tYkx@0#rQTuqT5f56Mc+4ON0*qMjZoE zcv}devjSwjfsRXYIp;{g(N6-YHzYDaB3b+)vExVfkjPML4~e(+5x`^-u!h6|9TJCe z9U{YJ;+`6|b)utQ4sFdiU`T9{Lt86}IwayI-km5y7xk9Iu=n2Om#Cv)2deCZe}0cY z3OciNAU?Ayvah;ixhRYLG7)(8R$YD1^prmIv3jv zbdE6Z8alg<8l00E%iv5Zbg~foO%IbHSTfWRE^eUrutuYxf6{`^wKfBt1JApLUgSfc zoeiByg-#YifA}W?J?U9p2R;wFkViqk)Pl~XHUqur{}1TJK6K8iEUPoA(8)sRhbZ)v z2c6|(!O&P;$fKZ_ThO`EW}tJJde>Hu_|Rk7(3w=|WFhp@y<+u#54sMM9&{m(g1*Lr z&V@Duouk*ghFIcr@`vTK6jBt!hDU^OFfRuZ0YY~>~QXH zftVFEaoS3XcZndO9>fX|?IpH)zbehyRbf)ALKar#tlb@#J0%C#%=J5(1;C-f4kiS1zW_&#f4QHiSRw&9c8!8 z#HIns!q!g4|JZJ6#fCY*kIhwVSh3sfzIGq6ne{l>jb~W@LXk=MR>=J&K5c*)=z{E+ zyAEY?UW`5G^$T$H*T0w`ku3gXzxzA(WS;>^AbIOw_Y%M*BH%x8cGLbYdbU0at#Ocd z9QZuWiuUD+Xy@|8iY_!g@84(5?zhr{fANdZ+5L}EM<@K^w`F#ZyZzz6;1mzWbPwT) zi)c6Nsg?cHJQf=5fxqkZO)yEGdOc?J+n^m!AGLUkT7QQg+%f^8tf_pod(=FhbqMD1 zd-s8PMjsIBle$w;pImMQD!+jbhk#4*+0Umt(FMB1 zlZ5g&C&+4#uBSM1?Iur)ei<($YZ4DcphGya$77?Nw1TcS;sQ>q2LE}=eL`-hgcNXv z96F?~bg!q}KgiV-{fBS-Nc9!*BtXurL~%J`8VyA#d1tMP>Oh^W1MqjT*J)dB6T5c;zd7ZHD;k2l169Nw-i*& zw%xbna*j_MVjE?<_YwVAEpnFJHJX@Zr@%7q1*)|jTHCXjwr7uYqkEtS7c zACfvv%U9AuEeX#eA~udHiT`6PrzFMyUAc9t>q*`-e-{2{<%%HM1+86KTBS`+9IZ7! z{wt*Qr{}}pq$QPf89Q{c>m68;KHM1B5 zZnl^gxZ}k^s!!%6s0iXVCmcL;;*-FDdtdY1E{P2l$cQ=NEq5^9_qiYVe>8}Mc|aa! zrp|_jrpDTITC{pO7#WNQC@JtbEjiH%e-DEO&ZZ?pH^?xiF(~;%#-O!OC4+%J&a5*p z=ZG6Q&NxyzWYkcx38xRAK#S@cyp9sFM0l#Oho|s>l4d3^u}k`xlvI;ll7hGpV>m{{ z5ZZ=jz$yE;Ic1nPr|gU7l&)n?X9uSojSRIUIA!-DwJ%8M>Ry3&#Ymhk!)aOa%%ieAA0o=Xq zZGo+vHc=vh!h7QKiXX@%gUXGU!nCuJ+rX~AKNHda-XE%^y*ZM50gUZLSH)8|oT_z& zg)!8xUUmAO8$N{6Ygu}m+`o0&WWH+(b)Q1ZCgNMAyzmlbqlIH_Z8X1hczS{RX?&+l z7r3<%PyUd&L@Alf`)+3X;$Q#w0p%|Kw=N9o(y7|+Vcj2Olf?Qa&eCJ>_$Li$CaM^a zuSY;+2SKYLRAs~W*+!kP87hu_BEAFrBxEtW;;H?Ftjw;s z(BM5Vd#A{8kJ(ikC79P=V78zRG)2t0a2mR!oVG1P1$Rm;LL`PPF3Naaghd<;NfT!+ zZ?oqpy64(E`-GvyWFq1FR&?FNyzBhySg#HgfVH72( zlnn}((*%VJ|K0A!XKhe`6Uy*EnEl^^!oWjN12!mJM-vpT_;p|1GFN z1(miz;R2eVaH+rBjq(E%e)G{%#*z9W6--HFD2Ok|xjOK*Go?>7i<9XXi8oFAo^GiV&|!i8T1z~o-05bdZU2N#4B z9_&bKhL*+^Vqm<0)_ArP{>bfS2)>hXB+;kFU-(^?-V>CL7x4;l30jXA?wh6Z5^w)N z7-mA@bj)V46Z8R`33?SaL8mhlAgj|3ta>{-<#0MAc2DS-Bw{`ti_7!}T=k-KTprVy z=@FVCeD0TIgeasyZs>3L2t$9PB9Wg28J-dQnA_K%5T&P{H; zi@Kk2qR)(}`|D%r{-EkEhwk2ke3adw;^P<&U#jJMvpFcgF_xw$X)bBC>51^^g4KU= zV9Wj@cP||#nubXp{TwO+126fO7+Af;7~20POff!CjK>Tny#}d!_?=KpEvLz$jb9O6 zif4v#aN^8DpecwC6TK6s06bh+9bwf*p@Cjxwc`9}sK?mW!B3Q;tC#Q~tw%-|$P)1< z!RW{yS3GjgJ!~<<34gr91huu=>>AW6zDc=Z@`e{E$0f-Yo8wI3cm*8EF4A!|=9jEG zrVGdGNj2Dgdf^&Anmsc{HZWM19hg()~mq3m!kMl z)zNtiCC^3P5UP8Hr@OEPpuHG=mFV6F9w+?m2A1AtJ{gKZ2=zs~^dR*fTOa#Vd?cuX|MGGX=FTJdM$;F>D)q?- zkvpqL6o^`~=T1mR)5(FGtyUDaEJ=q9^vvN*32;{IfjEq;j*y)VAueMo$1 zn(;7kf47+7o*o?f;>Cc>U#u-I^tKMtccEutuDz4F3RJJ^&!y7%0#GrwVZUW$0>0aE z$rdjH{ewMnVM4I^5oigThxJ_A+k)5K#DUz)#Qr5vp*iUpUd~!+@I}Z$6Jk%nzW7o- zo1VN5WnsimvJQRm6b@_}Z5Z_BTTm9V`$2bPkF_C)Vq$?k@;4*j2^ZZejWOGiIvkaW@QtXXe69g`Z(k!)&bg!x0YJ7$ms~{j@7{(sK;uL(NPJzux z-c2Jq9U^aa=nqRVmw;dGDQ{Ohaq8bPGQJVZ7|*v$)o?K<&0ywGFMgF3smPUk1#;+$ z2lvINzpj|^lpD^37Vi9ven>Xysw&s{I<>47%-n+wJ-*2+ao8^LMk%p|yy2C~Q2-An zQZ`@BC+NL?@`YDv2Y&QA5srczZ9R-cED^q9Bfmm>6$b({ZHDwO00cfXLKZBqDCchz zr!qXm+MTj`3%1}}6GeI0F3OuBQ#7a(Cb_hZ7*NRCqF$ZW{w__lCdM~+5t zI7bYARu~fI23bP#w<5nUz72bNz9VPO5&r{LE~dzw#0kF_g}=maG2$z~W_BCCR*H)! z;oE*ziqj}~$A?i?ZjNo7HnRXmPJVxzLbP%|%)Zn7yh+A4&!|`UG$vjN^u+PkbN(l{UkYl8^>nVu$ z)G>0GLQ2MuT?b7HEx(taWq5#n;z1_OQigevb!p=MGKM$IdgOZm<~m02LoH6E^pWqy zxNiHdShrbADNMFX3;ewe_?#(ypEeDFQCa$i`^J|EwFTU`p9rRc?}v{kFWd;Hw~>Dx zF1;{5a=8L)YB;dHa9S9gP76-?O?onTl|Dh>w4#6{>!+W&U?uNmB_BYbEpzT?fb>3A zhYHq9O>w1`__cn+O)6LeDl2%gn6cg0$ZuQh8e5}Wi^62)E3sO$}8R@^5vMeW_)?Rsvrd&uv?w-L6Zu)P6vWzIL8&?vEwRU6PyTURM zCE7aZ0hsKu$uY>%2~-N+#V=6L`vVE_2H zX?Bff%Kmtajp&}8#b2P~7_!JBS=nK=5E}PLCs}|o*)OQ0l z6)Z*5KPXj78VcSc#9RbQdQ_zxFy~_GroDQNo;DK?@q?$vba%W>D)Jp{87!SnlEcnI zIouPI!~N56z*=dFhs4%d)8LXw_M0Sc=OQ^^lDdAt?*P&HQkY?Ck3oytYn4C#BkOk` zTji#`yzApgA`wr4uRA~kEhk?fqHjFq{D78dY%0b4Xf)+Ck!gt}OT=<)DA^ATI<4^;c zwt$_plTsczJAn!o6>Bqx4q_O4h?EcB=*?FdZlh_AkI_L6jxS1upFxH3U3(zqjPb@P zuu^c_(Fs2;8I6Y~mx}Mn4auR&$>l*Rxk}E>1asRL+2H$V#qFRwN8Gy=HlTNC3)e}$ z%X~B5&Zm)b#@lm*Yd^Vqs2$h+tgv+vFiSXw!GYFf{hcE&U`b+aSFG*A+A=S6KT#(C zh(aD+O+F5VG-risl;G+9s)Mj!G3q#=;$|EU`mYqETnxys(>k~<1j!_37`So6*}7Rg zBo&$U%-k;~(Ir7laWrQD2Y*I8NSc|^GQ-Sh<#hCnmfXZ_j#Ga2hjFOGW%xF?x9q6Z zI8>@Jf@7p3cViQlh>sM>Lw6J{r)J<~gE!sS! z6+F<<%B+G1(1++k2$CW9!`sZl;Rzuxs4i)RZKUzj?bI<5=g9>?PDPq=F}i7=0&e~S z0Z#%C+KYn(0FT&!w=v5AW`+SQr=tOro8{_c-cj&!6m1oagmj{^r*Ow&A~MlJjt~N7ZX{y&KF$MKt_SX zKCTc=qVH_^xVD2ya7_wu$?0fZWF;;=Dz3J4w!Nl)$nn3f=O_ZYV0Maqj8ayxb&#F{`PD(u36wo?l8ER$ij8B;F=9Ga8>yBDpp+6 zY+O6QB)CX5xa4#+F0vAr9u?Q6Ik-*$Pcmt6F_DGq)9tiZvC+fM0ew?G3>^p&FK2}a zM2MFeAtvx-RDf8HPe*YGv;)L5C>7DU43%V;)HtDU&lNoIh>j7s{FPAgug?+40szSF zy{yz>@+ik>!{PgS(!#&t|LMTGxoyQRXc8-uYOE-yqpe6*T2YT`#rOTrYu&=OB4|K} z!9Q8L_z{EBdXJ>2WlJW7jt9?!D9J)j6?B93T=gOQIWm&XgOj zn_-K{b*D-^DXzcVl1NgsGvyBu!LyiC^OUqh zLMbxW7?!!lus_!rI$s;1olay76l&EmjkH}^7Em`mPzoqR0gfy};uZyFT(ckr2ke9p zW?Zv_l&AItlAJa&4=wzVlES8DelTr%#^1%riw|*qjQ8e+fIDKc$MW6M5^0F=m-jlo_Uf%Bl2E!>Nme zmq?z1BgLTDV%aPdXo@i90`HOpu9`!BQsd^IIY2LB2_OOg)(_zd`|rO-;OwU;S*0e z@!5m__&b4rr~qlS;O{f=C%*;!!8XRJW&_^~n2!$r+wfn&zhTS+KZG@$x3&KH0^~Xi z{&a}Z`reQ@mi6B+QZ0cL0ev@{iQ)p<)4+&bnubO7W>+e8rg-kgqwjJ}&Q; z`izCJz;L2z1U%pi>1|Cgm2$a3XpusnczQsbVsv#Kz->=ERbrvU5jpX$hs#o}sg;hYdM& zD$i)Cp}C&!p<{Ul)=;t)rs@5P+6Oh(VR6c*Y0y?c>cIj(Ut@@NV>uE3Y0ZglC5~g| zIKJ^}IZi0px*fXYd}6`YXK|j{hg~fB=JYe(sQK4P$HJskl8Pk;aGHv}`kbA&f_eQh zy#3&;zyZq~ul^oocgH@mC-wxJV}MtByZ<~BdCAQ8Mf3kI_|elh|Ly~48_n=cY96HK z-G9cNM=;(Zj8{MKl_Tf=cGdxg5iL!|v_J^*1cIv&aDXG^Kp0jC_)6*OBn&CAO({9*UF|Q2v{}75d@!-r2+|eaNkce~LZiS#&-f6CJ>R{!5f% zd6{S3eAo))z6kHO((_m$n6?xjAn(StdT)K8Y^Ewh9~CZ`skF%4;YWi)8J@8_JTnds zC(bs3jodY~4-Jogb?RhsrnHvZr8lzlkz)tJ0*~_u+u_QFh9bNiHW+gWa8cc#4-s|4 zWAY)qESWTB4y?4KW^_*9k_uM8FM1~r_$+<~Ne`bx?*e6==kTD|>u|U&`gTZ%qPKYTPQt0X*)*;#^$8S5j{t z$?8IM=}zFEH?n=aC-kFT)OL{2uq=B>6379akME#!iX!}9hfT6(dx#`8voG4N6>dkX zcR7cjzGu_nne&4NY{$Pi8e;cB>$clXmVl3pqB=_|(4U(gk^WQuWR@@Ft%-%Smdg3&yCc_|nlDv}2;v8wIl zed^MczO!Sf&C<0Ox?l!~@nK6_98KUqv?)(ozF%S({wX4UuK7QW>;~up@LhHXUVY_&dPGeVkG zRLua?3_uNifNJm#>|3I#6*Z00DJh`F!(;Jsk0Jx5s{Y%5m%65*79o+d2Mn6xTK#Yz z3`kf3SnYBZV1f+r=(ebeFwp-xA=61n@I8#tA!B6rZ9IfuBjS9ELtRMzWuKmoZuKoE z@QP{XTQn2b<_}cgZb1p{`i}})aS9mvy;ZomH&uJP_e*ihn%40GnttWnq;N+AdGuG@ z2Z))|K6(F>u8aHS>-AQ_)o_|VS;r(ZRt5x~JalY4^}N7SnW>AO;;FNt*Xa-m+f()b z@aP+5qq0rF`(B^CWU6Jp4z*6lE7<2gan2llDV0y0Gv&uS^QFC1k^jWGguJ5|@}>Z? zvs2l# z+{13Bs))7oNP4ifbU+Fvq+k zO;Mvfa`0a^svwaeM_)F|ew83R_sUU&4xZbAh#Hn>2!C`H(VhG86@?!w4k*a++`5zmO;pVjRffHX=pN|F6J#7+!t2s zm*QZCrOafS*#rs4yf9t}LW!{ID~F?p5Ilp<{~*+-|Lqa~)A$OyTH|}%$6yUqVi>T8 zadhRA6fPYO6z_lgLK+vyE|&_zpHayIW^=aPdmUOi8eGK}x|6OUg{unuC#+nG`pr*y z5B#Ft_JmyjPcW|HVDuH;{yzzQ>{`L&8yCg2V^~b$A_u2vW}eCg3K~q#QF%^q z?B@UCwWun#ND}#I6}+Np;aU~z25UEp z@4*op=OCQk$ayEu3(Yy2r*s<5JGlVS&K)Q+OQ#eXgN#Yf=95)9ZO&}Z=6?Qu1QLk% zn|#mae*WW{KVb4boBR29Y5t(e_iXOxZ_|9*oaK8q_w(yC-!=K3&Heo4nm=svJ)8Ua zCulxxPW_(EdwiQ0a%~E^yk0HXx=s5L2)JfNXZdLps;`%=vzfj>NEb8xKS8>L>77A3 z!gO1Zjxl|GkS=9k9)PFxLlp##zraNg(MsEvn;p>k~FzG%us zf@E(A=2Kw8fau<)MqneN0TJ#bL%G@>Mv=5m8a5q0K?)r6SJ-Z>cBG!{ya7R$11**(z%m-a5u*_FY$Sq# z%vXJtKro?crLR6f0E|9@O=GG*dX)MLME#SQC1dilQrQMMM)>z;4)@`pCDF3{K8QkM zOO9zE_GHgMzw{j;%Rs!?_gH$sGTJ~VjY9Of4K&bTro~suCMt;6`)L#r7zw!jB39Te zK{Fj>u^c}pip8T)93&{xnSUZ@H0pCl@&9@~Q71ExGDkZ|`VD$Jr>xRlCKkkR_A*U( ziTY_8xgajyB5pQ$%g98_CxW`zec>{Qd)V&uonF3aEHTS-`ZEOEGnqMlaZn!~Q@!oc zZ^8vU_0Ra~*HTHA`rp;D>iaT3_gx0+4;WLu-4b1v`l;xx+GVdArT#`y?`G<4^#_ir z-gdXemipzs`Wr^6FB0{`nZtbb2vz%?=zcaHLKTh@s&LE~s-A*>v6T@KY;SxpAlp5; zTfH$SRNXoX*r(UgtgmF6jT#A66PoHwN$_LO?}y5~W(q>zmq+P4MfBY_^pVlbUmwMM zurQ}ECBw52MvPKhm7A$po!81x>2N zeHdK~be-~WRX&)|q`~4=t2{?8j$jd&~~aEbsfxH>EbDC67jem4!sMu`Ow#~N0~QF_~;{7R=MhDu84b= z2CNZbZ3L4O=N{uJZUYDq{lAx)miGpN%LBm!MesTiU_~I{(Q|>8?g7zK=NnwU3sfO-z~_N z6w6JqBzpqM?IPJFWpbY_DW?17R4J2w)EA*mLYb73#7B~WvU5e*R#C?NThw*Bux=Mt z?z76}NF2(1QVXH8+I4-7eK3BfNOGSoDRn)@lC1+i zRFc%SKd9>`MOmjPB%=x-v4F-rAp{!ZF-YJ=0ff* zSg6G-DB4^!`ck>TC~DNVv&Y9Um~(z49&@ZeGsYGlPkgL-FxMP#tq6U9NKO?=?z1H&LPssh!Jy2?rDx3+N$#^HWh6hul6)qRyj3I@ zi6r;glAOk7p5XgSrk?3QvP>jnBFTNWBrjVsw^@?=0?7}GWSK~EpDoENlFX$lsiQ8Q zHv;KAB}wpg17%N0*O@5FxX*3Vk%0A^!pb`vxGk7lE^oAkGJoW=O{T7)&-&rFP9&#^ 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 & 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�%=-p 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 literal 0 HcmV?d00001 diff --git a/commons/h5bench_util.c b/commons/h5bench_util.c index 5f898c86..e6f427fb 100644 --- a/commons/h5bench_util.c +++ b/commons/h5bench_util.c @@ -851,6 +851,32 @@ _set_params(char *key, char *val_in, bench_params *params_in_out, int do_write) else (*params_in_out).read_option = READ_OPTION_INVALID; } + else if (strcmp(key, "COMPRESS_FILTER") == 0) { // new + if (strcmp(val_in, "N_BIT") == 0) { + (*params_in_out).compress_filter = N_BIT; + } + else if (strcmp(val_in, "SCALE_OFFSET") == 0) { + (*params_in_out).compress_filter = SCALE_OFFSET; + } + else if (strcmp(val_in, "SZIP") == 0) { + (*params_in_out).compress_filter = SZIP; + } + else if (strcmp(val_in, "GZIP") == 0) { + (*params_in_out).compress_filter = GZIP; + } + else if (strcmp(val_in, "SZ") == 0) { + (*params_in_out).compress_filter = SZ; + } + else if (strcmp(val_in, "SZ3") == 0) { + (*params_in_out).compress_filter = SZ3; + } + else if (strcmp(val_in, "ZFP") == 0) { + (*params_in_out).compress_filter = ZFP; + } + + else + (*params_in_out).compress_filter = COMPRESS_FILTER_INVALID; + } else if (strcmp(key, "NUM_DIMS") == 0) { int num = atoi(val); if (num > 0) diff --git a/commons/h5bench_util.h b/commons/h5bench_util.h index 5fc8adb4..7dba89ba 100644 --- a/commons/h5bench_util.h +++ b/commons/h5bench_util.h @@ -100,11 +100,23 @@ typedef enum read_option { CS } read_option; +typedef enum compress_filter { // new + COMPRESS_FILTER_INVALID, + N_BIT, + SCALE_OFFSET, + SZIP, + GZIP, + SZ, + SZ3, + ZFP +} compress_filter; + typedef struct bench_params { io_operation io_op; pattern mem_pattern; pattern file_pattern; read_option read_option; + compress_filter compress_filter; // new int useCompress; int useCSV; async_mode asyncMode; diff --git a/configuration-h5bench.log b/configuration-h5bench.log new file mode 100644 index 00000000..777421b0 --- /dev/null +++ b/configuration-h5bench.log @@ -0,0 +1,28 @@ +2024-03-14 06:25:11,586 h5bench - INFO - Starting h5bench Suite +2024-03-14 06:25:11,612 h5bench - INFO - Lustre support not detected +2024-03-14 06:25:11,613 h5bench - INFO - h5bench [e3sm] - Starting +2024-03-14 06:25:11,613 h5bench - INFO - h5bench [e3sm] - DIR: full-teste/85d5e926/ +2024-03-14 06:25:11,614 h5bench - INFO - Parallel setup: mpirun -np 8 --oversubscribe +2024-03-14 06:25:11,618 h5bench - CRITICAL - h5bench_e3sm is not available +2024-03-14 06:26:09,624 h5bench - INFO - Starting h5bench Suite +2024-03-14 06:26:09,626 h5bench - WARNING - Base directory already exists: full-teste +2024-03-14 06:26:09,630 h5bench - INFO - Lustre support not detected +2024-03-14 06:26:09,631 h5bench - DEBUG - HDF5_PLUGIN_PATH: /vol-async/src +2024-03-14 06:26:09,632 h5bench - DEBUG - LD_LIBRARY_PATH: /opt/mvapich2/intel/19.0/2.3.3/lib:/usr/local/gnu/8.4.0/lib64:/usr/local/gnu/8.4.0/lib:/opt/intel/debugger_2019/libipt/intel64/lib:/opt/intel/compilers_and_libraries_2019.5.281/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/daal/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/ipp/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/tbb/lib/intel64_lin/gcc4.4:/opt/ddn/cci/lib:/opt/ddn/ime/lib:/opt/ddn/isa-l/lib:/vol-async/src:/hdf5-async-vol-register-install/lib:/argobots/install/lib:/hdf5-install/install: +2024-03-14 06:26:09,632 h5bench - DEBUG - DYLD_LIBRARY_PATH: :/vol-async/src:/hdf5-async-vol-register-install/lib:/argobots/install/lib:/hdf5-install/install: +2024-03-14 06:26:09,632 h5bench - DEBUG - LD_PRELOAD: /usr/local/xalt/xalt/lib64/libxalt_init.so +2024-03-14 06:26:09,633 h5bench - INFO - h5bench [e3sm] - Starting +2024-03-14 06:26:09,633 h5bench - INFO - h5bench [e3sm] - DIR: full-teste/5e428961/ +2024-03-14 06:26:09,633 h5bench - INFO - Parallel setup: mpirun -np 8 --oversubscribe +2024-03-14 06:26:09,634 h5bench - CRITICAL - h5bench_e3sm is not available +2024-03-14 06:28:57,348 h5bench - INFO - Starting h5bench Suite +2024-03-14 06:28:57,350 h5bench - WARNING - Base directory already exists: full-teste +2024-03-14 06:28:57,354 h5bench - INFO - Lustre support not detected +2024-03-14 06:28:57,355 h5bench - DEBUG - HDF5_PLUGIN_PATH: /vol-async/src +2024-03-14 06:28:57,356 h5bench - DEBUG - LD_LIBRARY_PATH: /opt/mvapich2/intel/19.0/2.3.3/lib:/usr/local/gnu/8.4.0/lib64:/usr/local/gnu/8.4.0/lib:/opt/intel/debugger_2019/libipt/intel64/lib:/opt/intel/compilers_and_libraries_2019.5.281/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/daal/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/ipp/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/tbb/lib/intel64_lin/gcc4.4:/opt/ddn/cci/lib:/opt/ddn/ime/lib:/opt/ddn/isa-l/lib:/vol-async/src:/hdf5-async-vol-register-install/lib:/argobots/install/lib:/hdf5-install/install: +2024-03-14 06:28:57,356 h5bench - DEBUG - DYLD_LIBRARY_PATH: :/vol-async/src:/hdf5-async-vol-register-install/lib:/argobots/install/lib:/hdf5-install/install: +2024-03-14 06:28:57,356 h5bench - DEBUG - LD_PRELOAD: /usr/local/xalt/xalt/lib64/libxalt_init.so +2024-03-14 06:28:57,356 h5bench - INFO - h5bench [e3sm] - Starting +2024-03-14 06:28:57,357 h5bench - INFO - h5bench [e3sm] - DIR: full-teste/3e21d37b/ +2024-03-14 06:28:57,358 h5bench - INFO - Parallel setup: mpirun -np 8 --oversubscribe +2024-03-14 06:28:57,359 h5bench - CRITICAL - h5bench_e3sm is not available diff --git a/docs/source/macsio.rst b/docs/source/macsio.rst index 84d75be6..f7989b44 100644 --- a/docs/source/macsio.rst +++ b/docs/source/macsio.rst @@ -5,7 +5,7 @@ MACSio (Multi-purpose, Application-Centric, Scalable I/O Proxy Application) is b MACSio in h5bench only supports the HDF5 interface. You need to have the `json-cwx `_ dependency library installed prior to compiling it in h5bench. -You can find more information in MACSio `GitHub repository `_. +You can find more information in MACSio `GitHub repository `_. Configuration ------------- @@ -38,4 +38,4 @@ To run an instance of MACSio HDF5 benchmark you need to include the following in "parallel_file_mode": "MIF 8", "part_size": "1M" } - } + } \ No newline at end of file diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index a7151702..e8d3b330 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -882,6 +882,10 @@ set_globals(const bench_params *params) if (COMPRESS_INFO.USE_COMPRESS) { // set DCPL herr_t ret; + // Auxiliary data required as input by the H5Pset_filter(), by default I set it to 0. - Henry + unsigned int cd_values = 0; + + // Create a new property list instance COMPRESS_INFO.dcpl_id = H5Pcreate(H5P_DATASET_CREATE); assert(COMPRESS_INFO.dcpl_id > 0); @@ -891,7 +895,30 @@ set_globals(const bench_params *params) ret = H5Pset_chunk(COMPRESS_INFO.dcpl_id, params->num_dims, (const hsize_t *)COMPRESS_INFO.chunk_dims); assert(ret >= 0); - ret = H5Pset_deflate(COMPRESS_INFO.dcpl_id, 9); + + // Adds the specified filter to pipeline + if (params->compress_filter == N_BIT) { + ret = H5Pset_nbit(COMPRESS_INFO.dcpl_id); + } + else if (params->compress_filter == SCALE_OFFSET) { + ret = H5Pset_scaleoffset(COMPRESS_INFO.dcpl_id, H5Z_SO_FLOAT_DSCALE, 0); + } + else if (params->compress_filter == SZIP) { + ret = H5Pset_szip(COMPRESS_INFO.dcpl_id, H5_SZIP_EC_OPTION_MASK, 8); + } + else if (params->compress_filter == GZIP) { + ret = H5Pset_deflate(COMPRESS_INFO.dcpl_id, 9); + } + else if (params->compress_filter == SZ) { + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, (H5Z_filter_t)32017, H5Z_FLAG_MANDATORY, (size_t)1, &cd_values); + } + else if (params->compress_filter == SZ3) { + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, (H5Z_filter_t)32024, H5Z_FLAG_MANDATORY, (size_t)1, &cd_values); + } + else if (params->compress_filter == ZFP) { + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, (H5Z_filter_t)32013, H5Z_FLAG_MANDATORY, (size_t)1, &cd_values); + } + assert(ret >= 0); } @@ -978,6 +1005,8 @@ main(int argc, char *argv[]) MPI_Init_thread(&argc, &argv, MPI_THREAD_MULTIPLE, &mpi_thread_lvl_provided); assert(MPI_THREAD_MULTIPLE == mpi_thread_lvl_provided); MPI_Comm_rank(MPI_COMM_WORLD, &MY_RANK); + assert(MPI_THREAD_MULTIPLE == mpi_thread_lvl_provided); + MPI_Comm_rank(MPI_COMM_WORLD, &MY_RANK); MPI_Comm_size(MPI_COMM_WORLD, &NUM_RANKS); MPI_Comm comm = MPI_COMM_WORLD; MPI_Info info = MPI_INFO_NULL; @@ -1184,8 +1213,6 @@ main(int argc, char *argv[]) fprintf(params.csv_fs, "operation, %s, %s\n", "write", ""); fprintf(params.csv_fs, "ranks, %d, %s\n", NUM_RANKS, ""); fprintf(params.csv_fs, "collective data, %s, %s\n", params.data_coll == 1 ? "YES" : "NO", ""); - fprintf(params.csv_fs, "collective meta, %s, %s\n", params.meta_coll == 1 ? "YES" : "NO", ""); - fprintf(params.csv_fs, "subfiling, %s, %s\n", params.subfiling == 1 ? "YES" : "NO", ""); fprintf(params.csv_fs, "total compute time, %.3lf, %s\n", total_sleep_time_us / (1000.0 * 1000.0), "seconds"); value = format_human_readable(total_size_bytes); diff --git a/samples/async-write-1d-contig-contig-gpfs-align-h5bench.log b/samples/async-write-1d-contig-contig-gpfs-align-h5bench.log new file mode 100644 index 00000000..20e3c330 --- /dev/null +++ b/samples/async-write-1d-contig-contig-gpfs-align-h5bench.log @@ -0,0 +1,13 @@ +2024-03-14 09:18:29,895 h5bench - INFO - Starting h5bench Suite +2024-03-14 09:18:29,914 h5bench - INFO - Lustre support not detected +2024-03-14 09:18:29,915 h5bench - DEBUG - LD_LIBRARY_PATH: /opt/mvapich2/intel/19.0/2.3.3/lib:/usr/local/gnu/8.4.0/lib64:/usr/local/gnu/8.4.0/lib:/opt/intel/debugger_2019/libipt/intel64/lib:/opt/intel/compilers_and_libraries_2019.5.281/linux/compiler/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/daal/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/ipp/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl/lib/intel64_lin:/opt/intel/compilers_and_libraries_2019.5.281/linux/tbb/lib/intel64_lin/gcc4.4:/opt/ddn/cci/lib:/opt/ddn/ime/lib:/opt/ddn/isa-l/lib +2024-03-14 09:18:29,916 h5bench - DEBUG - DYLD_LIBRARY_PATH: +2024-03-14 09:18:29,916 h5bench - DEBUG - LD_PRELOAD: /usr/local/xalt/xalt/lib64/libxalt_init.so +2024-03-14 09:18:29,916 h5bench - INFO - h5bench [write] - Starting +2024-03-14 09:18:29,917 h5bench - INFO - h5bench [write] - DIR: storage/300a21bf/ +2024-03-14 09:18:29,918 h5bench - INFO - Parallel setup: mpirun --allow-run-as-root -np 2 --oversubscribe +2024-03-14 09:18:29,920 h5bench - INFO - mpirun --allow-run-as-root -np 2 --oversubscribe /users/PAS2406/henryzhou1201/h5bench_project/bin//h5bench_write storage/300a21bf/h5bench.cfg storage/test.h5 +2024-03-14 09:18:30,014 h5bench - ERROR - Return: 2 (check storage/300a21bf/stderr for detailed log) +2024-03-14 09:18:30,016 h5bench - INFO - Runtime: 0.0979636 seconds (elapsed time, includes allocation wait time) +2024-03-14 09:18:30,016 h5bench - INFO - h5bench [write] - Complete +2024-03-14 09:18:30,016 h5bench - INFO - Finishing h5bench Suite diff --git a/samples/metrics-perlmutter.json b/samples/metrics-perlmutter.json index 16b7dcba..92d77d34 100644 --- a/samples/metrics-perlmutter.json +++ b/samples/metrics-perlmutter.json @@ -1,7 +1,7 @@ { "mpi": { "command": "srun", - "configuration": "--tasks-per-node=64 -N 8 -n 512 -t 00:30:00" + "configuration": "-A m2621 --qos=debug --constraint=cpu --tasks-per-node=64 -N 8 -n 512 -t 00:30:00" }, "vol": { @@ -53,4 +53,4 @@ } } ] -} +} \ No newline at end of file diff --git a/src/h5bench.py b/src/h5bench.py index b50b7850..992e1edf 100755 --- a/src/h5bench.py +++ b/src/h5bench.py @@ -203,6 +203,7 @@ def run(self): # Check if filters were enabled if self.filter: + # Skip the benchmark if no specified in the argument if name not in self.filter: self.logger.warning('Skipping "{}" due to active filters'.format(name)) From 56abacced9ff9572039a076432e66ebc0e5735a2 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Tue, 18 Jun 2024 09:48:56 -0400 Subject: [PATCH 02/61] Fixed filter unregistered error. SZ compression successfully applied. --- build_1.0/h5bench_append | Bin 226888 -> 226888 bytes build_1.0/h5bench_overwrite | Bin 222544 -> 222544 bytes build_1.0/h5bench_read | Bin 227824 -> 227824 bytes build_1.0/h5bench_write | Bin 245312 -> 245280 bytes build_1.0/h5bench_write_normal_dist | Bin 259784 -> 259784 bytes build_1.0/h5bench_write_unlimited | Bin 245464 -> 245464 bytes h5bench_patterns/h5bench_write.c | 15 ++++++++------- 7 files changed, 8 insertions(+), 7 deletions(-) diff --git a/build_1.0/h5bench_append b/build_1.0/h5bench_append index 7d09ca0981cc04088021d17d6835339f3d6cf40a..5d5d23921eddcc6bd0b788f6e3047928b3a05919 100755 GIT binary patch delta 272 zcmX@{hWEr9-VJq}Dwbvjrshe8mb!*%=83u{mT4xsNrq`=x+!KUMyW}L7AA&z3xrpBuRp;u`hm^QQkQwEk+CI(hUCYzsg{$k`dH?%M?GSM@&G&i68hTA|SP3`a^ z?SdVyH~meXsbqh8>%U50wAp~C-GGO2y8#bV-A3Bkzg^}4lcEhv%Y;pvr#t>(vSM!T dJGQ;<57R4F=B5dore`xTn}CHDF)=SI1^_u0S7`tM delta 272 zcmX@{hWEr9-VJq}Du#xp#%ZP|mb!^%7OA=>iIyh1mPQ7Kx)zp+M#iQ_M&>3aNs||G zs>!<*WyY%lp;u`hm^L(lP=;0p2397fo1b(3V&pb9H#agd)iXCWG@Sf~+d$-g@D;zz zSaD6W)D!9UK880w9Qg3F*?_0rfQNCr0S{B%M%vlGUFHCjq7BRLFN@Yscl^U-#oV-X cz3xrpBuRp;u`hm^QQkQwEk+CI(hUCYzsg{$k`dH?%M?GSM@&G&7w1hTA}d?ThFO zSz*cfkCPaT(vG#5Ye;!lHXHD?8}Kl0H{fBaTSz7QORSur>F d9ow$|hUqjbbJK)P)Bk>CG64&jd}5L*1^{`!<*WyY%lp;u`hm^L(lP=;0p2396Uo1b(3V&pb9H#agd(z7r&G?@H`+dxD;C#w8b zXT&2p?VE{Ho1TV7>$>qY8}PIn@Gx#S;9;s;NIUzt%WPn}WX-bs%cAwuKfPwMVs2Wx cal8H-rqis~*y5?yq$p(ogsmW%kiIW#` zs>z3xrpBuRp;u`hm^QQkQwEk+CI(hUCYzsg{$k`dH?%M?GSM?LFfg3_hTA}7=Y(H( ze#NLMi%CEF!#t&G;a>SSJk16??FKxI+YNY_>Ne8O{_Qdcm}G2OS|)7TJl*CmlNEDw d-?8nLf0^vrn42bSn!cNv*#s=~iJAFdDF9ecTATm? delta 272 zcmezHnfJqI-VJq}D#?aPmT4BL$-1eDX-2vxMuus+7O4itx@l7#%XD$Mw1tD zs>!<*WyY%lp;u`hm^L(lP=;0p2396!o1b(3V&pb9H#agd)3Y=*HlF;3+dw4mWGQco zqkp2uD)au0J6s>NE_9gRY{1iQz{9xRfQPAWBkk1tu0G#q#4gdfE diff --git a/build_1.0/h5bench_write b/build_1.0/h5bench_write index a54ea6d4f8f5c6007420097641a84e90daa08763..9fedaa938c714b81d8ea0e32080f0fcaf48a3b43 100755 GIT binary patch delta 15857 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 Ul!b>dtaFw9BI%?2eTaqqKYTgCm;e9( diff --git a/build_1.0/h5bench_write_normal_dist b/build_1.0/h5bench_write_normal_dist index bf82f41bb4530b300a4c12d02cc76dfb1cbe4e47..00ec67c6559cce0317435f77e5ad0108b1859c90 100755 GIT binary patch delta 276 zcmX@{mjA?C{tb0pDrp9(rWQ%YiMj@sX$HC`X31u{N#@3ux<;1C76t|u7KRpwO%pavpIpFf0v0+|!2GWj06XzpE&u=k delta 276 zcmX@{mjA?C{tb0pDv7B^DV9k|mb$4HrpCG^29}n(7HLLCx@k$4W`;(V$w?+gX_FUm zsmZ$)WyY%lp;u`hm^L(lPzF|}=2oT_o1b(2V&pb9H#ac1&@;C*GoAc~$3R3aPuZoS zqBwhx-htCzKA(MM3M<^24S3rPco~71X}bY0vz;LA+_3$Q0`qA%mfc?#t)IR+o!N@H eY3au8FVdM;a4@ghvT^$40%jAi(5V9Ef2{z`Qdw#M diff --git a/build_1.0/h5bench_write_unlimited b/build_1.0/h5bench_write_unlimited index 189f5313404983f87f2574d8b3dc6339cf118100..8179d02865d9697f8d6523769495409b7ba4c29a 100755 GIT binary patch delta 272 zcmccdm+!`3z72JpDv1_GM#;v;X}ShUMv1y6$p#j>mdS}px&~%O2IdClrfJ4TMw1tD zs>z3xrpBuRp;u`hm^QQkQwEk+CI(hUCYzsg{$k`dH?%M?GSM?LHa4C7hTA|SCHAsR z)zpnkZZx^_)hsGzlvB;#(rm!fZotF1-GGOw?jh~$-!AikNz;v`Wx}S-(>=|Yt(cqp cj%{x!<*WyY%lp;u`hm^L(lP=;0p23979o1b(3V&pb9H#agd)H5?PFr55`+d!l)__oP4 zi|hY8F1sINK7U&O#>8Ff%?3Q}20V=04S1O99@5VK?J^&jG~HNse_6DCx~Cbl6?4H4gdfE diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index e8d3b330..b55268cf 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -53,6 +53,9 @@ #include "H5FDioc.h" #endif #define DIM_MAX 3 +#define H5Z_FILTER_ZFP 32013 +#define H5Z_FILTER_SZ 32017 +#define H5Z_FILTER_SZ3 32024 herr_t ierr; @@ -882,8 +885,6 @@ set_globals(const bench_params *params) if (COMPRESS_INFO.USE_COMPRESS) { // set DCPL herr_t ret; - // Auxiliary data required as input by the H5Pset_filter(), by default I set it to 0. - Henry - unsigned int cd_values = 0; // Create a new property list instance COMPRESS_INFO.dcpl_id = H5Pcreate(H5P_DATASET_CREATE); @@ -909,18 +910,18 @@ set_globals(const bench_params *params) else if (params->compress_filter == GZIP) { ret = H5Pset_deflate(COMPRESS_INFO.dcpl_id, 9); } - else if (params->compress_filter == SZ) { - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, (H5Z_filter_t)32017, H5Z_FLAG_MANDATORY, (size_t)1, &cd_values); + else if (params->compress_filter == SZ){ + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ, H5Z_FLAG_OPTIONAL, 0, NULL); } else if (params->compress_filter == SZ3) { - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, (H5Z_filter_t)32024, H5Z_FLAG_MANDATORY, (size_t)1, &cd_values); + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ3, H5Z_FLAG_OPTIONAL, 0, NULL); } else if (params->compress_filter == ZFP) { - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, (H5Z_filter_t)32013, H5Z_FLAG_MANDATORY, (size_t)1, &cd_values); + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ZFP, H5Z_FLAG_OPTIONAL, 0, NULL); } assert(ret >= 0); - } + } ASYNC_MODE = params->asyncMode; } From b4f41455c7bad1ea6e2053d2ce0b3a17ae5a9d21 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Tue, 18 Jun 2024 14:50:46 -0400 Subject: [PATCH 03/61] Changed H5Z_FLAG_OPTIONAL back to MANDATORY --- h5bench_patterns/h5bench_write.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/h5bench_patterns/h5bench_write.c b/h5bench_patterns/h5bench_write.c index b55268cf..c3b1f34a 100644 --- a/h5bench_patterns/h5bench_write.c +++ b/h5bench_patterns/h5bench_write.c @@ -911,13 +911,13 @@ set_globals(const bench_params *params) ret = H5Pset_deflate(COMPRESS_INFO.dcpl_id, 9); } else if (params->compress_filter == SZ){ - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ, H5Z_FLAG_OPTIONAL, 0, NULL); + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ, H5Z_FLAG_MANDATORY, 0, NULL); } else if (params->compress_filter == SZ3) { - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ3, H5Z_FLAG_OPTIONAL, 0, NULL); + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_SZ3, H5Z_FLAG_MANDATORY, 0, NULL); } else if (params->compress_filter == ZFP) { - ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ZFP, H5Z_FLAG_OPTIONAL, 0, NULL); + ret = H5Pset_filter(COMPRESS_INFO.dcpl_id, H5Z_FILTER_ZFP, H5Z_FLAG_MANDATORY, 0, NULL); } assert(ret >= 0); From d81e665d6a0ac9ff77347ba517647cd9abf65b09 Mon Sep 17 00:00:00 2001 From: skyFzz Date: Fri, 28 Jun 2024 12:40:57 -0400 Subject: [PATCH 04/61] Update .gitignore and remove build directories from tracking. Add shuffling filter prior to any compression filters for effective performance --- .gitignore | 3 + build/DartConfiguration.tcl | 106 --- build/h5bench | 1021 -------------------------- build/h5bench_append | Bin 222528 -> 0 bytes build/h5bench_configuration.py | 1 - build/h5bench_overwrite | Bin 222288 -> 0 bytes build/h5bench_read | Bin 227560 -> 0 bytes build/h5bench_version.py | 1 - build/h5bench_write | Bin 240736 -> 0 bytes build/h5bench_write_normal_dist | Bin 259520 -> 0 bytes build/h5bench_write_unlimited | Bin 241104 -> 0 bytes build_1.0/DartConfiguration.tcl | 106 --- build_1.0/h5bench | 1022 --------------------------- build_1.0/h5bench_append | Bin 226888 -> 0 bytes build_1.0/h5bench_configuration.py | 1 - build_1.0/h5bench_overwrite | Bin 222544 -> 0 bytes build_1.0/h5bench_read | Bin 227824 -> 0 bytes build_1.0/h5bench_version.py | 1 - build_1.0/h5bench_write | Bin 245280 -> 0 bytes build_1.0/h5bench_write_normal_dist | Bin 259784 -> 0 bytes build_1.0/h5bench_write_unlimited | Bin 245464 -> 0 bytes h5bench_patterns/h5bench_write.c | 14 +- 22 files changed, 12 insertions(+), 2264 deletions(-) delete mode 100644 build/DartConfiguration.tcl delete mode 100755 build/h5bench delete mode 100755 build/h5bench_append delete mode 100644 build/h5bench_configuration.py delete mode 100755 build/h5bench_overwrite delete mode 100755 build/h5bench_read delete mode 100644 build/h5bench_version.py delete mode 100755 build/h5bench_write delete mode 100755 build/h5bench_write_normal_dist delete mode 100755 build/h5bench_write_unlimited delete mode 100644 build_1.0/DartConfiguration.tcl delete mode 100755 build_1.0/h5bench delete mode 100755 build_1.0/h5bench_append delete mode 100644 build_1.0/h5bench_configuration.py delete mode 100755 build_1.0/h5bench_overwrite delete mode 100755 build_1.0/h5bench_read delete mode 100644 build_1.0/h5bench_version.py delete mode 100755 build_1.0/h5bench_write delete mode 100755 build_1.0/h5bench_write_normal_dist delete mode 100755 build_1.0/h5bench_write_unlimited diff --git a/.gitignore b/.gitignore index 443bc984..7c29fba8 100644 --- a/.gitignore +++ b/.gitignore @@ -101,4 +101,7 @@ Temporary Items # iCloud generated files *.icloud +# Build and installer directories +/build +/installer # End of https://www.toptal.com/developers/gitignore/api/macos,c++,cmake,linux diff --git a/build/DartConfiguration.tcl b/build/DartConfiguration.tcl deleted file mode 100644 index e96dd3d2..00000000 --- a/build/DartConfiguration.tcl +++ /dev/null @@ -1,106 +0,0 @@ -# This file is configured by CMake automatically as DartConfiguration.tcl -# If you choose not to use CMake, this file may be hand configured, by -# filling in the required variables. - - -# Configuration directories and files -SourceDirectory: /users/PAS2406/henryzhou1201/h5bench_project/h5bench -BuildDirectory: /users/PAS2406/henryzhou1201/h5bench_project/h5bench/build - -# Where to place the cost data store -CostDataFile: - -# Site is something like machine.domain, i.e. pragmatic.crd -Site: owens-login04.hpc.osc.edu - -# Build name is osname-revision-compiler, i.e. Linux-2.4.2-2smp-c++ -BuildName: Linux-c++ - -# Subprojects -LabelsForSubprojects: - -# Submission information -SubmitURL: http:// -SubmitInactivityTimeout: - -# Dashboard start time -NightlyStartTime: 00:00:00 EDT - -# Commands for the build/test/submit cycle -ConfigureCommand: "/users/PAS2406/henryzhou1201/.local/bin/cmake" "/users/PAS2406/henryzhou1201/h5bench_project/h5bench" -MakeCommand: /users/PAS2406/henryzhou1201/.local/bin/cmake --build . --config "${CTEST_CONFIGURATION_TYPE}" -DefaultCTestConfigurationType: Release - -# version control -UpdateVersionOnly: - -# CVS options -# Default is "-d -P -A" -CVSCommand: -CVSUpdateOptions: - -# Subversion options -SVNCommand: -SVNOptions: -SVNUpdateOptions: - -# Git options -GITCommand: /usr/bin/git -GITInitSubmodules: -GITUpdateOptions: -GITUpdateCustom: - -# Perforce options -P4Command: -P4Client: -P4Options: -P4UpdateOptions: -P4UpdateCustom: - -# Generic update command -UpdateCommand: /usr/bin/git -UpdateOptions: -UpdateType: git - -# Compiler info -Compiler: /usr/local/gnu/8.4.0/bin/c++ -CompilerVersion: 8.4.0 - -# Dynamic analysis (MemCheck) -PurifyCommand: -ValgrindCommand: -ValgrindCommandOptions: -DrMemoryCommand: -DrMemoryCommandOptions: -CudaSanitizerCommand: -CudaSanitizerCommandOptions: -MemoryCheckType: -MemoryCheckSanitizerOptions: -MemoryCheckCommand: /usr/bin/valgrind -MemoryCheckCommandOptions: -MemoryCheckSuppressionFile: - -# Coverage -CoverageCommand: /usr/local/gnu/8.4.0/bin/gcov -CoverageExtraFlags: -l - -# Testing options -# TimeOut is the amount of time in seconds to wait for processes -# to complete during testing. After TimeOut seconds, the -# process will be summarily terminated. -# Currently set to 25 minutes -TimeOut: 1500 - -# During parallel testing CTest will not start a new test if doing -# so would cause the system load to exceed this value. -TestLoad: - -UseLaunchers: -CurlOptions: -# warning, if you add new options here that have to do with submit, -# you have to update cmCTestSubmitCommand.cxx - -# For CTest submissions that timeout, these options -# specify behavior for retrying the submission -CTestSubmitRetryDelay: 5 -CTestSubmitRetryCount: 3 diff --git a/build/h5bench b/build/h5bench deleted file mode 100755 index b50b7850..00000000 --- a/build/h5bench +++ /dev/null @@ -1,1021 +0,0 @@ -#!/usr/bin/env python3 - -import os -import sys -import json -import time -import uuid -import shlex -import errno -import distutils.spawn -import argparse -import collections -import subprocess -import h5bench_version -import h5bench_configuration -import logging -import logging.handlers - - -class H5bench: - """H5bench benchmark suite.""" - - H5BENCH_PATTERNS_WRITE = 'h5bench_write' - H5BENCH_PATTERNS_WRITE_UNLIMITED = 'h5bench_write_unlimited' - H5BENCH_PATTERNS_WRITE_VAR_NORMAL_DIST = 'h5bench_write_var_normal_dist' - H5BENCH_PATTERNS_APPEND = 'h5bench_append' - H5BENCH_PATTERNS_OVERWRITE = 'h5bench_overwrite' - H5BENCH_PATTERNS_READ = 'h5bench_read' - H5BENCH_EXERCISER = 'h5bench_exerciser' - H5BENCH_METADATA = 'h5bench_hdf5_iotest' - H5BENCH_AMREX_SYNC = 'h5bench_amrex_sync' - H5BENCH_AMREX_ASYNC = 'h5bench_amrex_async' - H5BENCH_OPENPMD_WRITE = 'h5bench_openpmd_write' - H5BENCH_OPENPMD_READ = 'h5bench_openpmd_read' - H5BENCH_E3SM = 'h5bench_e3sm' - H5BENCH_MACSIO = 'h5bench_macsio' - - def __init__(self, setup, prefix=None, debug=None, abort=None, validate=None, filter=None): - """Initialize the suite.""" - self.LOG_FILENAME = '{}-h5bench.log'.format(setup.replace('.json', '')) - - self.check_parallel() - - self.configure_log(debug) - - self.prefix = prefix - self.setup = setup - self.abort = abort - self.validate = validate - - if filter: - self.filter = filter.split(',') - else: - self.filter = None - - def check_parallel(self): - """Check for parallel overwrite command.""" - mpi = [ - 'mpirun', 'mpiexec', - 'srun' - ] - - # Get user defined shell - if 'SHELL' in os.environ: - shell = os.environ['SHELL'] - - for m in mpi: - if m in shell: - print('You should not call MPI directly when running h5bench.') - - sys.exit(os.EX_USAGE) - else: - shell = None - - def configure_log(self, debug): - """Configure the logging system.""" - self.logger = logging.getLogger('h5bench') - - if debug: - self.logger.setLevel(logging.DEBUG) - else: - self.logger.setLevel(logging.INFO) - - # Defines the format of the logger - formatter = logging.Formatter( - '%(asctime)s %(module)s - %(levelname)s - %(message)s' - ) - - # Configure the log rotation - handler = logging.handlers.RotatingFileHandler( - self.LOG_FILENAME, - maxBytes=268435456, - backupCount=50, - encoding='utf8' - ) - - handler.setFormatter(formatter) - - self.logger.addHandler(handler) - - if debug: - console = logging.StreamHandler() - console.setFormatter(formatter) - - self.logger.addHandler(console) - - def prepare(self, setup): - """Create a directory to store all the results of the benchmark.""" - self.directory = setup['directory'] - - try: - # Create a temporary directory to store all configurations - os.makedirs(self.directory) - except OSError as exc: - if exc.errno != errno.EEXIST: - raise - - self.logger.warning('Base directory already exists: {}'.format(self.directory)) - - pass - except Exception as e: - self.logger.debug('Unable to create {}: {}'.format(self.directory, e)) - - # Check for Lustre support to set the data stripping configuration - try: - command = 'lfs getstripe {}'.format(self.directory) - - arguments = shlex.split(command) - - s = subprocess.Popen(arguments, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - sOutput, sError = s.communicate() - - if s.returncode == 0: - self.logger.info('Lustre support detected') - - if 'file-system' in setup: - if 'lustre' in setup['file-system']: - command = 'lfs setstripe' - - if 'stripe-size' in setup['file-system']['lustre']: - command += ' -S {}'.format(setup['file-system']['lustre']['stripe-size']) - - if 'stripe-count' in setup['file-system']['lustre']: - command += ' -c {}'.format(setup['file-system']['lustre']['stripe-count']) - - command += ' {}'.format(self.directory) - - self.logger.debug('Lustre stripping configuration: {}'.format(command)) - - arguments = shlex.split(command) - - s = subprocess.Popen(arguments, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - sOutput, sError = s.communicate() - - else: - self.logger.info('Lustre support not detected') - except Exception: - self.logger.info('Lustre support not detected') - - def validate_json(self, setup): - """Make sure JSON contains all the necessary properties.""" - properties = [ - 'mpi', - 'vol', - 'file-system', - 'directory', - 'benchmarks' - ] - - for p in properties: - if p not in setup: - self.logger.critical('JSON configuration file is invalid: "{}" property is missing'.format(p)) - - sys.exit(os.EX_DATAERR) - - def run(self): - """Run all the benchmarks/kernels.""" - self.logger.info('Starting h5bench Suite') - - try: - with open(self.setup) as file: - setup = json.load(file, object_pairs_hook=collections.OrderedDict) - except FileNotFoundError: - self.logger.critical('Unable to open the input configuration file') - - sys.exit(os.EX_NOINPUT) - except Exception as e: - self.logger.critical('Unable to parse the input configuration file)') - self.logger.critical(e) - - sys.exit(os.EX_NOINPUT) - - self.validate_json(setup) - self.prepare(setup) - - self.vol_environment = os.environ.copy() - self.prepare_vol(setup['vol']) - - benchmarks = setup['benchmarks'] - - for benchmark in benchmarks: - name = benchmark['benchmark'] - - # Check if filters were enabled - if self.filter: - if name not in self.filter: - self.logger.warning('Skipping "{}" due to active filters'.format(name)) - - continue - - id = str(uuid.uuid4()).split('-')[0] - if 'SLURM_JOB_ID' in os.environ: - jobid = os.environ['SLURM_JOB_ID'] # nersc - elif 'COBALT_JOBID' in os.environ: - jobid = os.environ['COBALT_JOBID'] # alcf_theta - elif 'PBS_JOBID' in os.environ: - jobid = os.environ['PBS_JOBID'] # alcf_polaris - elif 'LSB_JOBID' in os.environ: - jobid = os.environ['LSB_JOBID'] # olcf - else: - jobid = None - - if jobid is not None: - id = id + "-" + jobid - self.logger.info('JOBID: {}'.format(jobid)) - - self.logger.info('h5bench [{}] - Starting'.format(name)) - self.logger.info('h5bench [{}] - DIR: {}/{}/'.format(name, setup['directory'], id)) - - os.makedirs('{}/{}'.format(setup['directory'], id)) - - self.prepare_parallel(setup['mpi']) - - if name in ['write', 'write-unlimited', 'overwrite', 'append', 'read', 'write_var_normal_dist']: - self.run_pattern(id, name, benchmark, setup['vol']) - elif name == 'exerciser': - self.run_exerciser(id, benchmark) - elif name == 'metadata': - self.run_metadata(id, benchmark) - elif name == 'amrex': - self.run_amrex(id, benchmark, setup['vol']) - elif name == 'openpmd': - self.run_openpmd(id, benchmark) - elif name == 'e3sm': - self.run_e3sm(id, benchmark) - elif name == 'macsio': - self.run_macsio(id, benchmark) - else: - self.logger.critical('{} - Unsupported benchmark/kernel') - - self.logger.info('h5bench [{}] - Complete'.format(name)) - - self.logger.info('Finishing h5bench Suite') - - def prepare_parallel(self, mpi): - """Prepare the MPI launch command.""" - if 'configuration' in mpi: - self.mpi = '{} {}'.format(mpi['command'], mpi['configuration']) - else: - if mpi['command'] in ['mpirun', 'mpiexec']: - self.mpi = '{} -np {}'.format(mpi['command'], mpi['ranks']) - elif mpi['command'] == 'srun': - self.mpi = '{} --cpu_bind=cores -n {}'.format(mpi['command'], mpi['ranks']) - else: - self.logger.warning('Unknown MPI launcher selected!') - - self.mpi = '' - - return - - self.logger.info('Parallel setup: {}'.format(self.mpi)) - - def prepare_vol(self, vol): - """Prepare the environment variables for the VOL.""" - - if vol is not None: - if 'LD_LIBRARY_PATH' not in self.vol_environment: - self.vol_environment['LD_LIBRARY_PATH'] = '' - - if 'DYLD_LIBRARY_PATH' not in self.vol_environment: - self.vol_environment['DYLD_LIBRARY_PATH'] = '' - - if 'LD_PRELOAD' not in self.vol_environment: - self.vol_environment['LD_PRELOAD'] = '' - - if 'library' in vol: - self.vol_environment['LD_LIBRARY_PATH'] += ':' + vol['library'] - self.vol_environment['DYLD_LIBRARY_PATH'] += ':' + vol['library'] - if 'path' in vol: - self.vol_environment['HDF5_PLUGIN_PATH'] = vol['path'] - if 'preload' in vol: - self.vol_environment['LD_PRELOAD'] += vol['preload'] - - self.vol_environment['ABT_THREAD_STACKSIZE'] = '100000' - - if 'HDF5_PLUGIN_PATH' in self.vol_environment: - self.logger.debug('HDF5_PLUGIN_PATH: %s', self.vol_environment['HDF5_PLUGIN_PATH']) - - if 'LD_LIBRARY_PATH' in self.vol_environment: - self.logger.debug('LD_LIBRARY_PATH: %s', self.vol_environment['LD_LIBRARY_PATH']) - - if 'DYLD_LIBRARY_PATH' in self.vol_environment: - self.logger.debug('DYLD_LIBRARY_PATH: %s', self.vol_environment['DYLD_LIBRARY_PATH']) - - if 'LD_PRELOAD' in self.vol_environment: - self.logger.debug('LD_PRELOAD: %s', self.vol_environment['LD_PRELOAD']) - - def enable_vol(self, vol): - """Enable VOL by setting the connector.""" - if 'connector' in vol: - self.vol_environment['HDF5_VOL_CONNECTOR'] = vol['connector'] - - self.logger.info('HDF5 VOL connector: %s', vol['connector']) - - def disable_vol(self, vol): - """Disable VOL by setting the connector.""" - if 'HDF5_VOL_CONNECTOR' in self.vol_environment: - del self.vol_environment['HDF5_VOL_CONNECTOR'] - - def reset_vol(self): - """Reset the environment variables for the VOL.""" - if self.vol_environment is not None: - if 'HDF5_PLUGIN_PATH' in self.vol_environment: - del self.vol_environment['HDF5_PLUGIN_PATH'] - if 'HDF5_VOL_CONNECTOR' in self.vol_environment: - del self.vol_environment['HDF5_VOL_CONNECTOR'] - - if 'ABT_THREAD_STACKSIZE' in self.vol_environment: - del self.vol_environment['ABT_THREAD_STACKSIZE'] - - def check_for_hdf5_error(self, stderr_file_name): - has_error_message = False - - with open(stderr_file_name, mode='r') as stderr_file: - lines = stderr_file.readlines() - - for line in lines: - if 'Error detected in HDF5' in line: - has_error_message = True - - self.logger.error(line.strip()) - self.logger.error('Check %s for detailed log', stderr_file_name) - - sys.exit(os.EX_IOERR) - - return has_error_message - - def run_pattern(self, id, operation, setup, vol): - """Run the h5bench_patterns (write/read) benchmarks.""" - try: - start = time.time() - - # Define the output file (should be a .h5 file) - file = '{}/{}'.format(self.directory, setup['file']) - configuration = setup['configuration'] - - # Disable any user-defined VOL connectors as we will be handling that - self.disable_vol(vol) - - if configuration['MODE'] in ['ASYNC', 'LOG']: - self.enable_vol(vol) - - configuration_file = '{}/{}/h5bench.cfg'.format(self.directory, id) - - # Create the configuration file for this benchmark - with open(configuration_file, 'w+') as f: - for key in configuration: - # Make sure the CSV file is generated in the temporary path - if key == 'CSV_FILE': - configuration[key] = '{}/{}/{}'.format(self.directory, id, configuration[key]) - - if key == 'MODE': - continue - - f.write('{}={}\n'.format(key, configuration[key])) - - if operation == 'append': - f.write('IO_OPERATION=APPEND\n') - - if operation == 'overwrite': - f.write('IO_OPERATION=OVERWRITE\n') - - if operation == 'write': - benchmark_path = self.H5BENCH_PATTERNS_WRITE - - if operation == 'write-unlimited': - benchmark_path = self.H5BENCH_PATTERNS_WRITE_UNLIMITED - - if operation == 'write_var_normal_dist': - benchmark_path = self.H5BENCH_PATTERNS_WRITE_VAR_NORMAL_DIST - - if operation == 'overwrite': - benchmark_path = self.H5BENCH_PATTERNS_OVERWRITE - - if operation == 'append': - benchmark_path = self.H5BENCH_PATTERNS_APPEND - - if operation == 'read': - benchmark_path = self.H5BENCH_PATTERNS_READ - - if self.prefix: - benchmark_path = self.prefix + '/' + benchmark_path - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + benchmark_path): - benchmark_path = h5bench_configuration.__install__ + '/' + benchmark_path - else: - benchmark_path = benchmark_path - - command = '{} {} {} {}'.format( - self.mpi, - benchmark_path, - configuration_file, - file - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - if configuration['MODE'] in ['ASYNC', 'LOG']: - self.disable_vol(vol) - - if self.validate: - used_async = False - - with open(stdout_file_name, mode='r') as stdout_file: - lines = stdout_file.readlines() - - for line in lines: - if 'Mode: ASYNC' in line: - used_async = True - break - - if (configuration['MODE'] == 'ASYNC' and used_async) or (configuration['MODE'] == 'SYNC' and not used_async): - self.logger.info('Requested and ran in %s mode', 'ASYNC' if used_async else 'SYNC') - else: - self.logger.warning('Requested %s mode but ran in %s mode', configuration['MODE'], 'ASYNC' if used_async else 'SYNC') - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - sys.exit(os.EX_SOFTWARE) - - def is_available(self, executable): - """Check if binary is available.""" - return distutils.spawn.find_executable( - executable, - path=os.environ['PATH'] + ':.' - ) - - def run_exerciser(self, id, setup): - """Run the exerciser benchmark.""" - if not self.is_available(self.H5BENCH_EXERCISER): - self.logger.critical('{} is not available'.format(self.H5BENCH_EXERCISER)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - configuration = setup['configuration'] - - parameters = [] - - parameters_binary = [ - 'keepfile', - 'usechunked', - 'indepio', - 'addattr', - 'derivedtype' - ] - - # Create the configuration parameter list - for key in configuration: - if key in parameters_binary: - if configuration[key].lower() == 'true': - parameters.append('--{} '.format(key)) - else: - parameters.append('--{} {} '.format(key, configuration[key])) - - if self.prefix: - benchmark_path = self.prefix + '/' + self.H5BENCH_EXERCISER - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_EXERCISER): - benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_EXERCISER - else: - benchmark_path = self.H5BENCH_EXERCISER - - command = '{} {} {}'.format( - self.mpi, - benchmark_path, - ' '.join(parameters) - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - sys.exit(os.EX_SOFTWARE) - - def run_metadata(self, id, setup): - """Run the metadata stress benchmark.""" - if not self.is_available(self.H5BENCH_METADATA): - self.logger.critical('{} is not available'.format(self.H5BENCH_METADATA)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - # Define the output file (should be a .h5 file) - file = '{}/{}'.format(self.directory, setup['file']) - configuration = setup['configuration'] - - configuration_file = '{}/{}/hdf5_iotest.ini'.format(self.directory, id) - - # Create the configuration file for this benchmark - with open(configuration_file, 'w+') as f: - f.write('[DEFAULT]\n') - - for key in configuration: - # Make sure the CSV file is generated in the temporary path - if key == 'csv-file': - configuration[key] = '{}/{}/{}'.format(self.directory, id, configuration[key]) - - f.write('{} = {}\n'.format(key, configuration[key])) - - f.write('hdf5-file = {}\n'.format(file)) - - if self.prefix: - benchmark_path = self.prefix + '/' + self.H5BENCH_METADATA - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_METADATA): - benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_METADATA - else: - benchmark_path = self.H5BENCH_METADATA - - command = '{} {} {}'.format( - self.mpi, - benchmark_path, - configuration_file - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - sys.exit(os.EX_SOFTWARE) - - def run_amrex(self, id, setup, vol): - """Run the AMReX benchmark.""" - if not self.is_available(self.H5BENCH_AMREX_SYNC): - self.logger.critical('{} is not available'.format(self.H5BENCH_AMREX_SYNC)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - directory = '{}/{}/{}'.format(self.directory, id, setup['file']) - configuration = setup['configuration'] - - # Disable any user-defined VOL connectors as we will be handling that - self.disable_vol(vol) - - if configuration['mode'] in ['ASYNC', 'LOG']: - self.enable_vol(vol) - - binary = self.H5BENCH_AMREX_ASYNC - else: - binary = self.H5BENCH_AMREX_SYNC - - configuration_file = '{}/{}/amrex.ini'.format(self.directory, id) - - try: - # Create a temporary directory to store all configurations - os.makedirs(directory) - except OSError as exc: - if exc.errno != errno.EEXIST: - raise - - self.logger.warning('Base directory already exists: {}'.format(self.directory)) - - pass - except Exception as e: - self.logger.debug('Unable to create {}: {}'.format(self.directory, e)) - - # Create the configuration file for this benchmark - with open(configuration_file, 'w+') as f: - for key in configuration: - f.write('{} = {}\n'.format(key, configuration[key])) - - # f.write('directory = {}\n'.format(directory)) - - if self.prefix: - benchmark_path = self.prefix + '/' + self.binary - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): - benchmark_path = h5bench_configuration.__install__ + '/' + binary - else: - benchmark_path = binary - - command = '{} {} {}'.format( - self.mpi, - benchmark_path, - configuration_file - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - if configuration['mode'] in ['ASYNC', 'LOG']: - self.disable_vol(vol) - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - sys.exit(os.EX_SOFTWARE) - - def run_openpmd(self, id, setup): - """Run the OpenPMD kernel benchmark.""" - if not self.is_available(self.H5BENCH_OPENPMD_WRITE): - self.logger.critical('{} is not available'.format(self.H5BENCH_OPENPMD_WRITE)) - - sys.exit(os.EX_UNAVAILABLE) - - if not self.is_available(self.H5BENCH_OPENPMD_READ): - self.logger.critical('{} is not available'.format(self.H5BENCH_OPENPMD_READ)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - # Define the output file (should be a .h5 file) - if 'file' in setup: - self.logger.warning('OpenPMD does not take an input file name, only the directory') - - configuration = setup['configuration'] - - configuration_file = '{}/{}/openpmd.input'.format(self.directory, id) - - # Create the configuration file for this benchmark - with open(configuration_file, 'w+') as f: - for key in configuration: - if 'operation' in key: - continue - - f.write('{}={}\n'.format(key, configuration[key])) - - f.write('fileLocation={}\n'.format(self.directory)) - - if configuration['operation'] == 'write': - binary = self.H5BENCH_OPENPMD_WRITE - - if self.prefix: - benchmark_path = self.prefix + '/' + binary - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): - benchmark_path = h5bench_configuration.__install__ + '/' + binary - else: - benchmark_path = binary - - command = '{} {} {}'.format( - self.mpi, - benchmark_path, - configuration_file - ) - elif configuration['operation'] == 'read': - binary = self.H5BENCH_OPENPMD_READ - - if self.prefix: - benchmark_path = self.prefix + '/' + binary - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): - benchmark_path = h5bench_configuration.__install__ + '/' + binary - else: - benchmark_path = binary - - file_path = '{}/8a_parallel_3Db'.format(self.directory) - - command = '{} {} {} {}'.format( - self.mpi, - benchmark_path, - file_path, - configuration['pattern'] - ) - else: - self.logger.error('Unsupported operation for OpenPMD benchmark') - - sys.exit(os.EX_SOFTWARE) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - def run_e3sm(self, id, setup): - """Run the E3SM benchmark.""" - if not self.is_available(self.H5BENCH_E3SM): - self.logger.critical('{} is not available'.format(self.H5BENCH_E3SM)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - configuration = setup['configuration'] - - parameters = [] - - # Create the configuration parameter list - for key in configuration: - if key not in ['i', 'o', 'map'] and configuration[key]: - parameters.append('-{} {} '.format(key, configuration[key])) - - # Temporarily overwrite -x and -a to only supported patterns - parameters.append('-{} {}'.format('a', 'hdf5')) - parameters.append('-{} {}'.format('x', 'blob')) - - parameters.append('-o {}/{}/{} '.format(self.directory, id, setup['file'])) - - file = '{}/{}'.format(self.directory, configuration['map']) - - if self.prefix: - benchmark_path = self.prefix + '/' + self.H5BENCH_E3SM - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_E3SM): - benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_E3SM - else: - benchmark_path = self.H5BENCH_E3SM - - command = '{} {} {} {}'.format( - self.mpi, - benchmark_path, - ' '.join(parameters), - file - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - def run_macsio(self, id, setup): - """Run the MACSIO benchmark.""" - if not self.is_available(self.H5BENCH_MACSIO): - self.logger.critical('{} is not available'.format(self.H5BENCH_MACSIO)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - configuration = setup['configuration'] - - parameters = [] - - # Create the configuration parameter list - for key in configuration: - if key not in ['filebase', 'interface'] and configuration[key]: - parameters.append('--{} {} '.format(key, configuration[key])) - - parameters.append('--interface {} '.format('hdf5')) - parameters.append('--filebase {}/{}/{} '.format(self.directory, id, setup['file'].replace('.h5', ''))) - parameters.append('--log_file_name {}/{}/macsio.log '.format(self.directory, id)) - parameters.append('--timings_file_name {}/{}/timings.log '.format(self.directory, id)) - - if self.prefix: - benchmark_path = self.prefix + '/' + self.H5BENCH_MACSIO - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_MACSIO): - benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_MACSIO - else: - benchmark_path = self.H5BENCH_MACSIO - - command = '{} {} {}'.format( - self.mpi, - benchmark_path, - ' '.join(parameters) - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - # Move the files if they were generated - if os.path.isfile('{}-macsio-log.log'.format(id)): - os.rename('{}-macsio-log.log'.format(id), '{}/{}/macsio-log.log'.format(self.directory, id)) - - if os.path.isfile('{}-macsio-timings.log'.format(id)): - os.rename('{}-macsio-timings.log'.format(id), '{}/{}/macsio-timings.log'.format(self.directory, id)) - - end = time.time() - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - -def main(): - PARSER = argparse.ArgumentParser( - description='H5bench: a Parallel I/O Benchmark Suite for HDF5: ' - ) - - PARSER.add_argument( - 'setup', - action='store', - help='JSON file with the benchmarks to run' - ) - - PARSER.add_argument( - '-a', - '--abort-on-failure', - action='store_true', - dest='abort', - help='Stop h5bench if a benchmark failed' - ) - - PARSER.add_argument( - '-d', - '--debug', - action='store_true', - dest='debug', - help='Enable debug mode' - ) - - PARSER.add_argument( - '-v', - '--validate-mode', - action='store_true', - dest='validate', - help='Validated if the requested mode (async/sync) was run' - ) - - PARSER.add_argument( - '-p', - '--prefix', - action='store', - dest='prefix', - help='Prefix where all h5bench binaries were installed' - ) - - PARSER.add_argument( - '-f', - '--filter', - action='store', - dest='filter', - help='Execute only filtered benchmarks' - ) - - PARSER.add_argument( - '-V', - '--version', - action='version', - version='%(prog)s ' + h5bench_version.__version__ - ) - - ARGS = PARSER.parse_args() - - BENCH = H5bench(ARGS.setup, ARGS.prefix, ARGS.debug, ARGS.abort, ARGS.validate, ARGS.filter) - BENCH.run() - - -if __name__ == '__main__': - main() diff --git a/build/h5bench_append b/build/h5bench_append deleted file mode 100755 index bdaf1c9361ffc22b0cb987210d22cbbda2a2b55d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 222528 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 diff --git a/build/h5bench_configuration.py b/build/h5bench_configuration.py deleted file mode 100644 index ede977df..00000000 --- a/build/h5bench_configuration.py +++ /dev/null @@ -1 +0,0 @@ -__install__ = "/users/PAS2406/henryzhou1201/h5bench_project/bin/" diff --git a/build/h5bench_overwrite b/build/h5bench_overwrite deleted file mode 100755 index 76e9e0126033de3c7db76d401eaee217c8c0cc39..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 222288 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 diff --git a/build/h5bench_read b/build/h5bench_read deleted file mode 100755 index 5a82e9ba3a1619502d98cf72431fa26bc6fad5e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 227560 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�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 diff --git a/build/h5bench_version.py b/build/h5bench_version.py deleted file mode 100644 index 96e3ce8d..00000000 --- a/build/h5bench_version.py +++ /dev/null @@ -1 +0,0 @@ -__version__ = '1.4.0' diff --git a/build/h5bench_write b/build/h5bench_write deleted file mode 100755 index e0726fecca27eb8a76a005ce8ba89e71173e7772..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 240736 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 diff --git a/build/h5bench_write_normal_dist b/build/h5bench_write_normal_dist deleted file mode 100755 index 98b8f5c130bc7e1429e83d83c60d2fb1d1982a43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 259520 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�}hyrr*Lr`3IYL%q96a>U+y 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¥_AEP?@1p+pMEirPDX#0H>sA}!CJq|Sy5$cn2x8z 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 KG5=v@)&B*;pBaAu diff --git a/build_1.0/DartConfiguration.tcl b/build_1.0/DartConfiguration.tcl deleted file mode 100644 index 91a12c05..00000000 --- a/build_1.0/DartConfiguration.tcl +++ /dev/null @@ -1,106 +0,0 @@ -# This file is configured by CMake automatically as DartConfiguration.tcl -# If you choose not to use CMake, this file may be hand configured, by -# filling in the required variables. - - -# Configuration directories and files -SourceDirectory: /users/PAS2406/henryzhou1201/h5bench_project/h5bench -BuildDirectory: /users/PAS2406/henryzhou1201/h5bench_project/h5bench/build_1.0 - -# Where to place the cost data store -CostDataFile: - -# Site is something like machine.domain, i.e. pragmatic.crd -Site: owens-login04.hpc.osc.edu - -# Build name is osname-revision-compiler, i.e. Linux-2.4.2-2smp-c++ -BuildName: Linux-c++ - -# Subprojects -LabelsForSubprojects: - -# Submission information -SubmitURL: http:// -SubmitInactivityTimeout: - -# Dashboard start time -NightlyStartTime: 00:00:00 EDT - -# Commands for the build/test/submit cycle -ConfigureCommand: "/users/PAS2406/henryzhou1201/.local/bin/cmake" "/users/PAS2406/henryzhou1201/h5bench_project/h5bench" -MakeCommand: /users/PAS2406/henryzhou1201/.local/bin/cmake --build . --config "${CTEST_CONFIGURATION_TYPE}" -DefaultCTestConfigurationType: Release - -# version control -UpdateVersionOnly: - -# CVS options -# Default is "-d -P -A" -CVSCommand: -CVSUpdateOptions: - -# Subversion options -SVNCommand: -SVNOptions: -SVNUpdateOptions: - -# Git options -GITCommand: /usr/bin/git -GITInitSubmodules: -GITUpdateOptions: -GITUpdateCustom: - -# Perforce options -P4Command: -P4Client: -P4Options: -P4UpdateOptions: -P4UpdateCustom: - -# Generic update command -UpdateCommand: /usr/bin/git -UpdateOptions: -UpdateType: git - -# Compiler info -Compiler: /usr/local/gnu/8.4.0/bin/c++ -CompilerVersion: 8.4.0 - -# Dynamic analysis (MemCheck) -PurifyCommand: -ValgrindCommand: -ValgrindCommandOptions: -DrMemoryCommand: -DrMemoryCommandOptions: -CudaSanitizerCommand: -CudaSanitizerCommandOptions: -MemoryCheckType: -MemoryCheckSanitizerOptions: -MemoryCheckCommand: /usr/bin/valgrind -MemoryCheckCommandOptions: -MemoryCheckSuppressionFile: - -# Coverage -CoverageCommand: /usr/local/gnu/8.4.0/bin/gcov -CoverageExtraFlags: -l - -# Testing options -# TimeOut is the amount of time in seconds to wait for processes -# to complete during testing. After TimeOut seconds, the -# process will be summarily terminated. -# Currently set to 25 minutes -TimeOut: 1500 - -# During parallel testing CTest will not start a new test if doing -# so would cause the system load to exceed this value. -TestLoad: - -UseLaunchers: -CurlOptions: -# warning, if you add new options here that have to do with submit, -# you have to update cmCTestSubmitCommand.cxx - -# For CTest submissions that timeout, these options -# specify behavior for retrying the submission -CTestSubmitRetryDelay: 5 -CTestSubmitRetryCount: 3 diff --git a/build_1.0/h5bench b/build_1.0/h5bench deleted file mode 100755 index 992e1edf..00000000 --- a/build_1.0/h5bench +++ /dev/null @@ -1,1022 +0,0 @@ -#!/usr/bin/env python3 - -import os -import sys -import json -import time -import uuid -import shlex -import errno -import distutils.spawn -import argparse -import collections -import subprocess -import h5bench_version -import h5bench_configuration -import logging -import logging.handlers - - -class H5bench: - """H5bench benchmark suite.""" - - H5BENCH_PATTERNS_WRITE = 'h5bench_write' - H5BENCH_PATTERNS_WRITE_UNLIMITED = 'h5bench_write_unlimited' - H5BENCH_PATTERNS_WRITE_VAR_NORMAL_DIST = 'h5bench_write_var_normal_dist' - H5BENCH_PATTERNS_APPEND = 'h5bench_append' - H5BENCH_PATTERNS_OVERWRITE = 'h5bench_overwrite' - H5BENCH_PATTERNS_READ = 'h5bench_read' - H5BENCH_EXERCISER = 'h5bench_exerciser' - H5BENCH_METADATA = 'h5bench_hdf5_iotest' - H5BENCH_AMREX_SYNC = 'h5bench_amrex_sync' - H5BENCH_AMREX_ASYNC = 'h5bench_amrex_async' - H5BENCH_OPENPMD_WRITE = 'h5bench_openpmd_write' - H5BENCH_OPENPMD_READ = 'h5bench_openpmd_read' - H5BENCH_E3SM = 'h5bench_e3sm' - H5BENCH_MACSIO = 'h5bench_macsio' - - def __init__(self, setup, prefix=None, debug=None, abort=None, validate=None, filter=None): - """Initialize the suite.""" - self.LOG_FILENAME = '{}-h5bench.log'.format(setup.replace('.json', '')) - - self.check_parallel() - - self.configure_log(debug) - - self.prefix = prefix - self.setup = setup - self.abort = abort - self.validate = validate - - if filter: - self.filter = filter.split(',') - else: - self.filter = None - - def check_parallel(self): - """Check for parallel overwrite command.""" - mpi = [ - 'mpirun', 'mpiexec', - 'srun' - ] - - # Get user defined shell - if 'SHELL' in os.environ: - shell = os.environ['SHELL'] - - for m in mpi: - if m in shell: - print('You should not call MPI directly when running h5bench.') - - sys.exit(os.EX_USAGE) - else: - shell = None - - def configure_log(self, debug): - """Configure the logging system.""" - self.logger = logging.getLogger('h5bench') - - if debug: - self.logger.setLevel(logging.DEBUG) - else: - self.logger.setLevel(logging.INFO) - - # Defines the format of the logger - formatter = logging.Formatter( - '%(asctime)s %(module)s - %(levelname)s - %(message)s' - ) - - # Configure the log rotation - handler = logging.handlers.RotatingFileHandler( - self.LOG_FILENAME, - maxBytes=268435456, - backupCount=50, - encoding='utf8' - ) - - handler.setFormatter(formatter) - - self.logger.addHandler(handler) - - if debug: - console = logging.StreamHandler() - console.setFormatter(formatter) - - self.logger.addHandler(console) - - def prepare(self, setup): - """Create a directory to store all the results of the benchmark.""" - self.directory = setup['directory'] - - try: - # Create a temporary directory to store all configurations - os.makedirs(self.directory) - except OSError as exc: - if exc.errno != errno.EEXIST: - raise - - self.logger.warning('Base directory already exists: {}'.format(self.directory)) - - pass - except Exception as e: - self.logger.debug('Unable to create {}: {}'.format(self.directory, e)) - - # Check for Lustre support to set the data stripping configuration - try: - command = 'lfs getstripe {}'.format(self.directory) - - arguments = shlex.split(command) - - s = subprocess.Popen(arguments, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - sOutput, sError = s.communicate() - - if s.returncode == 0: - self.logger.info('Lustre support detected') - - if 'file-system' in setup: - if 'lustre' in setup['file-system']: - command = 'lfs setstripe' - - if 'stripe-size' in setup['file-system']['lustre']: - command += ' -S {}'.format(setup['file-system']['lustre']['stripe-size']) - - if 'stripe-count' in setup['file-system']['lustre']: - command += ' -c {}'.format(setup['file-system']['lustre']['stripe-count']) - - command += ' {}'.format(self.directory) - - self.logger.debug('Lustre stripping configuration: {}'.format(command)) - - arguments = shlex.split(command) - - s = subprocess.Popen(arguments, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - sOutput, sError = s.communicate() - - else: - self.logger.info('Lustre support not detected') - except Exception: - self.logger.info('Lustre support not detected') - - def validate_json(self, setup): - """Make sure JSON contains all the necessary properties.""" - properties = [ - 'mpi', - 'vol', - 'file-system', - 'directory', - 'benchmarks' - ] - - for p in properties: - if p not in setup: - self.logger.critical('JSON configuration file is invalid: "{}" property is missing'.format(p)) - - sys.exit(os.EX_DATAERR) - - def run(self): - """Run all the benchmarks/kernels.""" - self.logger.info('Starting h5bench Suite') - - try: - with open(self.setup) as file: - setup = json.load(file, object_pairs_hook=collections.OrderedDict) - except FileNotFoundError: - self.logger.critical('Unable to open the input configuration file') - - sys.exit(os.EX_NOINPUT) - except Exception as e: - self.logger.critical('Unable to parse the input configuration file)') - self.logger.critical(e) - - sys.exit(os.EX_NOINPUT) - - self.validate_json(setup) - self.prepare(setup) - - self.vol_environment = os.environ.copy() - self.prepare_vol(setup['vol']) - - benchmarks = setup['benchmarks'] - - for benchmark in benchmarks: - name = benchmark['benchmark'] - - # Check if filters were enabled - if self.filter: - # Skip the benchmark if no specified in the argument - if name not in self.filter: - self.logger.warning('Skipping "{}" due to active filters'.format(name)) - - continue - - id = str(uuid.uuid4()).split('-')[0] - if 'SLURM_JOB_ID' in os.environ: - jobid = os.environ['SLURM_JOB_ID'] # nersc - elif 'COBALT_JOBID' in os.environ: - jobid = os.environ['COBALT_JOBID'] # alcf_theta - elif 'PBS_JOBID' in os.environ: - jobid = os.environ['PBS_JOBID'] # alcf_polaris - elif 'LSB_JOBID' in os.environ: - jobid = os.environ['LSB_JOBID'] # olcf - else: - jobid = None - - if jobid is not None: - id = id + "-" + jobid - self.logger.info('JOBID: {}'.format(jobid)) - - self.logger.info('h5bench [{}] - Starting'.format(name)) - self.logger.info('h5bench [{}] - DIR: {}/{}/'.format(name, setup['directory'], id)) - - os.makedirs('{}/{}'.format(setup['directory'], id)) - - self.prepare_parallel(setup['mpi']) - - if name in ['write', 'write-unlimited', 'overwrite', 'append', 'read', 'write_var_normal_dist']: - self.run_pattern(id, name, benchmark, setup['vol']) - elif name == 'exerciser': - self.run_exerciser(id, benchmark) - elif name == 'metadata': - self.run_metadata(id, benchmark) - elif name == 'amrex': - self.run_amrex(id, benchmark, setup['vol']) - elif name == 'openpmd': - self.run_openpmd(id, benchmark) - elif name == 'e3sm': - self.run_e3sm(id, benchmark) - elif name == 'macsio': - self.run_macsio(id, benchmark) - else: - self.logger.critical('{} - Unsupported benchmark/kernel') - - self.logger.info('h5bench [{}] - Complete'.format(name)) - - self.logger.info('Finishing h5bench Suite') - - def prepare_parallel(self, mpi): - """Prepare the MPI launch command.""" - if 'configuration' in mpi: - self.mpi = '{} {}'.format(mpi['command'], mpi['configuration']) - else: - if mpi['command'] in ['mpirun', 'mpiexec']: - self.mpi = '{} -np {}'.format(mpi['command'], mpi['ranks']) - elif mpi['command'] == 'srun': - self.mpi = '{} --cpu_bind=cores -n {}'.format(mpi['command'], mpi['ranks']) - else: - self.logger.warning('Unknown MPI launcher selected!') - - self.mpi = '' - - return - - self.logger.info('Parallel setup: {}'.format(self.mpi)) - - def prepare_vol(self, vol): - """Prepare the environment variables for the VOL.""" - - if vol is not None: - if 'LD_LIBRARY_PATH' not in self.vol_environment: - self.vol_environment['LD_LIBRARY_PATH'] = '' - - if 'DYLD_LIBRARY_PATH' not in self.vol_environment: - self.vol_environment['DYLD_LIBRARY_PATH'] = '' - - if 'LD_PRELOAD' not in self.vol_environment: - self.vol_environment['LD_PRELOAD'] = '' - - if 'library' in vol: - self.vol_environment['LD_LIBRARY_PATH'] += ':' + vol['library'] - self.vol_environment['DYLD_LIBRARY_PATH'] += ':' + vol['library'] - if 'path' in vol: - self.vol_environment['HDF5_PLUGIN_PATH'] = vol['path'] - if 'preload' in vol: - self.vol_environment['LD_PRELOAD'] += vol['preload'] - - self.vol_environment['ABT_THREAD_STACKSIZE'] = '100000' - - if 'HDF5_PLUGIN_PATH' in self.vol_environment: - self.logger.debug('HDF5_PLUGIN_PATH: %s', self.vol_environment['HDF5_PLUGIN_PATH']) - - if 'LD_LIBRARY_PATH' in self.vol_environment: - self.logger.debug('LD_LIBRARY_PATH: %s', self.vol_environment['LD_LIBRARY_PATH']) - - if 'DYLD_LIBRARY_PATH' in self.vol_environment: - self.logger.debug('DYLD_LIBRARY_PATH: %s', self.vol_environment['DYLD_LIBRARY_PATH']) - - if 'LD_PRELOAD' in self.vol_environment: - self.logger.debug('LD_PRELOAD: %s', self.vol_environment['LD_PRELOAD']) - - def enable_vol(self, vol): - """Enable VOL by setting the connector.""" - if 'connector' in vol: - self.vol_environment['HDF5_VOL_CONNECTOR'] = vol['connector'] - - self.logger.info('HDF5 VOL connector: %s', vol['connector']) - - def disable_vol(self, vol): - """Disable VOL by setting the connector.""" - if 'HDF5_VOL_CONNECTOR' in self.vol_environment: - del self.vol_environment['HDF5_VOL_CONNECTOR'] - - def reset_vol(self): - """Reset the environment variables for the VOL.""" - if self.vol_environment is not None: - if 'HDF5_PLUGIN_PATH' in self.vol_environment: - del self.vol_environment['HDF5_PLUGIN_PATH'] - if 'HDF5_VOL_CONNECTOR' in self.vol_environment: - del self.vol_environment['HDF5_VOL_CONNECTOR'] - - if 'ABT_THREAD_STACKSIZE' in self.vol_environment: - del self.vol_environment['ABT_THREAD_STACKSIZE'] - - def check_for_hdf5_error(self, stderr_file_name): - has_error_message = False - - with open(stderr_file_name, mode='r') as stderr_file: - lines = stderr_file.readlines() - - for line in lines: - if 'Error detected in HDF5' in line: - has_error_message = True - - self.logger.error(line.strip()) - self.logger.error('Check %s for detailed log', stderr_file_name) - - sys.exit(os.EX_IOERR) - - return has_error_message - - def run_pattern(self, id, operation, setup, vol): - """Run the h5bench_patterns (write/read) benchmarks.""" - try: - start = time.time() - - # Define the output file (should be a .h5 file) - file = '{}/{}'.format(self.directory, setup['file']) - configuration = setup['configuration'] - - # Disable any user-defined VOL connectors as we will be handling that - self.disable_vol(vol) - - if configuration['MODE'] in ['ASYNC', 'LOG']: - self.enable_vol(vol) - - configuration_file = '{}/{}/h5bench.cfg'.format(self.directory, id) - - # Create the configuration file for this benchmark - with open(configuration_file, 'w+') as f: - for key in configuration: - # Make sure the CSV file is generated in the temporary path - if key == 'CSV_FILE': - configuration[key] = '{}/{}/{}'.format(self.directory, id, configuration[key]) - - if key == 'MODE': - continue - - f.write('{}={}\n'.format(key, configuration[key])) - - if operation == 'append': - f.write('IO_OPERATION=APPEND\n') - - if operation == 'overwrite': - f.write('IO_OPERATION=OVERWRITE\n') - - if operation == 'write': - benchmark_path = self.H5BENCH_PATTERNS_WRITE - - if operation == 'write-unlimited': - benchmark_path = self.H5BENCH_PATTERNS_WRITE_UNLIMITED - - if operation == 'write_var_normal_dist': - benchmark_path = self.H5BENCH_PATTERNS_WRITE_VAR_NORMAL_DIST - - if operation == 'overwrite': - benchmark_path = self.H5BENCH_PATTERNS_OVERWRITE - - if operation == 'append': - benchmark_path = self.H5BENCH_PATTERNS_APPEND - - if operation == 'read': - benchmark_path = self.H5BENCH_PATTERNS_READ - - if self.prefix: - benchmark_path = self.prefix + '/' + benchmark_path - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + benchmark_path): - benchmark_path = h5bench_configuration.__install__ + '/' + benchmark_path - else: - benchmark_path = benchmark_path - - command = '{} {} {} {}'.format( - self.mpi, - benchmark_path, - configuration_file, - file - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - if configuration['MODE'] in ['ASYNC', 'LOG']: - self.disable_vol(vol) - - if self.validate: - used_async = False - - with open(stdout_file_name, mode='r') as stdout_file: - lines = stdout_file.readlines() - - for line in lines: - if 'Mode: ASYNC' in line: - used_async = True - break - - if (configuration['MODE'] == 'ASYNC' and used_async) or (configuration['MODE'] == 'SYNC' and not used_async): - self.logger.info('Requested and ran in %s mode', 'ASYNC' if used_async else 'SYNC') - else: - self.logger.warning('Requested %s mode but ran in %s mode', configuration['MODE'], 'ASYNC' if used_async else 'SYNC') - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - sys.exit(os.EX_SOFTWARE) - - def is_available(self, executable): - """Check if binary is available.""" - return distutils.spawn.find_executable( - executable, - path=os.environ['PATH'] + ':.' - ) - - def run_exerciser(self, id, setup): - """Run the exerciser benchmark.""" - if not self.is_available(self.H5BENCH_EXERCISER): - self.logger.critical('{} is not available'.format(self.H5BENCH_EXERCISER)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - configuration = setup['configuration'] - - parameters = [] - - parameters_binary = [ - 'keepfile', - 'usechunked', - 'indepio', - 'addattr', - 'derivedtype' - ] - - # Create the configuration parameter list - for key in configuration: - if key in parameters_binary: - if configuration[key].lower() == 'true': - parameters.append('--{} '.format(key)) - else: - parameters.append('--{} {} '.format(key, configuration[key])) - - if self.prefix: - benchmark_path = self.prefix + '/' + self.H5BENCH_EXERCISER - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_EXERCISER): - benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_EXERCISER - else: - benchmark_path = self.H5BENCH_EXERCISER - - command = '{} {} {}'.format( - self.mpi, - benchmark_path, - ' '.join(parameters) - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - sys.exit(os.EX_SOFTWARE) - - def run_metadata(self, id, setup): - """Run the metadata stress benchmark.""" - if not self.is_available(self.H5BENCH_METADATA): - self.logger.critical('{} is not available'.format(self.H5BENCH_METADATA)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - # Define the output file (should be a .h5 file) - file = '{}/{}'.format(self.directory, setup['file']) - configuration = setup['configuration'] - - configuration_file = '{}/{}/hdf5_iotest.ini'.format(self.directory, id) - - # Create the configuration file for this benchmark - with open(configuration_file, 'w+') as f: - f.write('[DEFAULT]\n') - - for key in configuration: - # Make sure the CSV file is generated in the temporary path - if key == 'csv-file': - configuration[key] = '{}/{}/{}'.format(self.directory, id, configuration[key]) - - f.write('{} = {}\n'.format(key, configuration[key])) - - f.write('hdf5-file = {}\n'.format(file)) - - if self.prefix: - benchmark_path = self.prefix + '/' + self.H5BENCH_METADATA - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_METADATA): - benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_METADATA - else: - benchmark_path = self.H5BENCH_METADATA - - command = '{} {} {}'.format( - self.mpi, - benchmark_path, - configuration_file - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - sys.exit(os.EX_SOFTWARE) - - def run_amrex(self, id, setup, vol): - """Run the AMReX benchmark.""" - if not self.is_available(self.H5BENCH_AMREX_SYNC): - self.logger.critical('{} is not available'.format(self.H5BENCH_AMREX_SYNC)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - directory = '{}/{}/{}'.format(self.directory, id, setup['file']) - configuration = setup['configuration'] - - # Disable any user-defined VOL connectors as we will be handling that - self.disable_vol(vol) - - if configuration['mode'] in ['ASYNC', 'LOG']: - self.enable_vol(vol) - - binary = self.H5BENCH_AMREX_ASYNC - else: - binary = self.H5BENCH_AMREX_SYNC - - configuration_file = '{}/{}/amrex.ini'.format(self.directory, id) - - try: - # Create a temporary directory to store all configurations - os.makedirs(directory) - except OSError as exc: - if exc.errno != errno.EEXIST: - raise - - self.logger.warning('Base directory already exists: {}'.format(self.directory)) - - pass - except Exception as e: - self.logger.debug('Unable to create {}: {}'.format(self.directory, e)) - - # Create the configuration file for this benchmark - with open(configuration_file, 'w+') as f: - for key in configuration: - f.write('{} = {}\n'.format(key, configuration[key])) - - # f.write('directory = {}\n'.format(directory)) - - if self.prefix: - benchmark_path = self.prefix + '/' + self.binary - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): - benchmark_path = h5bench_configuration.__install__ + '/' + binary - else: - benchmark_path = binary - - command = '{} {} {}'.format( - self.mpi, - benchmark_path, - configuration_file - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - if configuration['mode'] in ['ASYNC', 'LOG']: - self.disable_vol(vol) - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - sys.exit(os.EX_SOFTWARE) - - def run_openpmd(self, id, setup): - """Run the OpenPMD kernel benchmark.""" - if not self.is_available(self.H5BENCH_OPENPMD_WRITE): - self.logger.critical('{} is not available'.format(self.H5BENCH_OPENPMD_WRITE)) - - sys.exit(os.EX_UNAVAILABLE) - - if not self.is_available(self.H5BENCH_OPENPMD_READ): - self.logger.critical('{} is not available'.format(self.H5BENCH_OPENPMD_READ)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - # Define the output file (should be a .h5 file) - if 'file' in setup: - self.logger.warning('OpenPMD does not take an input file name, only the directory') - - configuration = setup['configuration'] - - configuration_file = '{}/{}/openpmd.input'.format(self.directory, id) - - # Create the configuration file for this benchmark - with open(configuration_file, 'w+') as f: - for key in configuration: - if 'operation' in key: - continue - - f.write('{}={}\n'.format(key, configuration[key])) - - f.write('fileLocation={}\n'.format(self.directory)) - - if configuration['operation'] == 'write': - binary = self.H5BENCH_OPENPMD_WRITE - - if self.prefix: - benchmark_path = self.prefix + '/' + binary - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): - benchmark_path = h5bench_configuration.__install__ + '/' + binary - else: - benchmark_path = binary - - command = '{} {} {}'.format( - self.mpi, - benchmark_path, - configuration_file - ) - elif configuration['operation'] == 'read': - binary = self.H5BENCH_OPENPMD_READ - - if self.prefix: - benchmark_path = self.prefix + '/' + binary - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + binary): - benchmark_path = h5bench_configuration.__install__ + '/' + binary - else: - benchmark_path = binary - - file_path = '{}/8a_parallel_3Db'.format(self.directory) - - command = '{} {} {} {}'.format( - self.mpi, - benchmark_path, - file_path, - configuration['pattern'] - ) - else: - self.logger.error('Unsupported operation for OpenPMD benchmark') - - sys.exit(os.EX_SOFTWARE) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - def run_e3sm(self, id, setup): - """Run the E3SM benchmark.""" - if not self.is_available(self.H5BENCH_E3SM): - self.logger.critical('{} is not available'.format(self.H5BENCH_E3SM)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - configuration = setup['configuration'] - - parameters = [] - - # Create the configuration parameter list - for key in configuration: - if key not in ['i', 'o', 'map'] and configuration[key]: - parameters.append('-{} {} '.format(key, configuration[key])) - - # Temporarily overwrite -x and -a to only supported patterns - parameters.append('-{} {}'.format('a', 'hdf5')) - parameters.append('-{} {}'.format('x', 'blob')) - - parameters.append('-o {}/{}/{} '.format(self.directory, id, setup['file'])) - - file = '{}/{}'.format(self.directory, configuration['map']) - - if self.prefix: - benchmark_path = self.prefix + '/' + self.H5BENCH_E3SM - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_E3SM): - benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_E3SM - else: - benchmark_path = self.H5BENCH_E3SM - - command = '{} {} {} {}'.format( - self.mpi, - benchmark_path, - ' '.join(parameters), - file - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - end = time.time() - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - def run_macsio(self, id, setup): - """Run the MACSIO benchmark.""" - if not self.is_available(self.H5BENCH_MACSIO): - self.logger.critical('{} is not available'.format(self.H5BENCH_MACSIO)) - - sys.exit(os.EX_UNAVAILABLE) - - try: - start = time.time() - - configuration = setup['configuration'] - - parameters = [] - - # Create the configuration parameter list - for key in configuration: - if key not in ['filebase', 'interface'] and configuration[key]: - parameters.append('--{} {} '.format(key, configuration[key])) - - parameters.append('--interface {} '.format('hdf5')) - parameters.append('--filebase {}/{}/{} '.format(self.directory, id, setup['file'].replace('.h5', ''))) - parameters.append('--log_file_name {}/{}/macsio.log '.format(self.directory, id)) - parameters.append('--timings_file_name {}/{}/timings.log '.format(self.directory, id)) - - if self.prefix: - benchmark_path = self.prefix + '/' + self.H5BENCH_MACSIO - else: - if os.path.isfile(h5bench_configuration.__install__ + '/' + self.H5BENCH_MACSIO): - benchmark_path = h5bench_configuration.__install__ + '/' + self.H5BENCH_MACSIO - else: - benchmark_path = self.H5BENCH_MACSIO - - command = '{} {} {}'.format( - self.mpi, - benchmark_path, - ' '.join(parameters) - ) - - self.logger.info(command) - - # Make sure the command line is in the correct format - arguments = shlex.split(command) - - stdout_file_name = '{}/{}/stdout'.format(self.directory, id) - stderr_file_name = '{}/{}/stderr'.format(self.directory, id) - - with open(stdout_file_name, mode='w') as stdout_file, open(stderr_file_name, mode='w') as stderr_file: - s = subprocess.Popen(arguments, stdout=stdout_file, stderr=stderr_file, env=self.vol_environment) - sOutput, sError = s.communicate() - - if s.returncode == 0 and not self.check_for_hdf5_error(stderr_file_name): - self.logger.info('SUCCESS (all output files are located at %s/%s)', self.directory, id) - else: - self.logger.error('Return: %s (check %s for detailed log)', s.returncode, stderr_file_name) - - if self.abort: - self.logger.critical('h5bench execution aborted upon first error') - - sys.exit(os.EX_SOFTWARE) - - # Move the files if they were generated - if os.path.isfile('{}-macsio-log.log'.format(id)): - os.rename('{}-macsio-log.log'.format(id), '{}/{}/macsio-log.log'.format(self.directory, id)) - - if os.path.isfile('{}-macsio-timings.log'.format(id)): - os.rename('{}-macsio-timings.log'.format(id), '{}/{}/macsio-timings.log'.format(self.directory, id)) - - end = time.time() - - self.logger.info('Runtime: {:.7f} seconds (elapsed time, includes allocation wait time)'.format(end - start)) - except Exception as e: - self.logger.error('Unable to run the benchmark: %s', e) - - -def main(): - PARSER = argparse.ArgumentParser( - description='H5bench: a Parallel I/O Benchmark Suite for HDF5: ' - ) - - PARSER.add_argument( - 'setup', - action='store', - help='JSON file with the benchmarks to run' - ) - - PARSER.add_argument( - '-a', - '--abort-on-failure', - action='store_true', - dest='abort', - help='Stop h5bench if a benchmark failed' - ) - - PARSER.add_argument( - '-d', - '--debug', - action='store_true', - dest='debug', - help='Enable debug mode' - ) - - PARSER.add_argument( - '-v', - '--validate-mode', - action='store_true', - dest='validate', - help='Validated if the requested mode (async/sync) was run' - ) - - PARSER.add_argument( - '-p', - '--prefix', - action='store', - dest='prefix', - help='Prefix where all h5bench binaries were installed' - ) - - PARSER.add_argument( - '-f', - '--filter', - action='store', - dest='filter', - help='Execute only filtered benchmarks' - ) - - PARSER.add_argument( - '-V', - '--version', - action='version', - version='%(prog)s ' + h5bench_version.__version__ - ) - - ARGS = PARSER.parse_args() - - BENCH = H5bench(ARGS.setup, ARGS.prefix, ARGS.debug, ARGS.abort, ARGS.validate, ARGS.filter) - BENCH.run() - - -if __name__ == '__main__': - main() diff --git a/build_1.0/h5bench_append b/build_1.0/h5bench_append deleted file mode 100755 index 5d5d23921eddcc6bd0b788f6e3047928b3a05919..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 226888 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 D%X!3G diff --git a/build_1.0/h5bench_configuration.py b/build_1.0/h5bench_configuration.py deleted file mode 100644 index 6da8b805..00000000 --- a/build_1.0/h5bench_configuration.py +++ /dev/null @@ -1 +0,0 @@ -__install__ = "/users/PAS2406/henryzhou1201/h5bench_project/bin_1.0/bin/" diff --git a/build_1.0/h5bench_overwrite b/build_1.0/h5bench_overwrite deleted file mode 100755 index 28a4e7c7f5aa772783266d9bd932e681dc48b136..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 222544 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 J+;d?g$-l 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 PyH)fl{!Dnd%jkar$&Es` diff --git a/build_1.0/h5bench_read b/build_1.0/h5bench_read deleted file mode 100755 index 66eea31fb58e14800a04a460fbd529b8a31e7505..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 227824 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 diff --git a/build_1.0/h5bench_version.py b/build_1.0/h5bench_version.py deleted file mode 100644 index 96e3ce8d..00000000 --- a/build_1.0/h5bench_version.py +++ /dev/null @@ -1 +0,0 @@ -__version__ = '1.4.0' diff --git a/build_1.0/h5bench_write b/build_1.0/h5bench_write deleted file mode 100755 index 9fedaa938c714b81d8ea0e32080f0fcaf48a3b43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 245280 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 diff --git a/build_1.0/h5bench_write_normal_dist b/build_1.0/h5bench_write_normal_dist deleted file mode 100755 index 00ec67c6559cce0317435f77e5ad0108b1859c90..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 259784 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