Giter VIP home page Giter VIP logo

dthreads's Introduction

Dthreads: Efficient Deterministic Multithreading

Tongping Liu, Charlie Curtsinger, Emery D. Berger
[email protected]
[email protected]
[email protected]

http://plasma.cs.umass.edu

Copyright (C) 2011-2012 University of Massachusetts Amherst

Building Dthreads

You can build the dthreads library (libdthread.so) by running make. That library is for 64-bit systems (the default); the 32-bit version is called libdthread32.so.

NOTE: if your system does not support the SSE3 instruction set, then remove SSE_SUPPORT from the Makefile.

Using Dthreads

Dthreads currently only supports Linux/x86 platforms.

  1. Compile your program to object files (here, we use just one, target.o).

  2. Link to the dthreads library. There are two options (neither of which is particular to dthreads).

(a) Dynamic linking: this approach requires no environment variables, but the dthreads library needs to be in a fixed, known location. Place the dthreads library in a directory (DTHREAD_DIR).

  Then compile your program as follows:

% g++ target.o -rdynamic DTHREAD_DIR/libdthread.so -ldl -o target  

(b) Ordinary dynamic linking: this approach is more flexible (you can change the location of the dthreads library), but you must also set the LD_LIBRARY_PATH environment variable.

% g++ target.o -LDTHREAD_DIR -ldthread -dl -o target  
% export LD_LIBRARY_PATH=DTHREAD_DIR:$LD_LIBRARY_PATH  

Citing Dthreads

If you use dthreads, we would appreciate hearing about it. To cite dthreads, please refer to the following paper, included as doc/dthreads-sosp11.pdf.

@inproceedings{dthreads,
author = {Liu, Tongping and Curtsinger, Charlie and Berger, Emery D. },
title = {Dthreads: Efficient Deterministic Multithreading},
booktitle = {Proceedings of the 23rd ACM Symposium on Operating Systems Principles},
series = {SOSP '11},
year = {2011},
location = {Cascais, Portugal},
numpages = {10},
acmid = {1640096},
publisher = {ACM},
}

Acknowledgment and Disclaimer

This material is based upon work supported by the National Science Foundation under Grant No. 0910883.

Any opinions, findings and conclusions or recomendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation (NSF).

dthreads's People

Contributors

emeryberger avatar tongping avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.