Consider the following function for computing the product of an array of B integers. We have unrolled the loop by a factor of 3. long aprod(long a[], int n) { int i; long x, у, 2; long r = 1; for (i { = 0; i < n-2; i+= 3) a[i+l]; z = * z; // Product computation a[i]; y = a[i+2]; X = r = r * x y } for (; i < n; i++) r *= a[i];

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Question

help me fast please c programming

Consider the following function for computing the product of an array of integers. We have unrolled
the loop by a factor of 3.
long aprod (long a[], int n)
{
int i;
long x, у, 2;
long r
for (i
{
= 1;
0; i < n-2; i+= 3)
x = a[i]; y = a[i+l]; z = a[i+2];
z; // Product computation
r
r
* x *
y
}
for (; i < n; i++)
*= a[i];
r
return r;
}
For the line labeled Product computation, we can use parentheses to create 5 different associations
of the computation, as follows:
z; // A1
z; // A2
((r *
(r *
* ((х * у)
(x
(r * x) * (у * 2); // А5
x)
*
y)
У))
* z); // A3
(y
r
*
(x
%3D
*
r
z)); // A4
r
We express the performance of the function in terms of the number of cycles as function of the number
of element n: Cn+ K. For the 5 associations above, use the input vector "a[i]
execution time of the aprod function and complete the following table. Which association has the
highest performance? Why?
i", measure the
Association
A1
A2
АЗ
А4
А5
C
K
Transcribed Image Text:Consider the following function for computing the product of an array of integers. We have unrolled the loop by a factor of 3. long aprod (long a[], int n) { int i; long x, у, 2; long r for (i { = 1; 0; i < n-2; i+= 3) x = a[i]; y = a[i+l]; z = a[i+2]; z; // Product computation r r * x * y } for (; i < n; i++) *= a[i]; r return r; } For the line labeled Product computation, we can use parentheses to create 5 different associations of the computation, as follows: z; // A1 z; // A2 ((r * (r * * ((х * у) (x (r * x) * (у * 2); // А5 x) * y) У)) * z); // A3 (y r * (x %3D * r z)); // A4 r We express the performance of the function in terms of the number of cycles as function of the number of element n: Cn+ K. For the 5 associations above, use the input vector "a[i] execution time of the aprod function and complete the following table. Which association has the highest performance? Why? i", measure the Association A1 A2 АЗ А4 А5 C K
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Arrays
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education