Computer Architecture Summer School (CASS) 2018, IIT Kanpur

drawing If you're reading this, it might happen that you're looking for information about computer architecture or you followed some link that led you to this post. This short blog is to tell you about my experience while attending [the first awesome Computer Architecture Summer School (CASS) 2018 ](https://www.cse.iitk.ac.in/users/biswap/CASS18/cass.html) organized by top researchers and top computer architects at IIT Kanpur. Why I say, top architects, is because when you listen to their lecture and talk to them personally you have a feel of what the state of the art is. You get a grasp of what can be done and what cannot, and it makes sense out of what it really means to pull up our socks to kick-start the pursuing of research in computer systems. It ignites our minds with ideas and striving for excellence. Coming from the northeastern region of India, I felt lucky and grateful to the organizers for being selected for the opportunity to participate in the CASS 2018 program.

I applied for the School and informed the same to my friend Phrangboklang Thangkhiew (hereon referred to as Phrang), who applied subsequently. We booked our train tickets and reached Kanpur on July 1st, Sunday, at 12 PM. We were expecting temperatures close to 40 degrees, but Kanpur city welcome us with a pleasant weather with little rainfall. We reached Kanpur central station and from there moved to IIT Kanpur. I was allocated Room 313 at Hall-VII. Phrang and I went straight to the mess hall for lunch. What was really surprising to me was the cost of juice which was just Rs. 12 only, which would easily cost Rs 80 or more where I live - in Shillong, the capital city of Meghalaya. The first day, we walked from Hall-VII to The Rajeev Motwani Building (1.5 KM approx) where the summer school was held.

RAJEEV Lavanya delivered a tutorial on performance metrics and went on to ISA and finally introducing us the RISC-V. Biswa walked us through the architecture of the memory hierarchy. I really enjoyed and appreciate the teaching style of Biswa, where Biswa will kept on asking question after question before giving the answer. This is great, which allowed us to think and use our neurons to spark itself instead of simply feeding us with information where at the end of the day we would have been unable to solve any problem. Thanks, Biswa will apply your style if I secure a teaching position. In one of the discussions, a question was raised on how to read the research paper. Mainak had another approach of thinking: While reading the paper, but before reading the solution in the paper, we should first exercise and think what would be our own solution to that problem - another way to exercise our brain on how to think. Teaching assistants are great Nayan (follow this link you might find his blogs interesting) and Sudhanshu(really amazing experience with you guys).

On Day-2 of the Summer School, Manu made us to explore the out of order pipelines and various components required to make the pipeline OOO. The assignment was great, we pulled the ChamSim Simulator and ran it on our laptop, tweaking with it. It is a great pleasure to meet Arka co-author of Gem5 Simulator. Discussion with Arka really helped, whereby giving the exact direction of what can be done and what cannot be done. The hands-on session was amazing. Sudhanshu helped to figure out the GPU bug in the implementation of the assignment on day 4. I was amazed by his skills in locating the bug in such a short time.

Day 3, Arka introduced us to the Virtual memory concepts and how it interacts with the OS. Govind gave us an in-depth discussion on DRAM organization. We were convinced that DRAM was the main component in degrading the throughput due to both the memory and bandwidth wall. The TLB hands-on session was an eye-opener on how we can control the page size in the real system.

Day 4, Mainak discussed shared memory architecture and some issue relating to the memory consistency model. We were so excited about the industry talk where Anasua delivered a talk on AMD’s Ryzen Processor design and architecture. AMD Ryzen

We were moved by the amount of work AMD has been doing over the years and its capability to capture the market and compete with the giant: Intel. On the last day of the school, the hands-on session was amazing. It is for the first time I set my hands on programming for GPU system. Kanishka showed us how the industry, in particular, AMD, was doing performance analysis. Kanishka pinpointed on why trace-driven simulation won’t work in real performance analysis and directed us on how to go about it. One example was the event-driven simulation to capture server workloads in which the dynamics of the system changes. Kanishka’s personal life was a great motivation to us about life and that we should not give up. Lastly, was the panel discussion that gave us a direction as to where to publish a research paper in a top-tier conference and journal. The following picture shows the list given by the panel.

publication Top tier publications

Group photo Group photo

Thanks to Moumita Das for informing us about the course. Thanks to Biswa and the organizer for selecting me to be one of the students in the 1st CASS-18 at IIT-K.