Professor Tine is a nice guy—you can tell he really cares about his students. His instruction can be a bit bland at times, but it’s mostly informative. Sometimes he’ll attempt to explain a process/algorithm, but I’d get a bit lost along the way.
I do have a major problem with the homework. Each homework assignment is a 10-15 question Canvas quiz. However, each time there’s always something wrong with it. Either there are multiple choices with the same label (and surprise, surprise, you happened to select the wrong one) or none of the options are correct. At least the TA manually corrects these issues after the matter.
The projects are also a bit jank. We use his own mini RISC-V emulator to implement decoding instructions, pipelining, out of order execution, and GShare branch prediction. The professor attempts to provide debug traces so we can check our implementation. However, these traces are almost always wrong unless a student chimes about it. This may happen up to the deadline, so be ready to change your implementation at a moment’s notice.
The exams are the weirdest part of this course. They’re closed note…but online on Canvas? They also face the same issues that the homework has—since they’re also Canvas quizzes—but much worse since, you know, it’s an exam.
Overall, he’s a nice guy, okay professor, but horribly organized.
Grading Structure:
30% Homework (6 quizzes, one of them is a free introductory 5 points)
15% Project 1 (Implementing Decoding and Pipelining)
15% Project 2 (Implementing Out-of-Order Execution and Branch Prediction)
15% Midterm (Covers basic binary operations, basic RISC-V Integer instructions and pipelining)
20% Final (To be determined)
5% Participation (2.5% through attendance Google Forms, 2.5% if he “recognizes you”…to be determined what that’s supposed to mean)
2% Project 2 Bonus (Report that experiments with different hashing functions for GShare)
I did not interact with Turan Vural very much. He seems nice, but also horribly organized. Seems to be a trend.