Main

CV

Resume

Publications


Graduate Standing

I am a PhD student in computer engineering at the University of Colorado-Boulder. I work under the supervision of Professors Jeremy G. Siek and Manish Vachharajani. My primary research area is parallel and distributed computing with an emphasis on transactional memory. I am also interested in programming languages, machine learning and (parallel) algorithms.

Please stop by my "Parallelism and Concurrency" blog (par-con.blogspot.com) if you are interested in hearing my less formal thoughts about concurrent software, hardware, and algorithms.

Recent News

We are delighted to report that our InvalSTM efficiency paper has been accepted to CGO'10. Our paper suggests STMs can increase concurrent throughput by using a mechanism called 'invalidation' at commit-time which supplies the contention manager (CM) with more information than is possible using 'validation.'

I am a member of the BoostCon'10 program committee. Here is the link to this year's excellent conference where I presented some of my research on TBoost.STM.

Recent Publications

Reducing the Integration Complexity of Software Transactional Memory with TBoost.STM (BibTex)
Vicente J. Botet Escriba, Justin E. Gottschlich, and Dwight Y. Winkler
[To Appear in the International Conference on Boost Libraries (BoostCon), May 2010]

An Efficient Software Transactional Memory Using Commit-Time Invalidation (39% acceptance) (BibTex)
Justin E. Gottschlich, Manish Vachharajani and Jeremy G. Siek
[To Appear in the International Symposium on Code Generation and Optimization (CGO), April 2010]

An Efficient Lock-Aware Transactional Memory Implementation (supersedes technical report: CU-CS 1048-08) (talk slides: .ppt .pdf) (BibTex)
Justin E. Gottschlich, Jeremy G. Siek, Manish Vachharajani, Dwight Y. Winkler, and Daniel A. Connors
[ACM International Workshop on ICOOOLPS. In conjunction with ECOOP. July 2009]

Toward Simplified Parallel Support in C++ (talk slides: .ppt .pdf) (BibTex)
Justin E. Gottschlich, Jeremy G. Siek, Paul J. Rogers, and Manish Vachharajani
[International Conference on Boost Libraries (BoostCon), May 2009]

Shifting the Parallel Programming Paradigm (27% acceptance) (Winner Best Presentation Award) (BibTex)
Justin E. Gottschlich, Dwight Y. Winkler, Mark W. Holmes, Jeremy G. Siek, and Manish Vachharajani
[Raytheon Information Systems and Computing Symposium (ISaCTN), March 2009]

[ Full list of publications ]


Current Research

Transactional Memory

I am currently researching transactional memory, a new parallel programming concept that makes parallel programming easier. Transactional memory shows great promise as a new parallel programming model because it simplifies the complexities of parallel programming while remaining efficient by using optimistic critical section execution. I have built a software transactional memory (STM) system called Toward.Boost.STM (or just TBoost.STM). My STM library was previously called DracoSTM, but we have changed our name to better align with our goals of becoming a Boost C++ Library.

TBoost.STM is written in C++98, as well as using some advanced C++0x features, and can be found here.

Other Research Interests

Machine Learning

While machine learning concepts have been around for decades, some of the more advanced learning algorithms (e.g., learning bayesian networks and support vector machines) are still in their infancy. These algorithms have substantive growth potential over the next several years.

I am actively involved in AI research and development at Raytheon. I recently built an integrated database machine learner using Oracle's Java Machine Learning Interfaces. The machine learner takes historical data for any problem and then builds a bayesian network or support vector machine after performing Oracle's attribute importance for the traits of the given problem. Once the machine learned algorithm is built, it can then be applied to real-time data and returns fairly accurate percentage probabilities for the occurrence the problem.

Background

Me and Lori

When I'm not doing graduate school work, I run marathons, am a software engineer at Raytheon Company in Aurora, Colorado, and run a software online gaming company, Nodeka, LLC. I have a bachelor's of science in computer science at Colorado State University and a master's of science in electrical and computer engineering at the University of Colorado-Boulder. My dogs Max and Chase also have degrees. They are doctors of lounging around and doing battle.