Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

You need to submit an IEEE format report on BlackBoard You need to submit all the source code as a zip file on BlackBoard In

You need to submit an IEEE format report on BlackBoard
You need to submit all the source code as a zip file on BlackBoard
In your report, you need to include the following sections:
Design: describing the overall program design, and design tradeoffs considered and made. Also
describe possible improvements and extensions to your program (and sketch how they might be
made).
Manual: A detailed manual describing how the program works. The manual should be able to instruct
users other than the developer to run the program step by step. The manual should contain example
commands to invoke each of the four benchmarks.
Performance: Since this is an assignment aimed at teaching you about benchmarking, this is one of the
most important part; you must evaluate the benchmarks with the entire parameters space mentioned in
Section 1. You must produce graphs to showcase the results. Please combine data and plot on the
same graph wherever possible, for either compactness reasons, or comparison reasons. Don't forget to
plot the average and standard deviation, as opposed to just a simple value. Also, you need to explain
each graph's results in words. Hint: graphs with no axis labels, legends, well defined units, and lines
that all look the same, are likely very hard to read and understand graphs. You will be penalized if your
graphs are not clear to understand.
Grading
Report format 10
Design 10
Manual 10
Performance 50
Assignment
This project aims to teach you how to benchmark your computer's computational performance. In this
project, you need to design a benchmarking program that measures the CPU speed, in terms of floating
point operations per second (Giga FLOPS, 109FLOPS ) and integer operations per second (Giga IOPS, 109
IOPS); measure the processor speed at varying levels of concurrency (1 thread, 2 threads, 4 threads, and 8
threads).
Requirements
You must write all benchmarks from scratch. You can use well known benchmarking software to verify
your results, but you must implement your own benchmarks. Do not use code you find online, as you
will get 0 credits for this assignment.
All of the benchmarks will have to evaluate concurrency performance; concurrency can be achieved
using threads. Be aware of the thread synchronizing issues to avoid inconsistency or deadlock in your
system.
Experiments should be done in such a way that they take multiple seconds to minutes to run, in order to
amortize any startup costs of the experiments.
Not all timing functions have the same accuracy; you must find one that has at least 1ms accuracy or
better.
Since there are many experiments to run, find ways (e.g. scripts) to automate the performance
evaluation.
All benchmarks must be run 3 times, and the reported values should be the average and standard
deviation.
No GUls are required. Simple command line interfaces are fine.
image text in transcribed

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access with AI-Powered 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

Students also viewed these Databases questions