Question: Consider the following serial code: class factorial { static int factorialexm(int num){ if(num==0) return 1; else return (num * factorialexm(num-1)); } public static void main(String

Consider the following serial code:
class factorial
{
static int factorialexm(int num){
if(num==0)
return 1;
else
return (num * factorialexm(num-1));
}
public static void main(String args[]){
int fact = 1, i;
int num = 8;
fact = factorialexm(num);
System.out.println("Factorial of "+num+" is: "+fact);
}
}
And the following Parallel Code:
package com.company;
import java.util.concurrent.*;
class Factorial extends RecursiveTask {
private final int num;
public Factorial(int num) {
this.num = num;
}
protected Integer compute() {
if (num == 0) {
return 1;
} else if (num == 1) {
return 1;
} else {
Factorial f1 = new Factorial(num - 1);
f1.fork();
return num * f1.join();
}
}
}
public class Main {
public static void main(String[] args) {
int num = 8;
ForkJoinPool pool = new ForkJoinPool();
Factorial factorial = new Factorial(num);
int fact = pool.invoke(factorial);
System.out.println("Factorial of " + num + " is: " + fact);
}}
What is the parallelization percentage of the above code?

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!