mdtest with fsync
 
 
 
 
Go to file
Jeffrey Thornton Inman b26f308191 Algorithms 'S3', 'S3_plus', and 'S3_EMC' all available.
These are variants on S3.  S3 uses the "pure" S3 interface, e.g. using
Multi-Part-Upload.  The "plus" variant enables EMC-extensions in the aws4c
library.  This allows the N:N case to use "append", in the case where
"transfer_size" != "block_size" for IOR.  In pure S3, the N:N case will
fail, because the EMC-extensions won't be enabled, and appending (which
attempts to use the EMC byte-range tricks to do this) will throw an error.

In the S3_EMC alg, N:1 uses EMCs other byte-range tricks to write different
parts of an N:1 file, and also uses append to write the parts of an N:N
file.  Preliminary tests show these EMC extensions look to improve BW by
~20%.

I put all three algs in aiori-S3.c, because it seemed some code was getting
reused.  Not sure if that's still going to make sense after the TBD, below.

TBD: Recently realized that the "pure' S3 shouldn't be trying to use
appends for anything.  In the N:N case, it should just use MPU, within each
file.  Then, there's no need for S3_plus.  We just have S3, which does MPU
for all writes where transfer_size != block_size, and uses (standard)
byte-range reads for reading.  Then S3_EMC uses "appends for N:N writes,
and byte-range writes for N:1 writes.  This separates the code for the two
algs a little more, but we might still want them in the same file.
2014-10-29 16:04:30 -06:00
config Make IOR get its version from a META file. 2011-10-27 18:46:30 -07:00
contrib Remove CVS references 2012-01-08 19:43:41 -08:00
doc Teach IOR about GPFS hints (gpfs_fcntl) 2013-10-03 18:07:49 -07:00
scripts Start with the code from IOR-2.10.3 2011-06-17 12:20:43 -07:00
src Algorithms 'S3', 'S3_plus', and 'S3_EMC' all available. 2014-10-29 16:04:30 -06:00
testing Remove CVS references 2012-01-08 19:43:41 -08:00
.gitignore Fixed bug in aiori-HDFS.c where it was calling "free(fd);", which is bad. 2014-08-28 15:39:44 -06:00
COPYRIGHT Start with the code from IOR-2.10.3 2011-06-17 12:20:43 -07:00
ChangeLog Rename RELEASE_LOG to ChangeLog and update 2012-01-08 19:43:33 -08:00
META Prep for tagging 3.0.1 2012-11-21 10:15:06 -08:00
Makefile.am Fix "make dist" 2012-01-08 20:31:01 -08:00
README Update documentation 2012-01-08 19:43:41 -08:00
bootstrap Begin conversion to autoconf 2011-10-27 17:45:09 -07:00
configure.ac S3 with Multi-Part Upload for N:1 is working. 2014-10-27 13:29:44 -06:00
lanl_aws4c.tgz S3 with Multi-Part Upload for N:1 is working. 2014-10-27 13:29:44 -06:00

README

Building
--------

0. If "configure" is missing from the top level directory, you
   probably retrieved this code directly from the repository.
   Run "./bootstrap".

   If your versions of the autotools are not new enough to run
   this script, download and official tarball in which the
   configure script is already provided.

1. Run "./configure"

   See "./configure --help" for configuration options.

2. Run "make"

3. Optionally, run "make install".  The installation prefix
   can be changed as an option to the "configure" script.