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

Needed Development: SimpleStorageService using S4U Storage #2

Closed
henricasanova opened this issue Nov 29, 2017 · 2 comments
Closed

Needed Development: SimpleStorageService using S4U Storage #2

henricasanova opened this issue Nov 29, 2017 · 2 comments
Labels

Comments

@henricasanova
Copy link
Contributor

henricasanova commented Nov 29, 2017

Update the implementation of the SimpleStorageService so that it uses the Storage abstraction provided by S4U, whenever available/documented. One issue to pay attention to is that pipelining of network transfer and disk writes (a "store-and-forward" approach is really not realistic).

@henricasanova
Copy link
Contributor Author

henricasanova commented Jul 25, 2019

Did a refactoring of the storage service (to be merged soon into master), that will make it possible to finally move forward on this. SimGrid should provide new XML tags and APIs by the end of September 2019, at which point we'll be able to modify the Storage Service as follows:

  • "disk" tags in the XML will specify the disks attached to a host:
     <host id="alice" speed="1Gf">
      <disk id="Disk1" read_bw="200MBps" write_bw="80MBps">
        <prop id="size" value="500GiB"/>
        <prop id="mount" value="/scratch" />
      </disk>
    </host>

  • I/O operations to those disks will be simulated by SimGrid (some refactoring in WRENCH makes that immediate)

  • StorageService constructors will no longer require capacities, just disk IDs

    • Question: If I start a storage service on a host with 2+ disks, does the storage service handle all disks?

    • More general question: Can a StorageService handle more than one disk?

  • The notion of "partition", which was like a directory, will just become a disk / mount point

    • Question We had a notion of directory (which were partitions). Now it seems that to deal with files at a storage service we have a mount point (if a storage service can handle more than one disk), a directory (which we use, e.g., for jobs' temporary directories but can be used by the WMS at will), and a file. To handle that complexity Henri is thinking of implementing a FileSystem class that handles all that, so that a disk simply has a set of file systems. Otherwiwe, welcome to x[y].first.at(x).second.front() :)

@henricasanova
Copy link
Contributor Author

henricasanova commented Sep 23, 2019

Current todo list:

  • Get the storage branch to compile
  • Asynchronous I/O in FileTransferThread::copyFileLocally() ?
  • Update wrench_init if need be

henricasanova added a commit that referenced this issue Sep 24, 2019
henricasanova added a commit that referenced this issue Sep 24, 2019
henricasanova added a commit that referenced this issue Sep 24, 2019
henricasanova added a commit that referenced this issue Sep 24, 2019
henricasanova added a commit that referenced this issue Sep 25, 2019
henricasanova added a commit that referenced this issue Sep 26, 2019
henricasanova added a commit that referenced this issue Sep 26, 2019
henricasanova added a commit that referenced this issue Sep 26, 2019
henricasanova added a commit that referenced this issue Sep 27, 2019
henricasanova added a commit that referenced this issue Sep 27, 2019
henricasanova added a commit that referenced this issue Sep 28, 2019
henricasanova added a commit that referenced this issue Sep 28, 2019
henricasanova added a commit that referenced this issue Sep 29, 2019
henricasanova added a commit that referenced this issue Oct 2, 2019
henricasanova added a commit that referenced this issue Oct 2, 2019
henricasanova added a commit that referenced this issue Oct 2, 2019
henricasanova added a commit that referenced this issue Oct 3, 2019
henricasanova added a commit that referenced this issue Oct 3, 2019
henricasanova added a commit that referenced this issue Oct 3, 2019
henricasanova added a commit that referenced this issue Oct 3, 2019
henricasanova added a commit that referenced this issue Oct 3, 2019
henricasanova added a commit that referenced this issue Oct 3, 2019
henricasanova added a commit that referenced this issue Oct 3, 2019
henricasanova added a commit that referenced this issue Oct 4, 2019
henricasanova added a commit that referenced this issue Oct 5, 2019
henricasanova added a commit that referenced this issue Oct 5, 2019
henricasanova added a commit that referenced this issue Oct 5, 2019
henricasanova added a commit that referenced this issue Oct 5, 2019
henricasanova added a commit that referenced this issue Oct 8, 2019
henricasanova added a commit that referenced this issue Oct 8, 2019
henricasanova added a commit that referenced this issue Oct 8, 2019
henricasanova added a commit that referenced this issue Oct 8, 2019
henricasanova added a commit that referenced this issue Oct 8, 2019
henricasanova added a commit that referenced this issue Oct 9, 2019
henricasanova added a commit that referenced this issue Oct 9, 2019
henricasanova added a commit that referenced this issue Oct 9, 2019
henricasanova added a commit that referenced this issue Oct 9, 2019
henricasanova added a commit that referenced this issue Oct 9, 2019
henricasanova added a commit that referenced this issue Oct 10, 2019
Refactoring stageFile()
henricasanova added a commit that referenced this issue Oct 10, 2019
henricasanova added a commit that referenced this issue Oct 10, 2019
henricasanova added a commit that referenced this issue Oct 10, 2019
henricasanova added a commit that referenced this issue Oct 10, 2019
henricasanova added a commit that referenced this issue Oct 10, 2019
julien-monniot pushed a commit to julien-monniot/wrench that referenced this issue Feb 7, 2023
# This is the 1st commit message:

Adding skeleton for a CompoundStorageService (heavily inspired by SimpleStorageService)

# This is the commit message wrench-project#2:

CompoundStorageService starts (working service state, even though it doesn't do anything yet)

# This is the commit message wrench-project#3:

CompoundStorageService : adding method to get all internal services ; FileLocation : adding two methodes to update storage service and mount point of an existing FileLocation ; BareMetalCompoundService: adding a very simple (and dirty) code block to automatically replace a CompoundStorageService in a Read or Write file Action with its first (or only) internal concrete storage service ; BatchComputeService: just tinkering with comments in order to find an appropriate place to put the same kind of code block as in BareMetalComputeService

# This is the commit message wrench-project#4:

Fixing CompoundStorageService after last merge from master: manually adding a LogicalFilesystem on /dev/null, updating the use od StorageService constructor and adding proper messagepayloadsize and property values init.

# This is the commit message wrench-project#5:

New scheduler (copy of ConservativeBackfilling, but storage-aware)

# This is the commit message wrench-project#6:

Functional test added for CompoundStorageService. Also overriding some parent methods in CSS for coherency, and putting in place a few safeguards. Test is still incomplete (but passing at the moment)

# This is the commit message wrench-project#7:

Updating CompoundStorageService so that it can safely discard Read/Write/Delete/Lookup/Copy message requests (it answers with a failure cause stating that the feature in not available) ; updated test accordingly

# This is the commit message wrench-project#8:

Fixing a small bug in the new test setup

# This is the commit message wrench-project#9:

Cleaning up batch scheduler for storage, adding some logging in CompoundStorageService and cleaning up functionnal test

# This is the commit message wrench-project#10:

Minor clean-up and comments

# This is the commit message wrench-project#11:

First (probably still broken) implementation of message transfer inside the CSS -> tested for FileCopy and FileRead, and it seems to work..

# This is the commit message wrench-project#12:

Minor fix to the Storage selection callback in CSS

# This is the commit message wrench-project#13:

Working on tests for message transfers in CSS (currently there's a crash by action deadlock in the test simulation, but several fixes already implemented)
henricasanova added a commit that referenced this issue Mar 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants