Skip to main content
. 2021 Apr 19;10:33. Originally published 2021 Jan 18. [Version 2] doi: 10.12688/f1000research.29032.2

Table 1. Mixed integer linear program for Snakemake’s scheduling problem.

Objective:

Maximize2Uc2SjJpjxj+2SjJuc,jxj+SfFSfγf+fFSfδf(1)subjecttoxj{0,1}foralljJ,γf{0,1}forallfF,δf[0,1]forallfF,jJxjur,jUrforallrR,(2)δfjJxjzf,jjJozf,jforallfF,(3)γfδfforallfF.(4)
Variables:

binary ( x j) jJ :
do we schedule job jJ?

binary ( γ f) fF :
can we delete file fF?

continuous ( δ f) fF ∈ [0, 1]:
lifetime fraction of f ; see ( 3)

Parameters:

         p j ∈ ℕ : priority of job jJ
       u r,j ∈ ℕ : j’s usage of resource r
               z f,j : does job jJ o need file f ?
        U r ∈ ℕ : free capacity of resource r
         S f ∈ ℕ : size of file f
          S ∈ ℕ : sum of file sizes fSf
HHS Vulnerability Disclosure