Mohamad Chaarawi
e08314f571
update DFS and DAOS drivers to new aiori module interface.
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2020-06-11 17:26:58 +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
Mohamad Chaarawi
3623f3b8bd
DFS: allow multiple IO phases when ior_run() is called
...
- init/fini can be made multiple times
- reset tunables on fini so they can change on a re-init
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2020-05-31 16:20:58 +00:00
Julian M. Kunkel
8fa8ef0c02
Call backend statfs() instead of only POSIX-specific variant.
2020-05-31 13:30:31 +01: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
c4c19d3245
Fixed type typo in name.
2020-05-31 11:58:34 +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
930ccdc68d
Updated HDF5 to new module specification.
2020-05-30 19:01:20 +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
2de4210311
Provide a string option parser function.
2020-05-29 16:05:42 +01:00
Mark Nelson
edba70e99c
aiori-CEPHFS: don't just unmount on close, release cmount too.
...
Signed-off-by: Mark Nelson <mnelson@redhat.com>
2020-05-28 20:42:26 -05:00
Mark Nelson
efc6d49832
src/aiori-CEPHFS: Add option checks before init
...
Signed-off-by: Mark Nelson <mnelson@redhat.com>
2020-05-28 19:52:45 -05:00
Mark Nelson
8abb7a62dc
src/aiori-CEPHFS: Add sync
...
Signed-off-by: Mark Nelson <mnelson@redhat.com>
2020-05-28 22:28:16 +00: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
4eb0ebec55
Add dummy sync to dummy backend.
2020-05-28 21:13:45 +01:00
Julian M. Kunkel
8c92a1b2ff
Merge branch 'master' of github.com:hpc/ior
2020-05-28 20:12:06 +01:00
Julian M. Kunkel
f97090a86b
Typo fix.
2020-05-28 20:11:52 +01:00
Mohamad Chaarawi
28fae361f4
dfs: add DFS sync call
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2020-05-28 18:34:31 +00: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
a536649abb
Clarified some issues in the test framework and added example test. #219
2020-05-20 17:46:35 +01:00
Julian M. Kunkel
48eb1880e9
For better testing: Fixed fake tasks per node to work with MPI3, added environment variable to fake num nodes.
2020-04-21 10:35:53 +01:00
Julian Kunkel
8bc9a12f80
Merge pull request #221 from daos-stack/mschaara/dfs_l2g
...
DFS driver update to share DFS mount on init
2020-04-14 10:13:55 +01:00
Mohamad Chaarawi
1b8848ccbc
Use l2g-g2l to share the dfs mount instead of opening by each rank.
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2020-04-13 19:59:56 +00:00
Jean-Yves VET
a21137be3e
Display outlier host names
...
Display host names when using the -j argument (outlierThreshold) so
that IOR could help to better identify slow nodes:
WARNING: for client02, task 6, write elapsed transfer time is 65.738326
2020-03-17 16:31:56 +01:00
Glenn K. Lockwood
657ff8ad8f
Merge pull request #217 from markhpc/wip-aiori-cephfs
...
[RFC] src/aiori-CEPHFS: New libcephfs backend
2020-03-10 12:29:24 -07:00
Mark Nelson
9649a0c520
src/aiori-CEPHFS: New libcephfs backend
...
Signed-off-by: Mark Nelson <mnelson@redhat.com>
2020-03-10 10:19:41 -05:00
Julian M. Kunkel
9726aa0ce2
Bugfix API which doesn't set the AIORI backend.
2020-03-07 14:40:59 +00:00
Julian Kunkel
f5ecb9d974
Merge pull request #215 from daos-stack/daos-devel
...
DAOS Driver: Update License & Align with 1.0 API changes
2020-02-26 19:13:48 +00:00
Mohamad Chaarawi
50a4ba0735
DAOS Driver: Update License & Align with 1.0 API changes
...
- License should inherit from IOR License.
- remove checksums from Array API
- add DFS dir oclass option
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2020-02-26 18:53:51 +00:00
Julian Kunkel
ec8d246b33
Merge pull request #214 from markhpc/wip-ior-rados-mark
...
src/aiori-RADOS: Remove Direct IO option check.
2020-02-26 09:06:54 +00:00
Mark Nelson
e363713c07
src/aiori-RADOS: Remove Direct IO option check.
...
Signed-off-by: Mark Nelson <mnelson@redhat.com>
2020-02-25 18:13:29 -06:00
Julian M. Kunkel
c702a98376
Strict prototypes for AIORI
2019-12-22 11:21:40 +00:00
Julian M. Kunkel
6de5cdc6f9
Fixed wrong usage of platform, fixed printf output.
2019-12-21 14:14:27 +00:00
Julian M. Kunkel
240d5fae79
Trivial fix to ensure all functions are prototypes.
2019-12-21 11:19:02 +00:00
Julian M. Kunkel
73c5c0efc2
Fix for collective operations by Wolfgang Szoecs #210 .
...
It does have performance implications but is only active if needed.
2019-12-19 13:43:38 +00:00
Jean-Yves VET
0666875df3
aiori-IME: Add support of sync and mknod in IME backend
...
This patch adds the support of sync (flush client page cache
for all opened files) and mknod in the IME backend.
2019-12-17 14:51:21 +01:00
Glenn K. Lockwood
7a2d307c74
Merge pull request #208 from jyvet/mknod
...
Fix confusing output of mknod
2019-12-16 12:38:13 -08: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
Jean-Yves VET
be48206e5f
Fix compilation warnings
2019-12-16 14:51:10 +01:00
Julian Kunkel
3a34b2efb7
Merge pull request #200 from daos-stack/daos-devel
...
DAOS driver update
2019-11-13 10:38:28 +00:00
Mohamad Chaarawi
acfd4673cc
We only need to add dirs to the Hash in the DFS driver.
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-11-13 00:09:03 +00:00
Adrian Jackson
ddac5c8dbf
Merge pull request #3 from hpc/master
...
Bring fork up to date
2019-11-12 14:20:53 +00:00
Robert LeBlanc
47199e28dd
Not sure why iops and latency are left out of the JSON job output. It is really useful information.
...
Signed-off by: Robert LeBlanc <robert@leblancnet.us>
2019-11-11 23:16:01 +00:00
Afrian Jackson
9c0926ef2a
Moving fsync pmdk functionalty from persist to drain on the advice of the PMDK developers
2019-11-07 20:17:55 +00:00
Mohamad Chaarawi
fbff9b6fb2
add DFS prefix option
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-11-07 18:01:07 +00:00
Adrian Jackson
c24b2f156a
Merge pull request #2 from hpc/master
...
Merging in latest master changes
2019-11-05 15:00:47 +00:00
Afrian Jackson
b4c85798bd
Tidying up PMDK backend
2019-11-05 14:39:31 +00:00
Afrian Jackson
46c5d4e78d
Adding in dual mount functionality for NVRAM within nodes
2019-11-05 14:37:54 +00:00
Afrian Jackson
817603f5d1
Updating copyright statement
2019-10-31 15:31:28 +00:00
Afrian Jackson
fa25c31994
Adding PMDK functionality
2019-10-31 15:29:09 +00:00
Glenn K. Lockwood
3c7ac2df23
Merge pull request #196 from daos-stack/daos-devel
...
update DFS driver with new DAOS API changes.
2019-10-28 16:56:29 -07: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
Mohamad Chaarawi
92180e022d
update DFS read/write APIs with new DAOS API changes
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-10-28 16:42:44 +00:00
jschwartz-cray
ccba3b11e5
Merge branch 'master' into fix-194
2019-10-23 16:46:00 -06:00
Josh Schwartz
61333af822
Fix #194 .
...
On previous versions of IOR (and most Linux CLI applications in general)
multiple flags can be combined such as -vvv to get verbose=3 rather than
having to specify each separately as -v -v -v. This patch fixes this behavior.
It also fixes issues around handling of the verbose flag where the
output would never be printed as we were comparing verbose < VERBOSE_0
where verbose defaults to 0 and can only increase.
2019-10-23 16:17:37 -06:00
Julian Kunkel
b334c3f6fd
Merge pull request #192 from daos-stack/daos-devel
...
fix -R option to do proper data verification
2019-10-16 16:20:43 +01:00
Mohamad Chaarawi
dc82a1bf2f
ior -R should memset the buffer being read, otherwise a read that does nothing
...
will report success in the data verification phase.
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-10-16 14:54:00 +00:00
Julian M. Kunkel
a69a5916cf
Hotfix for ior -F -u
2019-10-16 09:42:10 +01:00
Glenn K. Lockwood
f40b0744ff
Merge pull request #187 from daos-stack/daos-devel
...
IOR: Add latency and IOPS numbers to each iteration.
2019-10-02 13:09:26 -07:00
Petros Koutoupis
b3ecd756ce
Implemented AC_CHECK_HEADERS fix in style of #190
2019-09-30 04:25:59 -07:00
Mohamad Chaarawi
2aea04c8cb
fix some compiler warnings.
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-09-21 22:43:20 +00:00
Mohamad Chaarawi
fca0a62ccb
update to new DAOS API for creating dfs containers.
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-09-21 22:05:54 +00: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
12284ae04a
Add latency and iops numbers to each iteration.
...
- Latency reported is computed by taking the average latency of
all ops from a single task, then taking the minimum of that
between all tasks.
- IOPS is computed by taking the total number of ops across all
tasks divided by the total access time to execute those ops.
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-09-10 18:49:32 +00:00
Mohamad Chaarawi
c58ba8ffb5
add break that was accidentally removed
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-09-10 14:11:55 +00: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
73dbda09c6
remove printf added
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-09-09 20:19:42 +00:00
Mohamad Chaarawi
5622aabf46
missed Makefile.am update
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-09-09 20:14:12 +00:00
Mohamad Chaarawi
d332d586bf
remove uneeded code and doc
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-09-09 20:07: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
Mohamad Chaarawi
57a16ddda8
- update debugging error checking in DFS.
...
- remove usleep() before daos_fini()
- fix README
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-09-09 19:14:35 +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 M. Kunkel
c83edfe39b
Extracted check function into aiori. #24 . #177
2019-09-01 15:59:52 +01:00
Julian Kunkel
ced9b0183f
Merge pull request #172 from hpc/fix-168
...
Fix #168
2019-09-01 15:51:44 +01:00
Julian Kunkel
151102ff8f
Merge pull request #176 from otatebe/master
...
abstract I/O interface for Gfarm file system
2019-09-01 15:51:16 +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
60a641f911
sync help corrected.
2019-09-01 15:29:12 +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
Julian Kunkel
47695aea49
Merge pull request #180 from jschwartz-cray/fix-179
...
Fix #179 .
2019-08-31 10:32:41 +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
Josh Schwartz
4c3d96bfed
Fix #179 .
...
-u (uniqueDir) will once again use the full file path specified by the
client instead of truncating it. This was caused by a broken sprintf
which was trying to read/write overlapping buffers.
From the glibc sprintf() documentation:
"The behavior of this function is undefined if copying takes place
between objects that overlap"
2019-08-30 15:31:23 -06:00
Josh Schwartz
0bd979637e
Added some extra debug including ERRF, WARNF, and MPI_CHECKF format string macros.
2019-08-30 15:11:25 -06:00
Mohamad Chaarawi
32db1cd902
add timing for container close.
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-08-29 03:24:48 +00:00
Mohamad Chaarawi
93730771fd
add some verbose messages on finalize routines for DAOS and DFS drivers.
...
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-08-28 17:01:51 +00:00
Julian M. Kunkel
4df051bf28
New option -Y to invoke the sync command.
2019-08-26 18:57:14 +01:00
Julian M. Kunkel
a4068be551
Improved help for fsync.
2019-08-26 15:57:13 +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
Mohamad Chaarawi
b3663bd29a
add sleep depending on MPI rank to avoid all ranks calling daos_fini()
...
at once (issue with PSM2).
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-08-14 13:32:51 +00:00
Mohamad Chaarawi
1320aa279c
add some barriers before cont close and destroy to make sure all
...
ranks are done.
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-08-12 16:04:20 +00:00
Mohamad Chaarawi
8cb878507e
Add dfs chunk_size and oclass options.
...
update dfs_remove for API change.
Signed-off-by: Mohamad Chaarawi <mohamad.chaarawi@intel.com>
2019-08-12 14:25:05 +00:00
Axel Huebl
70e8b13d1d
Fix Last Free
2019-08-04 18:27:20 -05:00
Julian Kunkel
da5f091afc
Merge pull request #169 from ax3l/fix-singleRankHeapBufferOverflow
...
Fix: Heap Buffer Overflow
2019-08-03 09:20:15 +01:00