CSE 2301
Introduction to Parallel and Concurrent Programming
This course explores concepts, techniques, and design approaches for parallel and concurrent programming. We study how to write programs that make use of multiple processors for responsiveness and that share resources reliably and fairly. Parallel programming concepts include task-level, functional, and loop-level parallelism. Concurrent programming concepts include threads, synchronization, and locks. We cover how to adapt algorithms to achieve determinism and avoid data races and deadlock. Concepts and skills are acquired through the design and implementation of software projects.
Instructors
Reviews
One of the best professors I had at WashU! Always happy to help and genuinely interested in what he's teaching!
5/8/2026
Best professor ever. No exams. Weekly Assignments. 3 Skips
12/23/2025
I like this class because your grade depends on how much work you put in and it's a guranteed A. Cosgrove is super passionate during lecture and always come in with a great attitude. I do think there are way too many assignments. People say this class is easy, but I wouldn't say it's easy unless they're using AI on every Assignment.
5/5/2025
CS Dpt Goat should be a 5.0. Class goes over fairly challenging topics for a 200 level, but no exams make it easy to get a good grade. Incredible lectures, Prof cosgrove cares more than any prof I've had about his students. 131 is still based off his projects and assignments, as no other prof has been able to make better ones. take his class.
5/4/2025
The assignments are very easy and you actually learn a lot of applicable skills. His lecture are very free-style and conversational, sometimes feels like he doesn't really follow a topic. But overall great professor.
7/1/2024
Engaging lectures and really cared about his students learning and succeeding. We love Prof. Cosgrove!
6/10/2024
2-4 hrs/week
Professor is definitely one of the best at washu. Wants you to succeed. No tests just assignments. Actually useful coding thought process taught
5/22/2024
2 or less hrs/week
40 ish small-medium assignments, lots of TA office hours, professor actually cares about his students and is responsive.
5/22/2024
Best professor in the CS department that I've had so far. Gives great mini-lectures at the start of each class and does everything he can to make the course as engaging as possible. Dennis is a very caring and fun person. Lots of assignments, but they're all relatively easy and build up to a deeper understanding of parallel programming. We stan.
5/21/2024
Genuinely one of the best professors I\'ve ever had and makes all of his "lectures" as enjoyable as possible with jokes. The assignments aren\'t bad and if you get stuck there are plenty of TA\'s outside of class everyday who are all superb themselves. There isn\'t a single reason you shouldn\'t take his class
4/26/2024
Prof. Cosgrove is genuinely the best CS professor this school has to offer. This class is actually perfect. Prof. Cosgrove is caring and genuine, the TAs know what they are doing, the assignments build on one another very well and are relatively easy if you keep up with the class. I hope that when I declare my CS major I get this man as my advisor.
2/29/2024
Breaks concepts down in a way that is easy to grasp, his use of metaphors is unmatched
5/10/2023
One of the few CS professors here that you can tell truly cares about the stuff he teaches. Genuinely enthusiastic about the course. Had actual discussions and took feedback from students. 231S is also the best CS course. Easy yet informative. Take it if you can.
11/16/2022
One of the few CS professors here that you can tell truly cares about the stuff he teaches. Genuinely enthusiastic about the course. Had actual discussions and took feedback from students. \n\n231S is also the best CS course. Easy yet informative. Take it if you can.
11/16/2022
Professor Cosgrove really cares about his students and you can tell he is passionate about teaching as well as constantly improving his course material. Labs and studios are relatively easy and instructions are well-documented. He is also very accessible and is willing to spend lots of time even outside of class time.
12/29/2021
This professor is an actual gem within the CS department- smart and caring. He's never afraid to break down the material in an understandable way, or try to put it in a way for you to understand. His class was very difficult when I took it because it was a very new course, but I learned a lot and I found it 100% worth it. Get ready to work.
3/28/2018
Cosgrove is a great professor and a great person - he genuinely cares about the success of the students and, for example, will actively modify course structures to accommodate the needs of the students. But he's also a bit awkward, and can struggle when it comes to handling individual student disciple/extra-academic issues.
6/15/2017
really cares about students understanding the material and will go over it with you as many times as it takes for you to get it. Very nice and caring and respectful. Easy class overall and you learned about as much as you put into this class. The class was being taught for the first time so understandably there were many flaws
12/24/2016
He really goes out of his way to help students and obviously puts in tons of work to build the programs needed for the class. The best CS professor I've had at WashU.
12/15/2016
Professor Cosgrove obviously cares a lot about the course he teaches and the students in it. He often goes out of his way to help students so that the course would be accessible to everyone. CSE231 is a new class as of fall 2016, so there are some polishing to do further on, but I would say he is the best professor I have had so far.
12/14/2016