INF5063 - Intel x86 Resources & FAQ

 

Page for resources and frequently asked questions for the x86 machines. If you have any other questions, please send an email to inf5063@ifi.uio.no

The following table gives an overview of the status of the x86 machines in the lab at Simula. This assignment can be solved on both AMD and Intel processors, and it is possible to use your own hardware.

Remember that you have to SSH into oslo.simula.no (or oslo.ndlab.net) to access the lab-net at Simula. From oslo.ndlab.net you can ssh into <hostname>.local 

Username and password will be provided to all groups:

Machine Status:
Computer CPU SSE Version Status
mpg-2014-13.ndlab.net Intel Core i5-4590 SSE 4.2 / AVX2 Up
mpg-2014-14.ndlab.net Intel Core i5-4590 SSE 4.2 / AVX2 Up
mpg-2014-15.ndlab.net Intel Core i5-4590 SSE 4.2 / AVX2 Down
mpg-2014-16.ndlab.net Intel Core i5-4590 SSE 4.2 / AVX2 Down
mpg-2014-17.ndlab.net Intel Core i5-4590 SSE 4.2 / AVX2 Up
mpg-2014-18.ndlab.net Intel Core i5-4590 SSE 4.2 / AVX2 Up
mpg-2014-19.ndlab.net Intel Core i5-4590 SSE 4.2 / AVX2 Up
mpg-2014-20.ndlab.net Intel Core i5-4590 SSE 4.2 / AVX2 Down

 

x86 Programming Resources

Carsten's page with Intel IA32 and Intel 64 manuals

Intel Intrinsics Guide

MMX, SSE, and SSE2 Intrinsics

 

Frequently Asked Questions

 

Q: Can I use my own computer with an AMD processor?

A: Yes, you can! Just make sure that your program works on our lab machines before you hand in your code. Also write in your documentation which SSE and AVX version you need.

 

Q: Where can I see which SSE version my processor suports?

A: In Linux you can write "less /proc/cpuinfo". Under "flags" you can see which SSE version is supported by your CPU. On Windows you can download the program CPU-Z.

 

Q: What tools are available for profiling my code?

A: Have a look at gprof, kcachegrind or oprofile. The latter is a system-wide profiler and thus requires root permission. If you want to experiment with oprofile you must do so on your own hardware.

There is a non-commercial student version of Intel Parallel Studio XE available for free from Intel

 

Q: Can we copy/paste a fast DCT implementation optimized for SSE which we found on the Internet into our code?

A: No, you may not. 

 

Q: What kind of speed improvements are you expecting from our code??

A: We do not expect a certain percentage of improvement. We want you to experiment with instructions that can exploit the built in parallelism of the Intel x86 architecture, and describe in your report what you have tried, and what you have achieved. What part of the code have you investigated? What did you try? How did it go? This is the most important. It is positive if you can document a pattern in the improvements. It is no need to speculate in how the processor parallelize, since we lack documentation to be able to evaluate if the speculation is correct or not.