Paper check About

Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center

2011 · paper · Computer science

Presents Mesos, a platform for sharing commodity clusters among diverse frameworks such as Hadoop and MPI, using a two-level scheduling mechanism called resource offers. Results show near-optimal data locality, scaling to 50,000 emulated nodes, and resilience to failures.

Checked: PDF from usenix.org, fetched 4 Oct 2026. Page numbers are those of that PDF.

4 findings

Substance Torque / MPI: Table 4 gives sums of 3210 s (static) and 3352 s (Mesos), speedup 0.96, but the text says "The large tachyon jobs took on average 2 minutes longer, while the small ones took 20s longer" and Table 5 gives average speedups of 0.91 (small) and 0.88 (large) for six small and two large jobs.
  • p. 11 Section 6.1.2, last paragraph of left column
    took on average 2 minutes longer, while the small ones took 20s longer
  • p. 11 Table 4, Torque / MPI row
    3210
  • p. 11 Table 4, Torque / MPI row
    3352
  • p. 11 Table 5, Torque / MPI rows
    0.91

Only the authors can say what is right here.

Judge's note: Read Tables 4 and 5 and the text on page 11 and the workload description on page 10 ("Six of the jobs ran small problem sizes and two ran large ones"). The static side agrees across tables: 6 x 261 + 2 x 822 = 3210. The Mesos side does not: Table 4's difference is 142 s in total, whereas the text's per-job delays give 6 x 20 + 2 x 120 = 360 s and Table 5's speedups give about 380 s (Mesos total about 3589 s against 3352 printed). The aggregate speedup 0.96 also lies above both per-type speedups it aggregates. Averaging per-job ratios instead of taking a ratio of sums cannot close a gap of this size with only two job sizes. The straggler explanation in the text concerns the static run and is already in the static figures. I found no statement in the paper that reconciles the numbers; which of Table 4's 3352, Table 5 or the text is off is for the authors.

Second check: another model agreed

Report a problem with this finding
Reference or label Section 4.3 prints the over-demand condition as "Σ_{i=1}^m r_i > x", but x is not defined; the supply introduced in the sentence is "p slots preferred by m frameworks", so the bound should be p.
  • p. 6 Section 4.3, second case
    assume there are p slots preferred by m frame- works
  • p. 6 Section 4.3, second case, summation
    ri > x
  • p. 6 Section 4.3, second case
    assume there are p slots preferred by m frame-
  • p. 6 Section 4.3, second case
    assume there are p slots preferred by m frame-works, where framework i requests ri such slots, and

Judge's note: Page 6 image, Section 4.3 second case: "assume there are p slots preferred by m frameworks, where framework i requests r_i such slots, and Σ_{i=1}^m r_i > x." The symbol is printed as x in the image, not an extraction artefact. Searched Section 4 text: no definition of x; case (b) is described as "the demand for some preferred slots exceeds the supply" and the allocation formula two lines later uses p. Evident fix is p. Rated S2 (wrong symbol; a reader can recover the meaning). One reviewer note here also raises the reuse of n for frameworks versus slots; that is handled under C004.

Second check: another model agreed

Report a problem with this finding
Reference or label Section 5 cites "the MPICH2 implementation of MPI [16]", but reference [16] is Bouteiller et al., "Mpich-v2: a fault tolerant MPI for volatile nodes based on pessimistic sender based message logging", Supercomputing '03.
  • p. 8 Section 5, fourth paragraph
    the MPICH2 implementation of MPI [16]
  • p. 14 Reference [16]
    Mpich-v2: a fault tolerant MPI for volatile nodes based on pessimistic sender based message logging

Only the authors can say what is right here.

Judge's note: Rests on outside knowledge: that MPICH2 (the Argonne MPI implementation) and MPICH-V2 (a fault-tolerant research MPI using message logging) are different systems. Page 8 prints "MPICH2 implementation of MPI [16]" and page 14 prints reference [16] as quoted. Within the paper, Section 5.2 says jobs on Torque "(e.g. MPI) may not be fault tolerant", which does not fit a citation to a fault-tolerant MPI. Only the authors can say which system was used.

Second check: another model agreed

Report a problem with this finding
Wording Section 4.2 prints "much higher completion times for exponential job durations, i.e., (ln k + β)T"; the distribution assumed is of task durations (Table 2: "exponential task duration distributions").
  • p. 6 Section 4.2, Job completion time
    exponential job durations, i.e., (ln k + β)T

Judge's note: Page 6 image: the sentence reads "Rigid jobs achieve similar completion times for constant task durations, but exhibit much higher completion times for exponential job durations, i.e., (ln k + β)T." Table 2 and its caption, and Section 4.2's set-up on page 5 ("two distributions of the task durations: constant ... and exponential"), all refer to task durations; no job-duration distribution is defined. The value (ln k + β)T matches Table 2's rigid/exponential cell. Wording slip, "job" for "task".

Second check: another model agreed

Report a problem with this finding
15 minor (typos and the like; most checked by the judge only)
Reference or label Section 6.2 cites "the High-Performance LINPACK [15] benchmark for MPI", but reference [15] is Anderson et al., "LAPACK: a portable linear algebra library for high-performance computers", Supercomputing '90.
  • p. 11 Section 6.2
    High-Performance LINPACK [15] benchmark
  • p. 14 Reference [15]
    LAPACK: a portable linear algebra library for high-performance computers
  • p. 11 Section 6.2
    High-Performance LINPACK [15] benchmark for MPI
  • p. 14 Reference [15]
    LAPACK: a portable linear algebra library

Only the authors can say what is right here.

Judge's note: Rests on outside knowledge: that the High-Performance LINPACK (HPL) benchmark is a different piece of software from the LAPACK library and has its own reference. Page 11 and reference [15] on page 14 read as quoted. The LAPACK paper is related dense linear algebra work and may be meant as loose background, so this is a query and not a certain error.

Second check: another model agreed

Report a problem with this finding
Wording Section 4.2 says Mesos can "offer the framework all k of its preferred slots", although Section 4.3 opens "So far, we have assumed that frameworks have no slot preferences".
  • p. 6 Section 4.2, Framework ramp-up time
    offer the framework all k of its preferred slots
  • p. 6 Section 4.3, first sentence
    So far, we have assumed that frameworks have no slot preferences

Judge's note: Page 6 image: both sentences are as quoted; Section 4 on page 5 also describes 4.2 as the case where "frameworks prefer all nodes equally". "Preferred" in the ramp-up sentence is therefore inconsistent with the stated assumption, though it does not affect the result (with no preferences any k slots serve). Minor wording inconsistency.

Second check: another model agreed

Report a problem with this finding
Wording Section 6.1.1 says "Most of the jobs are small (1-12 tasks), but there are also large jobs of up to 400 tasks", while Table 3 gives bin 8 (join) 400 map tasks and 30 reduce tasks.
  • p. 9 Section 6.1.1, Facebook Hadoop Mix
    large jobs of up to 400 tasks
  • p. 9 Table 3, bin 8 (join)
    400
  • p. 9 Table 3, bin 8 (join), Reduce Tasks
    30
  • p. 9 Table 3, bin 8
    join 400 30 2

Judge's note: Table 3 on the page 9 image: bin 3 has 10 map and 2 reduce tasks, bin 8 has 400 map and 30 reduce. The range "1-12" matches bin 3 only if map and reduce tasks are added; counted the same way the largest job has 430 tasks. "Up to 400" may mean map tasks only. Footnote 4 (scaling down the largest jobs) does not address this. A small inconsistency in how tasks are counted within one sentence.

Second check: another model agreed

Report a problem with this finding
Wording Section 6.3: "We ran 16 instances of Hadoop using 93 EC2 nodes, each with 4 CPU cores and 15 GB RAM. Each node ran a map-only scan job that searched a 100 GB file spread throughout the cluster"; the jobs belong to the 16 Hadoop instances, not to the 93 nodes.
  • p. 11 Section 6.3, end of page
    Each node ran a
  • p. 11 Section 6.3
    ran 16 instances of Hadoop using 93 EC2 nodes
  • p. 12 Section 6.3, second paragraph
    averaged measurements from the 16 Hadoop instances
  • p. 12 Section 6.3, second paragraph
    map-only scan job that searched a 100 GB file

Only the authors can say what is right here.

Judge's note: Read pages 11-12. The rest of the section speaks of "each Hadoop instance" with its own 5-6 node partition and of measurements averaged over "the 16 Hadoop instances"; a job is run by an instance, and a node cannot run a job over a file spread throughout the cluster. "Each node" is probably a slip for "Each instance", though a loose reading (every node took part) is possible, so this is a question for the authors.

Second check: another model agreed

Report a problem with this finding
Typo Section 3.2 prints "⟨1 CPUs, 2 GB RAM⟩ for the second task" (plural with a count of one); the same paragraph later writes "1 CPU and 1 GB of RAM".
  • p. 3 Section 3.2, Figure 3 walk-through
    1 CPUs, 2 GB RAM
  • p. 3 Section 3.2, step (3)
    using ⟨2 CPUs, 1 GB RAM⟩for the first task, and
  • p. 3 Section 3.2, step (3)
    ⟨1 CPUs, 2 GB RAM⟩

Judge's note: Read page 3 image: step (3) prints "(2 CPUs, 1 GB RAM) for the first task, and (1 CPUs, 2 GB RAM) for the second task", and four lines later "Because 1 CPU and 1 GB of RAM are still free". Number-agreement slip only; the example's arithmetic is consistent with Figure 3.

Second check: none (judge only)

Report a problem with this finding
Typo Section 4.1 prints "release them as soon its task finish": "as" is missing and "task finish" does not agree (should read "as soon as its tasks finish").
  • p. 5 Section 4.1
    release them as soon its task finish
  • p. 5 Section 4.1, elastic framework definition
    release them as soon its task finishes

Judge's note: Page 5 image, Section 4.1: "it can start using nodes as soon as it acquires them and release them as soon its task finish." The first half of the same sentence has the correct "as soon as". Cosmetic.

Second check: none (judge only)

Report a problem with this finding
Typo Section 4 prints "tasks durations are homogeneous"; elsewhere the paper writes "task durations".
  • p. 5 Section 4, second paragraph
    tasks durations are homogeneous

Judge's note: Page 5 image, Section 4 second paragraph: "frameworks can scale up and down elastically, tasks durations are homogeneous, and frameworks prefer all nodes equally". The same section uses "task durations" and "task duration distribution" several times. Stray plural.

Second check: none (judge only)

Report a problem with this finding
Typo Section 4.3 prints "This is simple because during a T interval all slots become available"; the parallel sentences in Section 4.2 read "This is simply because".
  • p. 6 Section 4.3, first case
    This is simple because during a

Judge's note: Page 6 image: right column, first case, "This is simple because during a T interval all slots become available". Left column has "This is simply because during a T interval, every slot will become available" and "This is simply because it takes a framework T ln k time". Adjective for adverb; cosmetic.

Second check: none (judge only)

Report a problem with this finding
Typo Section 4.4 prints "we consider a workload where tasks that are either short and long, where the mean duration ..." (should read "where tasks are either short or long").
  • p. 6 Section 4.4, first paragraph
    load where tasks that are either short and long
  • p. 6 Section 4.4, first paragraph
    tasks that are either short and long
  • p. 6
    where tasks that are either short and long, where the

Judge's note: Page 6 image, Section 4.4 first paragraph: text is as quoted. "either ... and" plus a stray "that" leave the clause ungrammatical; meaning is clear. Cosmetic.

Second check: none (judge only)

Report a problem with this finding
Typo Section 4.5 says "it will be able to allocate any resources reserved for short slots. Second, using small tasks minimizes the wasted work", where Section 4.4 describes reserving resources "on each node for short tasks" and the paragraph is headed "Short tasks".
  • p. 7 Section 4.5, Short tasks
    resources reserved for short slots
  • p. 7 Section 4.4, third paragraph
    reserve some resources on each node for short tasks

Judge's note: Read page 7. Section 4.4 reserves resources for short tasks (with a maximum task duration); "short slots" is not defined anywhere, and "small tasks" is used in the next sentence for what the paragraph calls short tasks. The meaning is recoverable, so this is loose wording and not a factual error.

Second check: none (judge only)

Report a problem with this finding
Typo Section 5.2: "the torque server will launch the next job in its queue" has a lower-case "torque"; the name is "Torque" everywhere else, including "registers it with the Torque server" in the preceding sentence.
  • p. 8 Section 5.2, second paragraph
    the torque server will launch the next job in its queue

Judge's note: Read on the page 8 image: lower-case "torque server" directly after "Torque server" and "Torque backend daemons".

Second check: none (judge only)

Report a problem with this finding
Typo Section 5.3: "but the data must still must be reloaded from disk at each iteration" repeats the word "must".
  • p. 9 Section 5.3, left column
    the data must still must be reloaded from disk
  • p. 9
    but the data must still must be reloaded from disk

Judge's note: Visible in the page 9 image, left column, on a single line, so it is not a line-break or extraction artefact.

Second check: none (judge only)

Report a problem with this finding
Typo Figure 8, right axis label: "Job Running TIme (s)" has a capital I in "TIme".
  • p. 11 Figure 8, right axis label
    Job Running TIme (s)

Judge's note: The crop of Figure 8 shows the rotated right-axis label with a full-height stroke and no dot after the T, matching the embedded figure text "TIme". At this size the glyph is small, but image and text layer agree.

Second check: none (judge only)

Report a problem with this finding
Typo Section 6.6: "connected to a 5-node ZooKeeper quo-rum.We synchronized the two masters' clocks" has no space after the full stop.
  • p. 12 Section 6.6, last line of page
    rum.We synchronized the two masters

Judge's note: The crop of the last line of page 12 shows "rum.We synchronized" with no space, unlike the other sentence breaks in the paragraph.

Second check: none (judge only)

Report a problem with this finding
Typo Section 6.7: "Mesos leverages existing OS isolation mechanism to provide performance isolation" uses the singular "mechanism"; the next sentence says "While these mechanisms are not perfect" and Section 3.4 says "existing OS isolation mechanisms".
  • p. 13 Section 6.7
    OS isolation mechanism to provide performance isola-
  • p. 13 Section 6.7
    existing OS isolation mechanism to provide performance isola-

Judge's note: Read in the page 13 crop: singular "mechanism" with no article, followed by "these mechanisms". Section 3.4 (text extract) has the plural.

Second check: none (judge only)

Report a problem with this finding
Something wrong with this page, or a finding we missed?