aboutsummaryrefslogtreecommitdiff
path: root/examples/src/main/scala/CpuHog.scala
blob: f37c6f7824f36d54f2eed6605119dc1349c92ae4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import spark._

object CpuHog {
  def main(args: Array[String]) {
    if (args.length != 3) {
      System.err.println("Usage: CpuHog <master> <tasks> <threads_per_task>");
      System.exit(1)
    }
    val sc = new SparkContext(args(0), "CPU hog")
    val tasks = args(1).toInt
    val threads = args(2).toInt
    def task {
      for (i <- 0 until threads-1) {
        new Thread() {
          override def run {
            while(true) {}
          }
        }.start()
      }
      while(true) {}
    }
    sc.runTasks(Array.make(tasks, () => task))
  }
}