Resource Allocation in Accelerator vs. LSF

E.M. Swanson_22526
E.M. Swanson_22526
Altair Employee
edited December 2021 in Altair HPCWorks

Fairshare vs. Priority 

LSF uses queue-based and individual job priorities to determine which job goes first when jobs compete for resources. In practice, resources are usually allocated on a first-come-first-served basis with queue-based priorities, with queues as fairshare entities. 

Where LSF uses priority and age, Accelerator uses a comprehensive, hierarchical, highly configurable fairshare mechanism across all jobs. Accelerator tracks relative job priorities by (roughly speaking) regularly sorting its jobs into buckets, then using fairshare to rank all the buckets. Accelerator users can set per-job individual priorities, and jobs within the same bucket are ranked according to these user-applied priorities. User-applied priority applies only within a bucket; it cannot kick a job from one bucket to another. Jobs within these finer-grained categories are then ranked by age. 

With fairshare, you set usage targets for your resources (slots, licenses, or anything else). The fairshare algorithm always chooses as the next job to start the one that comes closest to meeting your usage targets. Like LSF, Accelerator starts the appropriate job next, with the difference that the jobs appear in a single global queue. 

You can use Accelerator to easily manage per-project, per-team, and per-site job execution ordering for the entire organization, and you can make changes on the fly. 

Preemption vs. Reservations and Limits 

LSF uses reservations and limits to guarantee that specific resources will be available when they are sup-posed to be. Accelerator offers preemption, where a job that is deemed to be low-priority for specific resources can run, but it is preempted when a higher-priority job for those resources is submitted. In this way resources can stay fully utilized instead of idling between reservation jobs. Instead of having to know ahead of time what the workload will be and placing appropriate limits, you can let fairshare and preemption make sure that the right job starts at any time. 

That said, Accelerator also has a rich set of reservation and limit scheduler constraints that you can use to reproduce LSF behavior. 

Tasker Binding vs. Partitions 

LSF uses partitions to reserve particular hardware resources for specific teams, job types, etc. Accelerator offers tasker binding, which is more flexible.  

Preemption also allows you to avoid partitions in the case where funding allows such sharing. 

Read more in our Knowledge Base article: Migrating from LSF to Accelerator.