Mohamad Chaarawi
b4a54c34e8
Merge branch 'master' into fix-modules
...
Conflicts:
src/aiori-DAOS.c
src/aiori-DFS.c
2020-06-11 19:55:23 +00:00
Julian M. Kunkel
eb2cd27fac
Removed offset from IOR structure.
2020-06-10 17:47:07 +01:00
Sven Breuner
c828a0f32c
mdtest: use correct number of bytes for posix_memalign of read buffer
...
Fixes a typo in initial posix_memalign commit for DirectIO support.
2020-06-03 01:22:44 +03:00
Sven Breuner
3eb488939d
mdtest: allocate aligned buffers to support DirectIO
2020-06-03 00:30:38 +03:00
Julian M. Kunkel
5663593919
Moved generic IOR information to "hint" structure. Backends should only use the "hints" if set.
2020-05-31 12:50:03 +01:00
Julian M. Kunkel
8098c3740a
Refactored fd into aiori_fd_t for type safety.
2020-05-31 12:12:49 +01:00
Julian M. Kunkel
294b8891e6
Created dummy option type to provide type safety. Fixed various call issues for options.
2020-05-31 11:50:15 +01:00
Julian M. Kunkel
e91b79cea0
Moved Lustre/GPFS/BeeGFS options into POSIX backend. Needs testing. Additional minor fixes.
2020-05-30 20:09:37 +01:00
Julian M. Kunkel
aa9e2ad815
MDTest updated for AIORI changes.
2020-05-30 18:30:26 +01:00
Julian M. Kunkel
1890aaaeb0
Started to move IOR specific knowledge out of AIORI.
...
For now, and compatibility, IOR options can still be set/internally accessed using the backends init_xfer_options.
This should be removed in the long run to strip away this dependency.
2020-05-30 18:19:48 +01:00
Julian M. Kunkel
153b7aa60f
Critical bugfix for ior API (used e.g. in IO500)
...
TODO: Check potential issue when using IOR scripts with different backends.
2020-05-28 21:18:44 +01:00
Julian M. Kunkel
f97090a86b
Typo fix.
2020-05-28 20:11:52 +01:00
Julian M. Kunkel
4b417ef1f3
IOR shouldn't fail if it cannot determine file system sizes but warn. Functionality should presumably be moved into AIORI backends.
2020-05-28 19:05:41 +01:00
Julian M. Kunkel
c702a98376
Strict prototypes for AIORI
2019-12-22 11:21:40 +00:00
Jean-Yves VET
9da36abaca
Fix confusing output of mknod
...
Context: mknod does not return a file descriptor.
2019-12-16 14:55:26 +01:00
Glenn K. Lockwood
4409082064
Merge pull request #188 from pkoutoupis/feature-global_default_dir_layout
...
Enable global default dir layout for subdirs in Lustre
2019-10-28 10:43:56 -07:00
Petros Koutoupis
b3ecd756ce
Implemented AC_CHECK_HEADERS fix in style of #190
2019-09-30 04:25:59 -07:00
Julian Kunkel
604598ab2f
Merge pull request #182 from jschwartz-cray/fix-181
...
Fix #181 .
2019-09-19 16:53:41 +01:00
Mohamad Chaarawi
fe9d76ddf3
fix segfault when no API is specified to mdtest
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-09-09 22:03:55 +00:00
Mohamad Chaarawi
e9dd5fe15e
Merge branch 'master' into daos-devel
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
Conflicts:
configure.ac
src/Makefile.am
src/aiori-MPIIO.c
src/aiori.c
src/aiori.h
src/ior.c
src/mdtest.c
src/option.c
2019-09-09 19:55:56 +00:00
Julian Kunkel
0921556456
Merge pull request #184 from hpc/feature-aiori
...
Feature aiori
2019-09-09 15:20:43 +01:00
Petros Koutoupis
36d13d3b97
Enable global default dir layout for subdirs in Lustre
2019-09-02 22:26:12 -07:00
Julian Kunkel
ced9b0183f
Merge pull request #172 from hpc/fix-168
...
Fix #168
2019-09-01 15:51:44 +01:00
Julian M. Kunkel
e3db1759b2
Moded sync() to aiori backend.
2019-09-01 15:47:42 +01:00
Julian M. Kunkel
6de1ea3176
Merge branch 'feature-sync' into feature-aiori
2019-09-01 15:39:49 +01:00
Julian M. Kunkel
10d3db1dc8
MDTest: fixing the memset() to account for the number of iterations.
2019-08-31 17:28:08 +01:00
Josh Schwartz
0e952f0f8c
Fix #181 .
...
On systems where numTasks is not evenly divisible by 'tasksPerNode' we were
seeing some nodes reading multiple files while others read none after
reordering.
Commonly all nodes have the same number of tasks but there is nothing
requiring that to be the case. Imagine having 64 tasks running against 4
nodes which can run 20 tasks each. Here you get three groups of 20 and one
group of 4. On this sytem nodes running in the group of 4 were previously
getting tasksPerNode of 4 which meant they reordered tasks differently than
the nodes which got tasksPerNode of 20.
The key to fixing this is ensuring that every node reorders tasks the same
way, which means ensuring they all use the same input values. Obviously on
systems where the number of tasks per node is inconsistent the reordering will
also be inconsistent (some tasks may end up on the same node, or not as far
separated as desired, etc.) but at least this way you'll always end up with a
1:1 reordering.
- Renamed nodes/nodeCount to numNodes
- Renamed tasksPerNode to numTasksOnNode0
- Ensured that numTasksOnNode0 will always have the same value regardless of
which node you're on
- Removed inconsistently used globals numTasksWorld and tasksPerNode and
replaced with per-test params equivalents
- Added utility functions for setting these values:
- numNodes -> GetNumNodes
- numTasks -> GetNumTasks
- numTasksOnNode0 -> GetNumNodesOnTask0
- Improved MPI_VERSION < 3 logic for GetNumNodes so it works when numTasks is
not evenly divisible by numTasksOnNode0
- Left 'nodes' and 'tasksPerNode' in output alone to not break compatibility
- Allowed command-line params to override numTasks, numNodes, and
numTasksOnNode0 but default to using the MPI-calculated values
2019-08-30 16:45:03 -06:00
Julian M. Kunkel
4df051bf28
New option -Y to invoke the sync command.
2019-08-26 18:57:14 +01:00
Julian M. Kunkel
0d9f46e980
MDTest re-added the -Z option for compatibility (for now) and switched back behavior.
2019-08-15 16:49:46 +01:00
Julian M. Kunkel
de3baf8861
MDTest: Document choice of 42.
2019-08-15 16:21:30 +01:00
Julian Kunkel
5e6a03442f
Merge pull request #170 from ax3l/fix-someMemleaks
...
Fix Some Memory Leaks; Thanks.
2019-08-03 09:19:08 +01:00
Julian M. Kunkel
c4ff3d7c4e
Trivial fix for #168
2019-08-03 09:12:48 +01:00
Axel Huebl
bfff0df8fd
Fix Some Memory Leaks
...
Fixing some memory leaks :)
2019-08-02 23:33:01 -05:00
Julian M. Kunkel
cf56715a5a
Make sure that each read buffer contains an invalid first byte.
2019-08-01 18:33:44 +01:00
Julian M. Kunkel
ce1ae750f6
MDtest: Support to verify the read operation with a default pattern.
2019-08-01 18:29:32 +01:00
Julian M. Kunkel
df8355a9bc
Added output of mdtest stonewall timer.
2019-08-01 17:57:45 +01:00
Julian M. Kunkel
061b5a860f
Backmerged: New option: print rate AND time; improves debugging.
2019-08-01 17:54:11 +01:00
John Bent
3890b71b54
Fixed issues and followed suggestions from Glenn's review of the PR
2019-08-01 09:42:03 +09:00
John Bent
a3c37808da
Made FAIL take variable args so we can pass printf like args to it
2019-07-28 11:17:11 -06:00
John Bent
0ffec67d2b
Following Julian's suggestion about better naming
2019-07-28 10:25:42 -06:00
John Bent
b2d486f749
Followed Andreas suggestion to replace escape double quotes within printf's with single quotes
2019-07-28 10:07:03 -06:00
John Bent
168a407793
Fixed inconsistent spacing that Andreas commented upon
2019-07-28 09:55:00 -06:00
John Bent
d69957e55b
Final changes cleaning up the output messages
2019-07-27 14:31:49 -06:00
John Bent
e767ef3de9
Remove extraneous print_help function that was causing people to have to edit the same string in two different locations
2019-07-27 13:26:39 -06:00
John Bent
f6491fcd37
Cleaned up the verbose messages by creating a macro and a function
2019-07-27 13:22:15 -06:00
John Bent
9d6480d46e
Fixed bug in the nstride calculation where only 0 was computing it correctly. Had to bcast it out
2019-07-27 11:30:07 -06:00
John Bent
945487f743
Better debug message when stat fails
2019-07-27 09:20:20 -06:00
John Bent
524d053be1
Making shift work in mdtest as well as it works in IOR and on a per-node basis.
...
Also added printing the nodemap so we can check the allocation.
2019-07-26 08:55:24 -06:00
John Bent
7981fc70b1
Changed the behavior of shift in mdtest to mimic that in IOR so that it shifts by _entire nodes_ not by ranks.
2019-07-25 19:18:52 -06:00
Mohamad Chaarawi
262d35d87e
- Merge branch 'master' into daos-devel
...
- fix bugs with cont destroy.
- add destroy option to DFS driver
- share pool and container handle with DFS driver, and allow multi rank access
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
Conflicts:
src/ior.c
src/mdtest.c
src/option.c
src/parse_options.c
2019-06-24 21:26:15 +00:00
Gu Zheng
a6f8388f9f
add mknod support
...
Add new option '-k' to support file creation test with mknod,
which is widely used in lustre.
Signed-off-by: Gu Zheng <gzheng@ddn.com>
2019-05-23 13:41:46 +08:00
Julian M. Kunkel
c5c43c4f3c
Changed the version name to alpha to differentiate. Now mdtest has the version number from IOR.
2019-05-16 21:25:34 +01:00
Glenn K. Lockwood
9ead56c24e
Merge pull request #148 from hpc/fix-146
...
Moving options to submodules + fixes #146 + fixes #144
2019-05-14 14:32:37 -07:00
Julian M. Kunkel
30a1ca187b
Bugfix by rmn1 for #147 and #112 .
2019-05-14 14:55:11 +01:00
Julian M. Kunkel
a9b0bf35bc
Support MDTest verbosity >=5 prints behavior for all ranks instead of just rank 0 (which is enabled with verbosity level 3 as before)
2019-05-02 09:58:35 +01:00
Julian M. Kunkel
20e960d020
Support the setting of module-specific options per test.
2019-03-27 20:04:48 +00:00
Jean-Yves VET
110153cf3a
mdtest: Enable IME native interface
...
This patch makes mdtest allow IME native interface.
It also defines a generic way to enable mdtest with each
backend.
2019-02-12 15:50:51 +01:00
Mohamad Chaarawi
2c87b5e0f5
Merge remote-tracking branch 'upstream/master' into daos
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
Conflicts:
src/aiori.c
src/aiori.h
src/ior.c
src/mdtest-main.c
src/mdtest.c
src/option.c
2019-01-24 00:31:12 +00:00
Glenn K. Lockwood
4c1c73ecae
add malloc check to fix
2019-01-23 16:02:58 -08:00
Julian M. Kunkel
20bb99e1b7
Potential fix for #127 => Segmentation fault due to memory protection.
2019-01-19 17:00:49 +00:00
Julian M. Kunkel
ed421bcc7b
Fixes that issue. Hopefully works for all combinations.
2018-12-20 21:08:55 +00:00
Julian M. Kunkel
7b603bc5a9
Reset stonewall timer to make it work again with running all phases in one execution; i.e. not using multiple runs specifying: -C, -r
2018-12-19 21:37:37 +00:00
Julian M. Kunkel
4297ccd7f2
Bugfix for stonewall computation.
2018-12-19 20:29:47 +00:00
Glenn K. Lockwood
5e2e1cc96f
Merge pull request #104 from hpc/feature-hdf5-backend
...
Changed the parser to fix #98 . Does _not_ yet have the HDF5 backend args updated. They were reverted to allow this to make the 3.2 release and should be re-applied as a separate commit.
2018-12-04 14:41:31 -06:00
Glenn K. Lockwood
5c847f552a
Merge pull request #110 from hpc/fix-gnu99-101
...
Moved _XOPEN_SOURCE to config.h; resolves #93
2018-12-04 14:13:16 -06:00
Wang Shilong
8902bc8722
mdtest: fix calculation for barriers
...
Currently, calculation for barriers case looks a bit
suprising, for example, Min stats is from min of
Max value of number of mpi proc, this makes Min
and Max very similar in our testing thus we get
a small Std value too.
I am not a MPI expert, but question is why we
don't use more nature calcuation which calculate
all results from different iterations and MPI proc?
Signed-off-by: Wang Shilong <wshilong@ddn.com>
2018-11-22 19:57:32 +08:00
Julian M. Kunkel
5a8071fbd8
GNU99 extracted _XOPEN_SOURCE to config.h.
2018-10-28 18:34:22 +00:00
Julian Kunkel
3a4f2ea33e
Merge pull request #101 from glennklockwood/issue93-squashed
...
compile correctly with -std=c99
2018-10-28 18:16:52 +00:00
Julian Kunkel
52182afed6
Merge pull request #108 from hpc/fix-106
...
Fix 106
2018-10-19 11:06:05 +01:00
Julian M. Kunkel
ea3aeea964
Bugfix initialize the variable to zero for proper API usage.
2018-10-17 16:16:46 +01:00
Julian M. Kunkel
6b0b1a9830
Fix computation when using branching factor with -n and -i.
2018-10-17 16:04:49 +01:00
Marc Vef
093113313d
mdtest: Use GetTimeStamp() instead of MPI_Wtime()
...
IOR uses the GetTimeStamp() wrapper to allow gettimeofday() to be used for timings instead of MPI_Wtime() to calculate throughput. This commits adds the same logic to mdtest timings.
2018-10-17 16:38:35 +02:00
Julian M. Kunkel
f4afa63ebf
Bugfix #106 mostly.
2018-10-17 13:50:04 +01:00
Julian M. Kunkel
6f7576aa8a
Changed the parser.
...
The parser now supports concurrent parsing of all plugin options.
Moved HDF5 collective_md option into the backend as an example.
Example: ./src/ior -a dummy --dummy.delay-xfer=50000
2018-10-11 18:31:21 +01:00
Glenn K. Lockwood
87c5c9ef04
compile correctly with -std=c99
...
This patch enables correct compilation on both MacOS and Linux using only
POSIX.1-2008-compliant C with XSI extensions.
Specifically, POSIX.1-2008 is the minimum version because we use strdup(3);
explicit XSI is required to expose putenv from glibc.
2018-10-08 13:47:28 -07:00
Jean-Yves VET
f472162784
Support old legacy name in backends
...
Context: Some backends may have used different names in
the past (like IME backend use to be IM). Legacy scripts
may break.
This patch adds a legacy name option in the aiori structure.
Both name and legacy name work to select the interface.
But the following warning is printed if the legacy name is used:
ior WARNING: [legacy name] backend is deprecated use [name] instead.
2018-09-24 11:51:00 +02:00
Julian M. Kunkel
1a4fd7d095
Fix -i option #81
2018-09-05 09:14:22 +01:00
Mohamad Chaarawi
46ff4e26be
Merge remote branch 'daos-stack/daos'
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
Conflicts:
configure.ac
src/Makefile.am
src/aiori.c
src/aiori.h
src/ior.c
src/mdtest.c
src/parse_options.c
2018-08-29 21:14:19 +00:00
Mohamad Chaarawi
5fb850c810
- update the DFS driver to latest DFS API.
...
- update cmd line options to add DAOS Pool and Container uuid and SVCL
- Add init/finalize backend functions.
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2018-08-23 21:58:53 +00:00
Julian M. Kunkel
4dcf36c1a4
Help text now outputs *compiled* APIs.
2018-08-15 17:07:17 +01:00
Shane Snyder
0ca5f26e84
cleanup RADOS func names and docs
2018-08-14 16:18:35 -05:00
Jean-Yves VET
df34f024ba
Fix warnings reported at compilation time
...
This patch fixes most of the warnings caused
by unused variables and assignments from incompatible
type.
2018-08-09 13:04:52 +02:00
Julian M. Kunkel
0870ad78b3
Support shared large runs with limited number of files per directory by creating one directory for a bunch of files.
...
Therefore, it uses the -I argument (number of files per directory) and divides it by -n (items).
This will be a number of sub directories that are created on the top-level.
2018-07-26 10:38:06 +01:00
Julian M. Kunkel
bb6d4fb2a2
Update create for stonewall.
2018-07-15 10:02:45 +01:00
Julian M. Kunkel
d4ecc76ee8
Stonewall bugfix for delete/stat.
2018-07-14 16:46:24 +01:00
Julian M. Kunkel
c0657866fd
Minor fixes for stonewalling options.
2018-07-14 12:22:36 +01:00
Julian M. Kunkel
54e47cf729
IOR: use new option parser.
...
TODO: Parse "-O" options
2018-07-14 08:41:35 +01:00
Julian M. Kunkel
0835191372
Option parser replaced.
...
Benefits: shows currently set options when used with -h
Supports options for child modules, example for aiori-dummy works, RADOS untested.
2018-07-12 18:09:13 +01:00
Julian M. Kunkel
fd4c306b98
MDTest stonewalling with status file.
...
Appears to work; stonewall timer is honored only in the creation phase.
This implies a limit to the objects that then are used for other phases.
2018-07-07 23:56:39 +01:00
Julian M. Kunkel
ed5787811c
Extracted max pathlen variable.
2018-07-07 22:39:14 +01:00
Julian M. Kunkel
48c17b4d81
Extracted (nearly identical) function DelaySeconds.
2018-07-07 22:26:57 +01:00
Julian M. Kunkel
6f8d2e8845
Some simplification / unification between IOR and MDTest.
...
MDTest needs more refactoring to be really maintainable.
2018-07-07 22:19:42 +01:00
Julian M. Kunkel
7bc868d5cf
Dummy AIORI supporting MDtest ops.
2018-07-07 20:01:03 +01:00
Julian M. Kunkel
812b798f05
IOR allows to store actual performaned stonewalling count into a status file.
2018-07-07 14:01:11 +01:00
Julian M. Kunkel
e10bebe653
MDTest supports only POSIX at the moment. Added command line check.
2018-07-07 12:14:34 +01:00
Julian M. Kunkel
a6bfa0f94b
MDTest library option.
...
Moved core functionality / variables used by both implementations to utilities
2018-07-07 10:42:48 +01:00
Julian M. Kunkel
bcaea2a39f
Replaced getopt with an alternative version (on some machines optind was broken).
2018-07-07 08:41:33 +01:00
Mohamad Chaarawi
8d0cddd21e
Add DFS ior/mdtest driver
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2018-06-13 18:37:37 +00:00
Alexander Hück
3ef16c3030
initialize path variable correctly
2018-01-24 19:26:53 +01:00
Julian M. Kunkel
c9d6c2316e
Bugfix for self referencing sprintf #20
...
Backmerge from IOR fork.
2017-11-30 12:01:19 +01:00