Final Report

NC State - Fall ‘25 - CSC 236

Table of Contents

Due date

This report is due on Tuesday, December 2nd, 2025, 11:45pm ET.

You have a 15-minute buffer for any technical issues. No submissions past this buffer will be accepted. Project late days cannot be used for this report.

Overview

The goal of this project is to have you explore how different chips are built and how different architectures can result in different features.

This project can be completed individually or as a group of 2 students.

Each group will study one combination of x86 chip, arm64 chip, and C-code.

The x86 chip options are:

  • Intel Core i3
  • Intel Celeron
  • Intel Xeon
  • AMD Epyc 7001 series
  • AMD Ryzen Threadripper 1000 series
  • AMD Ryzen 6000 series

The arm64 chip options are:

  • ARM Cortex-R82
  • ARM Cortex-A710
  • ARM Cortex-X2
  • Ampere Altra

The C-code options are:

In our Moodle page, you can make your selection with the “Choose Final Report Combo” assignment at the very bottom. If you’re working as a team, only one team member has to make this selection.

Note that for the chip options, each might be a family of chips. If that’s the case, you should find relevant references for one specific version that you will use in the report. For example, there are many versions of Intel Core i3 chips; for the report, you might choose to talk about the Core i3-14100.

Report Instructions

Your report should follow the 2-column IEEE template and be between 4 and 6 pages long. You can find Word and LaTeX versions of the template at the end of this page.

It should contain the sections specified below:

1. Chip specs

You should create one table that details the specification of both chips. You should include:

  1. number of cores and threads
  2. clock frequency
  3. physical size
  4. power
  5. max memory
  6. cache size
  7. price

2. Advanced features

Here you should discuss three advanced features each CPU has, e.g., SIMD, Hyper-Threading.

If information is available for the two features we talked about in class, you should discuss them:

  • big.LITTLE usage – different companies might call this different names!
  • number of pipeline stages

If you cannot find information for these two, please say that and discuss other features in their place.

Keep in mind that we want 3 advanced features, so for each chip you’d talk about, e.g., big.LITTLE, pipeline, and one extra feature.

3. Benchmark comparisons

Next, you should compare how the two chips perform on a CPU benchmark. You can use cpubenchmark or a different one, but make sure you report which one you’re using.

You should include (i) single-thread and multi-thread performance for each chip and (ii) discuss how the chips compare to each other in these aspects.

4. Assembly comparison

In this section, you will compare the same piece of C-code for both architectures. You will use Godbolt to compile your chosen code for each architecture.

In Godbolt, you will use x86-64 gcc 15.2 as the compiler for x86-64 and ARM64 gcc 15.2.0 as the compiler for arm64.

For each architecture, report the number of assembly instructions generated with varying optimization levels. You can control the optimization level by using -O0, -O1, or -O2 in the compiler options.

For each architecture, with the most optimized option (-O2), find one assembly instruction we haven’t covered in class and describe what it does.

5. References

Finally, you should include links to where you found the specs/features/assembly instructions you described in previous sections. Make sure you have trustworthy references. For example, official manufacturer pages and official datasheets would be great references, Wikipedia would not.

Submission

Your submission should be a .pdf file to Gradescope; the submission link is available in our Moodle page.

Grading Rubric

Your submission will be graded as follows:

1. Formatting (15 pts)

Grading Item major errors / missing minor errors good
double column format 0 1 2
number of pages (4-6 pages with references) 0 1 2
report title 0 1 2
author list with email 0 1 2
captions on all tables and figures 0 1 2
references 0 2 5

2. CPU Information (55 pts)

Grading Item major errors / missing minor errors good
all 7 required specs for both chips
(+2 for each, +1 for having all)
0 - 15
discusses 3 advanced features
(+3 for each, +1 for having three)
0 - 10
report single-thread benchmark results 0 5 10
report multi-thread benchmark results 0 5 10
discusses benchmark results 0 5 10

3. Assembly Information (30 pts)

Grading Item major errors / missing minor errors good
correctly reports counts for -O0, -O1, -O2 for both architectures 0 5 10
finds one new x86-64 instruction and describes it 0 5 10
finds one new arm64 instruction and describes it 0 5 10

Resources