by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Jul 13 15:53
    Coverage (#undefined) +undefined%
  • Jul 13 15:49

    dependabot-preview[bot] on maven

    (compare)

  • Jul 13 15:49

    fhermeni on master

    Bump mockito-core from 3.3.3 to… Merge pull request #240 from bt… (compare)

  • Jul 13 15:49
    fhermeni closed #240
  • Jul 13 15:49
    fhermeni assigned #240
  • Jul 13 15:49
    fhermeni milestoned #240
  • Jul 13 06:49
    codecov[bot] commented #240
  • Jul 13 06:49
    Coverage (#undefined) +undefined%
  • Jul 13 06:49
    Coverage (#undefined) +undefined%
  • Jul 13 06:47
    dependabot-preview[bot] labeled #240
  • Jul 13 06:47
    dependabot-preview[bot] opened #240
  • Jul 13 06:47

    dependabot-preview[bot] on maven

    Bump mockito-core from 3.3.3 to… (compare)

  • Jul 07 06:44
    Coverage (#undefined) +undefined%
  • Jul 07 06:44
    Coverage (#undefined) +undefined%
  • Jul 07 06:43
    dependabot-preview[bot] labeled #239
  • Jul 07 06:43
    dependabot-preview[bot] opened #239
  • Jul 07 06:43

    dependabot-preview[bot] on maven

    Bump choco-solver from 4.10.2 t… (compare)

  • Jun 18 09:10
    Coverage (#undefined) +undefined%
  • Jun 18 09:06

    dependabot-preview[bot] on maven

    (compare)

  • Jun 18 09:06

    fhermeni on master

    Bump maven-surefire-plugin from… Merge pull request #238 from bt… (compare)

Aditya Ramesh
@adramesh
To clarify, is this an example of what you're saying to do (if CPU during migration needs be given at most 50%):
{"model":{"mapping":{"readyVMs":[],"onlineNodes":{"0":{"sleepingVMs":[],"runningVMs":[0]},"1":{"sleepingVMs":[],"runningVMs":[1]}},"offlineNodes":[]},"attributes":{"nodes":{},"vms":{}},"views":[{"defConsumption":2,"nodes":{},"rcId":"CPU","id":"shareableResource","defCapacity":7,"vms":{}}]},"constraints":[{"nodes":[0],"vm":0,"continuous":false,"id":"ban"},{"nodes":[1],"vm":1,"continuous":false,"id":"ban"},{"rc":"CPU","amount":4,"vm":0,"id":"preserve"},{"rc":"CPU","amount":4,"vm":1,"id":"preserve"}],"objective":{"id":"minimizeMTTR"}}
Essentially, all VMs will have the consumption be the reduced consumption and the Preserve constraint ensures that the consumptions ends up getting reset to the default.
Fabien Hermenier
@fhermeni
yes, that look correct
the "real consumption" is 4, reduced to 2 to allow a temporary sharing. Back to 4 at the end necessarily
Aditya Ramesh
@adramesh
ok; will try out with this modification and see how performance goes
Aditya Ramesh
@adramesh
But, what is the issue of ensuring that during a migration, the shareable resource can be lower and if the end state violates the constraint, then we end up backtracking.
Much like how the discrete constraint gets treated
Fabien Hermenier
@fhermeni
don't get it
Aditya Ramesh
@adramesh
why is it necessary to have a rectangular constraint during a move
can't we do the following
when deciding when placing a VM to move, see whether the destination host has enough enough capacity for the migration cost (which should be <= the actual VM cost)
at the end of the plan, see if the VM can actual cost can be satisfied
if so, we are done, otherwise we backtrack
essentially, it's a way of integrating this constraint into the reconfiguration problem instead of modeling it via multiple constraints.
Fabien Hermenier
@fhermeni
ok
but in any case we have to model the consumption of a VM (the current and the next one)
backtracking is not an issue. It is natural as the problem is a combinatorial one, and we use a solver as a meta heuristic
if you don't set a preserve constraint, btrplace still use a similar mechanism implicitly to state the VM consumptio
n
Preserve is just the user entry point to manipulate the value
Fabien Hermenier
@fhermeni
Aside, representing the resource usage over time with a rectangle is common in scheduling. It allows to simplify the computation of the horizon by reducing the moments where the profile are changing
Michael Drogalis
@MichaelDrogalis
@fhermeni We cleared that bug on our end. Thanks for looking into it, sorry for the noise. :)
Fabien Hermenier
@fhermeni
BtrPlace 1.0 released. It's about time.
Lucas Bradstreet
@lbradstreet
Congratulations!
Fabien Hermenier
@fhermeni
It should have been done a long time ago. The major number always frightened me :D
Fabien Hermenier
@fhermeni
@adramesh Issue #122 should be fixed
Fabien Hermenier
@fhermeni
/all any pending issue, I can release this week if needed
@adramesh are your opened issues fixed ? If so, I can release
Aditya Ramesh
@adramesh
@fhermeni: Yes, the fixes for 122 and 123 work for me and you can push out a new release
Fabien Hermenier
@fhermeni
Ok. I have a pending regression (not pointed out here, weird). Then I will release
Fabien Hermenier
@fhermeni
@adramesh Hi, no pending issue ? So I can release
Fabien Hermenier
@fhermeni
BtrPlace 1.1 released
Fabien Hermenier
@fhermeni
@MichaelDrogalis btrplace 1.1 released
Michael Drogalis
@MichaelDrogalis
@fhermeni Fantastic! Ill try to get us upgraded this week :)
Thrilled that you continue to improve an already awesome library.
Fabien Hermenier
@fhermeni
@MichaelDrogalis I need your help. I wrote a tool to ease constraint debugging. I am writing a paper about it and I want some numbers about my users. So: Which constraints do you use inside Onyx ? How much users do you have (estimation of course :D) ?
Lucas Bradstreet
@lbradstreet
Hi @fhermeni, we currently use [Running RunningCapacity Quarantine Fence Among], but we are considering writing some of our own, as we have some constraints that can't be expressed by the existing constraints
We currently know of 6 users in production, with a lot more at varying stages of development. I would put the total at somewhere around 20-60 users actually evaluating it or using it in a substantial way, and a lot more that have tried it (hard to know how many more)
Fabien Hermenier
@fhermeni
ok. Thanks for the numbers. Which kind of constraints do you want to express for information ?
@lbradstreet No spread ?
Lucas Bradstreet
@lbradstreet
I'd be interested in reading it when you have a draft. My days of writing papers are somewhat over, but we read a lot
Spread is definitely one that we want to use, but we haven't had the time to expose to our users
You're right that it's probably the most important constraint that we're not using
We've been focused on other things, and haven't given our scheduler some love for a while, so I can't remember the additional constraints that we needed off the top of my head. I'll try to remember
Michael Drogalis
@MichaelDrogalis
@fhermeni Yup, everything Mr. @lbradstreet said. :)
Fabien Hermenier
@fhermeni
btrplace 1.2 released with minor bug corrections in the user API.
Fabien Hermenier
@fhermeni
Hi . Version 1.3 of btrplace released. No change in the API. Just fix a bug and improve a bit the robustness when the problem is heavily constrained
Fabien Hermenier
@fhermeni
BtrPlace 1.4 released using the new major version of Choco
Reduced footprint for large problems
No changes in the API
Jayson Minard
@apatrida
hello @fhermeni , can you give me a quick description of what is the module "safeplace"?
Fabien Hermenier
@fhermeni
@apatrida a pending project
I will advertise one day, but not now
@apatrida is it disturbing ?