Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Random Array Write an assembly function fill _ array that takes two arguments: a 6 4 - bit signed integer array pointer and the number

Random Array
Write an assembly function fill_array that takes two arguments: a 64-bit signed integer array pointer and the number of elements. It should fill the array with random values (generated using your randint).
We don't want our array values to be too big, so we'll keep the array elements in the range -128127(but still as 64-bit integers). Hint:
call randint
and $0xff,%rax
sub $128,%rax
Dot Product
Write an assembly function dot that takes two (64-bit signed integer) array pointers and a length (assumed to be the same for both arrays). It should return the dot product of the two arrays, i.e.
arr1[0]*arr2[0]+ arr1[1]*arr2[1]++ arr1[n]*arr2[n]
Array of Structs
Instead of working with pairs of arrays, maybe we should work with arrays of pairs. The provided lab7.h defines this struct:
typedef struct {
int64_t a;
int64_t b;
} pair64_t;
In C, we know that array elements are guaranteed to be adjacent in memory, but struct members are also guaranteed to be arranged in memory in the order they're declared. We generally expect them to be adjacent, so this struct should take 16 bytes: the first 8 bytes are a and the next 8 are b.(It's actually a little more complicated than that because of padding and alignment, but we can ignore those for now.)
Repeat the dot product calculation, but taking a single array of pair64_t (and a length) as arguments.
Speed
The included timing.c will do some timing of your implementations, as well as C implementations in lab7c.c. Have a look.
Questions
Answer these questions in a text file answers.txt.
What commands did you use to compile/assemble and run your code for this lab?
How did the running times compare for the various dot product implementations?

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

More Books

Students also viewed these Databases questions