On 06/16/2015 08:52 AM, Dave Love wrote:
Rob Latham <[email protected]> writes:
I wasn't involved in this feature, but it looks like OrangeFS is
taking advantage of open() being declared with variable length
arguments to pass in a fourth "hint" parameter.
I'm still puzzled on what system that does anything.
In the old days you had two ways to access PVFS:
- make a round trip through the kernel module, bouncing through quite a
few userspace-kernelspace copies.
- contact PVFS servers directly through the "system interface". The one
real client for the system interface is ROMIO's PVFS driver, but some of
the early utilities would use it too (maybe still do?)
OrangeFS provides a third way: link in with the orangfs library and now
the posix open/close/read/write system calls become OrangeFS calls. no
code changes needed. You might not get a lot of parallelism out of it,
but it makes many-task non-MPI workloads (like Hadoop) easier to support.
So, that fourth argument was a (sneaky!) attempt to set some PVFS
parameters without changing the posix-like API. The less-sneaky but
gross way to do this for most file systems is via fcntl() operations,
but fcntl is an awful interface.
==rob
--
Rob Latham
Mathematics and Computer Science Division
Argonne National Lab, IL USA
_______________________________________________
Pvfs2-users mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-users