Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

some shard operations should be parallel #115

Open
jti-lanl opened this issue Mar 15, 2016 · 1 comment
Open

some shard operations should be parallel #115

jti-lanl opened this issue Mar 15, 2016 · 1 comment

Comments

@jti-lanl
Copy link
Contributor

Several ops work across all shards. For example, when a new sharded directory is created, we have to create that directory on all the shards. Another example is readdir(), where we can read from shards concurrently.

These ops should add a thread pool to MarFS_FileHandle and MarFS_DirHandle (perhaps with a vector of fds, or MDAL contexts). Maybe we want to be able to configure the number of threads used for such parallel shard ops? Or just default to the number of shards.

There's another idea we discussed, where e.g. stat of a sharded dir uses st.st_size to return the number of shards, so a client can run its own parallel readdir, partitioned to match the individual shards. (And we'd also have to understand the offset provided in readdir() as referring to the shard to use?) I think this approach is in addition to the default mode, where readdir() spins up threads to read concurrently.

This idea probably shouldn't extend as far as e.g. read(). Let clients handle concurrent reads.

@brettkettering brettkettering changed the title some shard operations should be multi-threaded some shard operations should be parallel Jul 11, 2016
@brettkettering
Copy link
Contributor

Not started.

@brettkettering brettkettering removed this from the Program Development Demo milestone Feb 1, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants