Giter VIP home page Giter VIP logo

posix_2_ime's Introduction

POSIX to IME library

This project transparently translates POSIX calls into native calls for DDN's Infinite Memory Engine (IME) .

Preparation

The program interfaces directly with IME libraries. To generate the wrapper, run

$ make

Usage

To use the wrapper you need to set the LD_PRELOAD environment variable.

One time usage with ior:

$ LD_PRELOAD=<absolute_path_to_libposix2ime.so> ior

With Mvapich or Intel MPI:

$ mpirun -genv LD_PRELOAD <absolute_path_to_libposix2ime.so>

With OpenMPI:

$ mpirun -x LD_PRELOAD=<absolute_path_to_libposix2ime.so>

Advanded Features

In addition, the IM_CLIENT_BFS_PATH environment variable can be set to contain the Backing File System (BFS) path used by IME (if mounted on the compute nodes). By default, if this environment variable is set:

  • opendir calls are redirected to the BFS mount point on the compute node (accelerates subsequent calls such as readdir). Export the IM_CLIENT_NO_BFS_OPENDIR=1 environment variable to disable the feature.
  • Buffer in DIR (directory descriptor) is enlarged from 32KB to about 1MB. It should make subsequent calls to readdir more efficient as more entries can fit in the buffer passed to getdents calls. Export the IM_CLIENT_NO_LARGE_DIR_BUFFER=1 environment variable to disable the feature.
  • open with O_CREAT flag calls are split into a mknod call in the BFS mount point on the compute node followed by an open (without the O_CREAT flag) with the IME native interface. This feature improves create IOPs with Lustre. Indeed mknod does not allocate an OST object with Lustre. This is not needed as data is stored in IME. Export the IM_CLIENT_NO_MKNOD_CREATE=1 environment variable to disable the feature.

posix_2_ime's People

Contributors

jyvet avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.