Comments (4)
/assign
from volcano.
Queue Priority
Motivation
The current queue prioritization in Volcano is based on the principle that a lower share value indicates higher priority for resource allocation during scheduling.
However, based on user feedback and practical scenarios, there is a strong preference for a more straightforward approach to establishing queue priorities. Explicitly assigning priorities provides users with clear and immediate control over the order in which their queues are serviced.
While Volcano's current method of using queue shares effectively determines priority, there is a clear demand for a more intuitive and user-friendly approach to setting and managing queue order. Enabling users to directly assign and adjust queue priorities in the specifications would simplify queue management significantly.
Implementation
Data Structure
Add priority
to spec
of queues.scheduling.volcano.sh
. The priority
attribute controls the order of queues in all plugins that implement QueueOrderFn
.
spec:
...
priority:
type: number
...
The range for priority
is from 0 to the maximum limit of int32.
Queue Ordering
Under the premise that queues that are overused will not enter the scheduling process, all QueueOrderFn
plugins adhere to the following sorting logic:
- Check queue
priority
first, queues with higher priority are positioned at the front of the PriorityQueue and are popped first. - When queue
priority
values are identical, the logic reverts to the current method of comparing queueshares
.
from volcano.
Queue Priority
Motivation
The current queue prioritization in Volcano is based on the principle that a lower share value indicates higher priority for resource allocation during scheduling.
However, based on user feedback and practical scenarios, there is a strong preference for a more straightforward approach to establishing queue priorities. Explicitly assigning priorities provides users with clear and immediate control over the order in which their queues are serviced.
While Volcano's current method of using queue shares effectively determines priority, there is a clear demand for a more intuitive and user-friendly approach to setting and managing queue order. Enabling users to directly assign and adjust queue priorities in the specifications would simplify queue management significantly.
Implementation
Data Structure
Add
priority
tospec
ofqueues.scheduling.volcano.sh
. Thepriority
attribute controls the order of queues in all plugins that implementQueueOrderFn
.spec: ... priority: type: number ...The range for
priority
is from 0 to the maximum limit of int32.Queue Ordering
Under the premise that queues that are overused will not enter the scheduling process, all
QueueOrderFn
plugins adhere to the following sorting logic:
- Check queue
priority
first, queues with higher priority are positioned at the front of the PriorityQueue and are popped first.- When queue
priority
values are identical, the logic reverts to the current method of comparing queueshares
.
Please also descibe the behavior of scheduler in queue reclaim case, and submit a design pr individually: )
from volcano.
/assign @TaiPark
from volcano.
Related Issues (20)
- when using spark with volcano ,queue allocated exceeds capability HOT 13
- 如何查看正在pending的vcjob的优先级顺序,比如有A,B,C三个任务正在pending,怎么看哪个任务优先级最高会先被调度 HOT 1
- Occasionally Failed E2E Test Cases for Claim
- In the rolling upgrade scenario of multiple deployments, there is a possibility that the corresponding pod group is not created for ReplicaSet. HOT 2
- upgrade kube-state-metrics version to v1.9.8/v2.12.0 from v1.9.7 HOT 3
- volcano 案例demo无法调度 HOT 5
- Preemption between the jobs in the same queue is not work well when enable gang plugin HOT 7
- grafana监控无法显示Dashboard大部分指标 HOT 7
- Optimize the --version command HOT 1
- reschedule not work HOT 2
- --node-selector config doesn't consider for csinode HOT 2
- Support Hierarchical Queue on Capacity Plugin
- Adjustment of Initialization for Volcano Controllers Module HOT 5
- Why isn't there a job level preemption when gang and priority is enabled HOT 1
- Enable OpenSSF Scorecard to enhance security practices across the project HOT 1
- The volcano controller may have memory leak issues in large-scale clusters HOT 4
- Pod are repeatedly created and deleted
- Garbage Collector is supposed to clean up Aborted volcanojobs HOT 7
- volcano vgpu metrics not update properly HOT 6
- MPI Job in Volcano gets Terminated HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from volcano.