Distributed Consensus Algorithms

I briefly worked with Professor David Andersen writing a partial implementation of ePaxos, a new algorithm based on paxos, written in Go. Unfortunately, I never found enough time to get as much done on this as I had hoped. So, my implementation will probably remain incomplete. Some more information can be found in this paper (to be clear-not my work!)

There is More Consensus in Egalitarian Parliaments. Moraru, Iulian and Andersen, David G. and Kaminsky, Michael. In Proc. 24th ACM Symposium on Operating Systems Principles (SOSP) , Nov 2013. [pdf].

Molecular Similarity in Quantum Chemistry

I am involved with a research project in the Computational Chemistry department at CMU. I joined this project in fall of 2011. The goal of the project is to use machine learning techniques to develop new semi-empirical methods in ab initio quantum chemistry. The project is predominantly implemented in MATLAB. I have put extensive work into adapting sequential code to run in parallel on multiple cores. I have also worked to improve general code efficiency with major results. Here are some places where you can find some more detailed information:

  • Research Group site
  • Poster presented at the summer 2012 American Chemical Society meeting
  • Github: my out of date fork
  • Research reports for 09-445, Undergraduate Research
    • Fall 2011: Analysis of Ethane in Charged Environments and Electric Fields
    • Fall 2012: Improving the Performance of the MSQC Fits
  • Publications
    1. M. Tanha, S. Kaul, A. Cappiello, G. Gordon, and D. Yaron "Embedding parameters in ab initio theory to develop well-controlled approximations based on molecular similarity", Journal of Chemical Theory and Computation, (Submitted). [download PDF]

Teaching Assistant

I have been a teaching assistant for 15-122 at CMU (Principles of Imperative Computation). I have been a TA for the S12, F12, and S13 semesters. I am a CA for the F13 semester. The course has two primary aims: code specification and verification through C0, a small safe subset of the C programming language, augmented with contracts. It is also an introductory data structures course. I lead a recitation for two hours per week and have a role in assignment creation and grading. For more information: