--
You received this message because you are subscribed to the Google Groups "Mesos Resource Allocation Working Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocati...@googlegroups.com.
To post to this group, send email to mesos-al...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mesos-allocation/f7b52023-d856-41b0-a060-b815fa139528%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
To view this discussion on the web visit https://groups.google.com/d/msgid/mesos-allocation/CACzFoUuCu_G1qerPW-4HEb65eNAPjW1kZoVhGme%2BC%2ByURUS9Sg%40mail.gmail.com.
The way I'm thinking about "Best-Effort" containers is that they are "scavengers" of unused resources: they are running within the wasted resources of containers with higher QoS (revocable, non-revocable). Compressible resources (e.g. cpu, disk bandwidth, network bandwidth) can be throttled when no longer available to the "Best-Effort" container. Incompressible resources (e.g. memory, disk) that are no longer available for the "Best-Effort" container will lead to revocation, since we cannot throttle.
On Thu, Feb 4, 2016 at 5:53 AM, Alex Rukletsov <al...@mesosphere.com> wrote:
Klaus,why do you think there is no point in throttling tasks? I can imagine that for compressible resources, a task requiring e.g. 2 cpus may prefer running on 1 cpu temporarily rather than being killed.Here is another reason why we may want to preserve the distinction. I believe we in the allocator we have to distinguish offered resources by source (usage slack oversubscription, unused quota oversubscription, revocable and so on), not only by quality (non-revocable, revocable, best-effort). Maintaining 1-to-1 correspondence between source and quality may simplify bookkeeping and resources math (for example, we know that best-effort resources come from usage slack oversubscription only and are controlled by external module).
On Thu, Feb 4, 2016 at 1:46 PM, Klaus Ma <klaus1...@gmail.com> wrote:
Regarding "can be throttled", my understanding is that "Best-Effort" resources maybe reduced by Estimator, e.g. from 2 CPU to 1 CPU, right? ALLOCATION_SLACK has similar cases that if framework `/unreserve` resources, the revocable resources (ALLOCATION_SLACK) need to be evicted to release resources. So I think we can eliminate the distinction between Revocable and Best-Effort. And updating oversubscription that: Estimator report revocable resources (Best-Effort) to allocator, allocator decide how many resources (revocable resources) should be evicted in agent; the QoSController is merged with modules in agent on resources evicting.ThanksKlaus
On Thursday, February 4, 2016 at 7:29:07 AM UTC+8, Benjamin Mahler wrote:One of the topics that we need to address is the addition of RevocableInfo.Type. Joris, Jie and I chatted recently and realized that we may need to expose this to frameworks as a representation of the SLA for the resource. For example:Non-Revocable: cannot be revoked, inverse offers required ($$$)Revocable: can be revoked ($$)Best-Effort: can be revoked, can be throttled ($)In a revocable-by-default world, the allocator is free to offer Revocable resources for various purposes (e.g. by default, un-allocated reservations, un-allocated quota) and the agent will offer un-utilized resources as Best-Effort.We thought about whether it makes sense to eliminate the distinction between Revocable and Best-Effort by allowing all Revocable resources to be throttled, but it seems that frameworks may want to opt-out of throttling for performance / latency reasons (i.e. give me all or nothing, but don't throttle me) whereas some workloads are explicitly ok taking the Best-Effort resources because they're cheaper.The assumption here is that frameworks must not rely on the presence of Best-Effort resources, because they are only generated when a resource estimator is active on the agent.Any thoughts on this?
--
You received this message because you are subscribed to the Google Groups "Mesos Resource Allocation Working Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocation+unsubscribe@googlegroups.com.
To post to this group, send email to mesos-allocation@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mesos-allocation/f7b52023-d856-41b0-a060-b815fa139528%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "Mesos Resource Allocation Working Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocation+unsubscribe@googlegroups.com.
To post to this group, send email to mesos-allocation@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocation+unsubscribe@googlegroups.com.
To post to this group, send email to mesos-allocation@googlegroups.com.
The way I'm thinking about "Best-Effort" containers is that they are "scavengers" of unused resources: they are running within the wasted resources of containers with higher QoS (revocable, non-revocable). Compressible resources (e.g. cpu, disk bandwidth, network bandwidth) can be throttled when no longer available to the "Best-Effort" container. Incompressible resources (e.g. memory, disk) that are no longer available for the "Best-Effort" container will lead to revocation, since we cannot throttle.
On Thu, Feb 4, 2016 at 5:53 AM, Alex Rukletsov <al...@mesosphere.com> wrote:
Klaus,why do you think there is no point in throttling tasks? I can imagine that for compressible resources, a task requiring e.g. 2 cpus may prefer running on 1 cpu temporarily rather than being killed.Here is another reason why we may want to preserve the distinction. I believe we in the allocator we have to distinguish offered resources by source (usage slack oversubscription, unused quota oversubscription, revocable and so on), not only by quality (non-revocable, revocable, best-effort). Maintaining 1-to-1 correspondence between source and quality may simplify bookkeeping and resources math (for example, we know that best-effort resources come from usage slack oversubscription only and are controlled by external module).
On Thu, Feb 4, 2016 at 1:46 PM, Klaus Ma <klaus1...@gmail.com> wrote:
Regarding "can be throttled", my understanding is that "Best-Effort" resources maybe reduced by Estimator, e.g. from 2 CPU to 1 CPU, right? ALLOCATION_SLACK has similar cases that if framework `/unreserve` resources, the revocable resources (ALLOCATION_SLACK) need to be evicted to release resources. So I think we can eliminate the distinction between Revocable and Best-Effort. And updating oversubscription that: Estimator report revocable resources (Best-Effort) to allocator, allocator decide how many resources (revocable resources) should be evicted in agent; the QoSController is merged with modules in agent on resources evicting.ThanksKlaus
On Thursday, February 4, 2016 at 7:29:07 AM UTC+8, Benjamin Mahler wrote:One of the topics that we need to address is the addition of RevocableInfo.Type. Joris, Jie and I chatted recently and realized that we may need to expose this to frameworks as a representation of the SLA for the resource. For example:Non-Revocable: cannot be revoked, inverse offers required ($$$)Revocable: can be revoked ($$)Best-Effort: can be revoked, can be throttled ($)In a revocable-by-default world, the allocator is free to offer Revocable resources for various purposes (e.g. by default, un-allocated reservations, un-allocated quota) and the agent will offer un-utilized resources as Best-Effort.We thought about whether it makes sense to eliminate the distinction between Revocable and Best-Effort by allowing all Revocable resources to be throttled, but it seems that frameworks may want to opt-out of throttling for performance / latency reasons (i.e. give me all or nothing, but don't throttle me) whereas some workloads are explicitly ok taking the Best-Effort resources because they're cheaper.The assumption here is that frameworks must not rely on the presence of Best-Effort resources, because they are only generated when a resource estimator is active on the agent.Any thoughts on this?
--
You received this message because you are subscribed to the Google Groups "Mesos Resource Allocation Working Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocation+unsubscribe@googlegroups.com.
To post to this group, send email to mesos-allocation@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mesos-allocation/f7b52023-d856-41b0-a060-b815fa139528%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "Mesos Resource Allocation Working Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocation+unsubscribe@googlegroups.com.
To post to this group, send email to mesos-allocation@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocati...@googlegroups.com.
To post to this group, send email to mesos-al...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mesos-allocation/f7b52023-d856-41b0-a060-b815fa139528%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "Mesos Resource Allocation Working Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocati...@googlegroups.com.
To post to this group, send email to mesos-al...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mesos-allocation/CACzFoUuCu_G1qerPW-4HEb65eNAPjW1kZoVhGme%2BC%2ByURUS9Sg%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "Mesos Resource Allocation Working Group" group.
To view this discussion on the web visit https://groups.google.com/d/msgid/mesos-allocation/35a874c0-0f21-42d3-beda-cd8bc5591d49%40googlegroups.com.To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocati...@googlegroups.com.
To post to this group, send email to mesos-al...@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocation+unsubscribe@googlegroups.com.
To post to this group, send email to mesos-allocation@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mesos-allocation/f7b52023-d856-41b0-a060-b815fa139528%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "Mesos Resource Allocation Working Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocation+unsubscribe@googlegroups.com.
To post to this group, send email to mesos-allocation@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mesos-allocation/CACzFoUuCu_G1qerPW-4HEb65eNAPjW1kZoVhGme%2BC%2ByURUS9Sg%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "Mesos Resource Allocation Working Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mesos-allocation+unsubscribe@googlegroups.com.
To post to this group, send email to mesos-allocation@googlegroups.com.