[LU-7915] investigate heuristics for SPARK client getting MDS openlock Created: 24/Mar/16  Updated: 28/May/20

Status: Open
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Minor
Reporter: Andreas Dilger Assignee: Emoly Liu
Resolution: Unresolved Votes: 0
Labels: None

Attachments: PDF File spark-on-cray-2015-lbnl.pdf    
Issue Links:
Related
is related to LU-10948 client cache open lock after N opens Open
is related to LU-10948 client cache open lock after N opens Open
is related to LU-5426 Add more controls for open file cache Resolved
Rank (Obsolete): 9223372036854775807

 Description   

During discussion with LBNL on their Hadoop Spark project, they said that there was considerable overhead when running on Lustre because of repeated open+close of the same files causing extra RPC traffic to the MDS.

Lustre has the ability to cache opens on the client with a DLM openlock, but this isn't done for regular opens by default because it has extra overhead compared to uncached opens, but only for NFS opens because the knfsd repeatedly opens the same file.

It would be worthwhile to firstly implement a tunable to enable opencache on a per-client basis (LU-5426) and then measure the performance impact of this tunable for normal usage and for Spark.



 Comments   
Comment by Gabriele Paciucci (Inactive) [ 24/Mar/16 ]

Hi adilger
Could you please ask more details on their Spark project? I run benchmark test on Spark and I didn't notice this issue. I notice an extensive use of getxattr() solved by the new (2.5) lustre local xattr cache. Thank you

Comment by Joseph Gmitter (Inactive) [ 25/Mar/16 ]

Hi Emoly,

Could you please have a look at measuring the performance as indicated by Andreas' final comment:

It would be worthwhile to firstly implement a tunable to enable opencache on a per-client basis (LU-5426) and then measure the performance impact of this tunable for normal usage and for Spark.

Thanks.
Joe

Comment by Emoly Liu [ 28/Mar/16 ]

Can anybody show me any more details about this Spark performance testing? e.g. Spark version, benchmark tool, lustre version and how large scale. Thanks.

Comment by Andreas Dilger [ 28/Mar/16 ]

The following pages describe their testing:

http://crd.lbl.gov/departments/computer-science/CLaSS/staff/costin-iancu/intel-parallel-computing-center-big-data-support-on-hpc-systems/
http://crd.lbl.gov/assets/pubs_presos/spark-on-cray.pdf

Comment by Gerrit Updater [ 20/Apr/16 ]

Emoly Liu (emoly.liu@intel.com) uploaded a new patch: http://review.whamcloud.com/19664
Subject: LU-7915 mdc: add a tunable to enable opencache
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 770f30f801417bcc24b39f0f58fe0abe35bc2bcd

Generated at Sat Feb 10 02:13:01 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.