Question: This project aims to teach you how to benchmark your computers computational performance. In this project, you need to design a benchmarking program that measures

This project aims to teach you how to benchmark your computers 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, 109 FLOPS) 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). You can be creative with this project. You are free to use C, C++, Java, Python and any languages you prefer. You are free to use any machines (PC, UNIX, etc) for your development.

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 1 ms 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 GUIs are required. Simple command line interfaces are fine.

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!