CS 290B: Java-Centric Cluster & Concurrent Computing
Description
Java-centric cluster computing: Java Remote Method Invocation;
work-stealing; eager scheduling; system & computational complexity
issues; some cluster applications.
Java-centric concurrent programming: Design principles & patterns of concurrent Java programs.
This course is in the M.S. degree program's Systems track.
Prerequisites
Java programming experience, Computer Science 130B, 170.
Course Outcomes
You should:
- understand issues related to cluster computing
- be proficient using Java Remote Method Invocation
- have developed a cluster computing infrastructure
- have worked in a software development team
- understand several research papers in the field
- have a medium level of expertise in Java multithreaded programming, focusing on practical principles, frameworks, & design patterns.
I believe that the future belongs to those who enjoy learning/researching things for themselves. I consequently hope that you personally explore additional topics. Self-directed learning/research, like any skill, takes practice. Persevere. Self-directed learning/research does not mean that you cannot talk to people. It means that you take personal responsibility for organizing and executing---in a word, directing---your own learning/research plan.
As an instructor, my goal is to encourage you to become more self-directed.
Textbook
Required
Java Concurrency in Practice, Brian Goetz with Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, and Doug Lea. Addison-Wesley, 2006.
Optional
Concurrent Programming in Java, Design Principles and Patterns, 2nd Ed. Doug Lea. Addison-Wesley, 2000.
Workload
This is a 4-credit course at UCSB. You are expected to finish this course in 10 weeks, working intelligently for an average of 12 hours/week.
Discussions & Lectures
Please email me comments about what you would like to see in future lectures, so that I can better accommodate your wishes.
Office Hours
Harold Frank Hall, room 2157
- Monday: 14:00 - 15:00
- Thursday: 15:00 - 16:00
- By appointment

