git checkout COMMIT_HASH file/to/revert
Will bring the
file/to/revert file to the state in
git reset --hard HEAD~1
will completely revert the last commit (i.e., everything from this commit will disappear).
git checkout -b branch--new commit-hash
will checkout the
commit-hash commit in a new branch called
git push -u REMOTE BRANCH_NAME
This will also create an association between the local and the remote branch, so you can afterwards just issue
git rebase -i
and then pick the one you want to keep and squash the other
It’s just one day before traveling to the US to present “Everything You Always Wanted to Know about Synchronization but Were Afraid to Ask” in the the 24th ACM Symposium on Operating Systems Principles (SOSP). I am really glad that I will have the opportunity to share the knowledge we collected in over a year of hard work. You can get a copy of the paper here.
This publication is about understanding the low-level details of the hardware (e.g., the cache-coherence protocol) and how they affect synchronization (and sharing of data in general) in software. If you want to better understand your hardware, to optimize your system/application, or to understand why something scales or does not scale, I believe you will be interested in reading the paper.
We also published the software we developed to perform this study as the SSYNC synchronization suite (SSYNC stands for Simple Synchronization). If the information in the paper is not sufficient for your needs, or if you have a hardware platform that is not very similar with the ones we used in the paper, then you can use the tools and libraries of SSYNC to evaluate your own platform.
SSYNC is available at http://lpd.epfl.ch/site/ssync and contains:
- ccbench: a tool for measuring the latencies of the hardware cache-coherence protocol
- libslock: a library with cross-platform implementations of various locking algorithms
- libssmp: a message passing library optimized for x86, SPARC, and Tilera platforms
- TM2C: the first software Transactional Memory for Many-Cores
I hope you will enjoy reading the paper 🙂