The massive number of services powered by cloud computing and the rise of multicore hardware have caused multithreaded programs to become increasingly pervasive and critical. Yet, these programs are extremely difficult to write, optimize, test, debug, and verify, and often contain many difficult-to-debug “heisenbugs” that compromise security and reliability. We’re developing techniques and methodologies to make parallel programs run reliably, securely, and efficiently. One ongoing idea we’re investigating is to memoize schedules and reuse them on future inputs if possible, so that the schedules tested are the ones run and that reproducing concurrency errors becomes much easier. Moreover, the memoized schedules effectively “predict” the future of the executions, allowing operating system schedulers to optimize thread scheduling and placement.
- AboutThis should describe the systems research collaboration, and present the overall research goals of the new group.
- PeopleHere are the different labs in the SRC…
- PublicationsA page where you will find categorized publications!
- ProjectsA page where you will find our projects
- Software
- News
- ResourcesVarious resources for prospective students, current students, alumni. Maybe put something here about life in NYC and at Columbia…