changeset 40:cbefaa3eda37

CV -- created CV for euro fellowship and for LLNL post-doc
author Some Random Person <seanhalle@yahoo.com>
date Fri, 04 May 2012 05:26:00 -0700
parents 95c7bc4d8cc9
children ae51818f61c8
files 0__Papers/Holistic_Model/Perf_Tune/latex/Holistic_Perf_Tuning.tex CVs/12_Ap__Euro_Fellowship_CV/bib_for_papers_apr_2012.bib CVs/12_Ap__Euro_Fellowship_CV/euro_fellowship_CV.tex CVs/12_Ap__Euro_Fellowship_CV/euro_fellowship_CV_w_pubs.tex CVs/12_Ap__Euro_Fellowship_CV/publication_list.pdf CVs/12_Ap__Euro_Fellowship_CV/publication_list.tex CVs/12_Ap__LLNL_CV/LLNL_CV_w_pubs.pdf CVs/12_Ap__LLNL_CV/LLNL_CV_w_pubs.tex CVs/12_Ap__LLNL_CV/bib_for_papers_apr_28_2012.bib
diffstat 9 files changed, 2707 insertions(+), 203 deletions(-) [+]
line diff
     1.1 --- a/0__Papers/Holistic_Model/Perf_Tune/latex/Holistic_Perf_Tuning.tex	Fri May 04 05:23:17 2012 -0700
     1.2 +++ b/0__Papers/Holistic_Model/Perf_Tune/latex/Holistic_Perf_Tuning.tex	Fri May 04 05:26:00 2012 -0700
     1.3 @@ -180,7 +180,7 @@
     1.4  
     1.5  
     1.6  % *** SUBFIGURE PACKAGES ***
     1.7 -%\usepackage[tight,footnotesize]{subfigure}
     1.8 +%\usepackage[tight,footnotesize]{subfig}
     1.9  % subfigure.sty was written by Steven Douglas Cochran. This package makes it
    1.10  % easy to put subfigures in your figures. e.g., "Figure 1a and 1b". For IEEE
    1.11  % work, it is a good idea to load it with the tight package option to reduce
    1.12 @@ -283,7 +283,9 @@
    1.13  
    1.14  
    1.15  
    1.16 -\title{Performance Tuning Requires Integrating Aspects of Application, Runtime, Scheduling, and Hardware..  OR Integrated Performance Tuning Using Semantic Information Collected by Instrumenting the Language Runtime}
    1.17 +\title{Performance Tuning Requires Integrating Aspects of Application, Runtime, Scheduling, and Hardware..\\
    1.18 +OR Performance Tuning Requires Connecting Application to Runtime, Scheduling, and Hardware\\
    1.19 +  OR Integrated Performance Tuning Using Semantic Information Collected by Instrumenting the Language Runtime}
    1.20  
    1.21  \author{
    1.22          Nina Engelhardt\\
    1.23 @@ -326,10 +328,13 @@
    1.24  The views connect the units to specific segments of code that compose the units, and connect each constraint on scheduling choice to the precise source of the constraint, within the code, hardware, or runtime. They should also separate resource usage into categories of: application work, non-overlapped communication (which results from scheduling decisions), and scheduling/runtime overhead. They should also integrate parameter choices within the code that affect unit creation and constraints.
    1.25  
    1.26  =====
    1.27 + 
    1.28   The value of a consequence graph is linking the size of boxes in it to the decisions made by the scheduler, which are represented by the shape. This lets a person visually link scheduling decisions to consequences.  The mind can quickly see empty areas, representing lost performance, and connect those to boxes and lines that cause the empty areas.  They then look up the code of each box and construct of each line, which gives them the code structures that caused the loss of performance.  This \emph{visual} linkage of undesirable effect back to \emph{cause in the code} is what sets our approach apart. 
    1.29  The value of the UCC is visually linking cause of performance loss to options available for fixing it.
    1.30 +
    1.31  =====  
    1.32  
    1.33 +
    1.34  We introduce in this paper a model of computation that ties all aspects of performance together, along with instrumentation and visualization that is guided by the model and that links all relevant performance tuning information together. The model and visualization tools are illustrated with a story line, which shows how they are used to performance tune a standard parallel application on two multi-core systems. 
    1.35  
    1.36  
    1.37 @@ -604,56 +609,6 @@
    1.38  %\end{figure*}
    1.39  
    1.40  
    1.41 -\section{Setup}
    1.42 -
    1.43 -Preview of what will see in setup
    1.44 -
    1.45 -
    1.46 -\subsection{a bit about development environment and the machines}
    1.47 -
    1.48 -\subsection{SSR Language}
    1.49 -Intro to SSR and its features. 
    1.50 -
    1.51 -\subsection{A bit about the code}
    1.52 -Pics illustrate matrix mult divider code. 
    1.53 -
    1.54 -Pics illustrate processors created and communication between them.
    1.55 -
    1.56 -\subsection{} 
    1.57 -  elements of Holistic Model without explanation: UCC and consequence graph elements.  How consequence graph ties back to features in UCC and to specific segments of code.
    1.58 -
    1.59 -
    1.60 -<a line about lang features support this perf tuning model -- can still do with pthreads, but less effective because don't have clean units nor semantics of constraints on units -- SSR provides these, as do languages like CnC, StarSs, and so on>
    1.61 - 
    1.62 -\subsection{summary of instrumenting language and VMS}
    1.63 -Make point that no application instrumentation -- everything is inside language runtime (part in plugin, part in VMS -- VMS is just a helper to simplify runtime creation).
    1.64 -
    1.65 -Pic from VMS paper, with arrows pointing to places instrumentation injected.
    1.66 -
    1.67 -
    1.68 -\section{The Visualizations}
    1.69 -
    1.70 -<note: use language that talks about the visualizations as seen, but avoid using word "tool" in connection with visualization.. no need to draw attention to fact that we don't have a GUI, the contribution is not a tool, but rather a methodology, and the visualizations are just one element of the methodology>
    1.71 -
    1.72 -show example UCC and consequence graph pictures. 
    1.73 - 
    1.74 -Talk about features of the two graphs, point out how features indicate performance loss, link picture elements that indicate perf loss to sources of loss -- could be param choices, like how many pieces to make, or input choices like size of matrix, or code choices, like how to perform division, or scheduling choices, like how to assign work-units to cores.
    1.75 -
    1.76 -State will see all of these in practice during the story lines of using the visualizations.
    1.77 -
    1.78 -
    1.79 -\section{Illustrative Story of Performance Tuning}
    1.80 -
    1.81 -Overview of steps in story, and what each step will show
    1.82 -
    1.83 -\subsection{Performance Tuning on 1 socket by 4-core Machine}
    1.84 -
    1.85 -Starting point: just wrote code and ran it -- show UCC and consqG pics..  point out glaring visual feature that says a big perf loss..  show how links to cause.. and so on..
    1.86 -
    1.87 -
    1.88 -\subsection{Performance Tuning on 4 socket by 10 core by 2 context Machine}
    1.89 -
    1.90 -Same as for 4 core machine..  this time, point out what choices are different between 40 core and 4 core.
    1.91  
    1.92  \section{The Model Behind the Visualization}
    1.93  
    1.94 @@ -683,19 +638,51 @@
    1.95  
    1.96  
    1.97  \subsection{Scheduling Consequence Graph}
    1.98 -The second part of the model adds-in constraints caused by runtime implementation details and hardware. It then integrates all three aspects of parallel performance: application, runtime, and hardware. The resulting graph identifies all sources of lost performance, and links them to the cause of the loss, as was seen during the tuning story in Section X.
    1.99 +Whereas the UCC concentrates on application-derived information, the second part of the model adds-in constraints caused by runtime implementation details and hardware. It's called the Scheduling Consequence Graph, because it links scheduling decisions to their performance consequences and the hardware details involved with those consequences.
   1.100  
   1.101 +The consequence graph integrates all three aspects of parallel performance: application, runtime, and hardware. It identifies all instances of lost performance, and links them to the cause of the loss, as was seen during the tuning story in Section X.
   1.102 +
   1.103 +This graph captures the three kinds of causal relationships that affect core usage: scheduling decisions invoked by the runtime, dependencies inside the runtime itself, and hardware constraints. Each of these causalities causes some portion of the core usage that took place, and shows up as a feature on the consequence graph. 
   1.104 +
   1.105 +To distinguish from the UCC, the consequence graph shows the behavior resulting from scheduling decisions actually \emph{made},   not which were \emph{possible.} The UCC shows the possibilities. Hence, a consequence graph shows one of the possible sets of choices allowed by the UCC.
   1.106 +
   1.107 +We will now look at each source of causal relationship.
   1.108 +
   1.109 +\paragraph{Scheduling decision causality} Notice that the performance varies between choice-sets. The main reason for the variation is the communication patterns resulting from the particular choices. For a fixed concrete UCC, each set of scheduling choices it allows has a consequent pattern of core usages, which \emph{is} the performance realized. 
   1.110 +
   1.111 +The consequence graph also shows control dependencies from the base language, which may add superfluous constraints that further eliminate some otherwise allowed choices in the UCC. An example would be a \texttt{for} loop that creates work-units -- no parallelism constructs cause a sequentialization of the creations, but the base C language sequentializes it nonetheless. 
   1.112 +
   1.113 +\paragraph{Runtime causal dependencies} are introduced by implementation details. For example, the version of VMS we instrumented to take measurements for this paper relies upon a global lock for shared semantic-constraint information. This lock introduces a causal dependency that only allows the runtime to execute on one core at any horizontal line in the consequence graph.
   1.114 +
   1.115 + Normally, these are not displayed explicitly, due to clutter, but can be turned on when needed, say, to figure out the cause of a particular pattern of core usage.
   1.116 +
   1.117 +\paragraph{Hardware causal dependencies} are due to the physical fact that a given resource can only be used by one work-unit at a time. A (logical) core only executes one work-unit at a time. A communication link is occupied by one packet at a time, and so on. 
   1.118 +
   1.119 +These are also not normally displayed, due to clutter, and not all hardware dependencies are directly measured. Future work will focus on using the performance counters and other instrumentation to add more information about communication paths taken as a consequence of the scheduling decisions made. This takes the current linkage of application-code to runtime decisions, and adds consequent communication patterns, which are the primary free variable in resulting performance. This gives an end-to-end linkage between code choices and caused behavior on the hardware for performance. 
   1.120 +
   1.121 +Three sources of causality: application-derived, runtime, and hardware. 
   1.122 +
   1.123 +How consequence graph features each tie back to features in UCC and to specific segments of code or constructs.
   1.124 +
   1.125 +In detail, the consequence graph
   1.126 +\subsubsection{A precise definition of Consequence Graph} A consequence graph accounts for each bit of core time. It has boxes that each represent one segment of core time, and arcs between the boxes that each represent a causal dependency between boxes. Each box is counted as associated to one work-unit, and then all boxes counted to the same unit are collected into a node.
   1.127 +
   1.128 +There are several kinds of boxes, one for each reason that the core is being used (or being forced idle), and several kinds of arcs, one for each type of causal dependency.
   1.129 +
   1.130 +The box types are arranged by cause of core usage: application work, waiting for communication of work data, runtime internals, managing constraints, and choosing assignment of work onto cores. The runtime internals have sub-categories but space is limited so we skip those here.
   1.131 +
   1.132 +The arc types are arranged by source of the causal relationship: base-language control dependencies, parallel semantic constraint which fed into a particular choice in the runtime (IE, the choice ties together two specific work-units so the one completing causes other to start), runtime internal causality such as a global lock or a distributed quorum algorithm which creates causal dependencies between boxes that represent execution of internal runtime code, and arcs that represent hardware causal relationships, such as one work-unit finishing on a core causes another work-unit to start there, given the choice by the runtime. This should give a reasonably precise description of the arcs, while the finer details are beyond the scope of this paper.
   1.133  
   1.134  \subsection{Levels of UCC and Consequence Graph}
   1.135 -There is one last twist to the story of UCCs and consequence graphs, which is that there are levels of them, which correspond to the levels of scheduler in a hierarchical machine. We use an example involving a server machine with a hierarchy of runtimes to illustrate both, concentrating first on just the UCC then adding the consequence graph. 
   1.136 +There is one last twist to the story of UCCs and consequence graphs, which is that there are levels of them that correspond to the levels of scheduler in a hierarchical machine. We use an example involving a server machine with a hierarchy of runtimes to illustrate both, concentrating first on just the UCCs, then adding the consequence graph. 
   1.137  
   1.138  \subsubsection{Levels of UCC}
   1.139  
   1.140 -As the example, consider  a server with one rack,  having a back-plane that boards plug into. A board has its own memory with four sockets, each having a chip with four cores. So there is a back-plane network connecting the boards,  a bus on each board that connects the sockets to the DRAM, and inside the chip in each socket is a cache hierarchy that connects the cores.
   1.141 +For the example, consider  a server with one rack,  having a back-plane that boards plug into. A board has its own memory with four sockets, each having a chip with four cores. So there is a back-plane network connecting the boards,  a bus on each board that connects the sockets to the DRAM, and inside the chip in each socket is a cache hierarchy that connects the cores.
   1.142  
   1.143  The hardware is given a set of runtimes to match the hierarchy. Each network or bus has a runtime that schedules work onto the things connected below it. So the top runtime divides work among the boards, while each board has a runtime that divides work among the sockets, and each socket has a runtime that divides work among the cores.  
   1.144  
   1.145 -To a runtime high up, each runtime below it looks like a complete machine. It schedules work-units to these machines, without knowing the internal details of how that machine is implemented. So the runtime at the top handles very large work-units that it schedules onto the boards. The runtime on a board, meanwhile, divides up the work it gets into smaller work-units, and schedules one onto each socket, and so on.
   1.146 +To a runtime high up, each runtime below it looks like a complete machine. It schedules work-units to these machines, without knowing the internal details of how that machine is implemented. So the runtime at the top handles very large work-units that it schedules onto the boards. The runtime on a board, meanwhile, divides up the work-unit it gets into smaller work-units, and schedules one onto each socket, and so on.
   1.147  
   1.148  The application in this example has been written in a language that allows work to be divided. The toolchain inserted a manipulator that allows each runtime to divide up the work it is given into smaller work-units. This pushed the UCC of the application all the way to the right on the unit axis.  
   1.149  
   1.150 @@ -709,164 +696,94 @@
   1.151  
   1.152  A consequence graph ties together scheduling decisions made on units with the consequences in the hardware of those decisions. The goal is to charge each segment of time on a physical core to exactly one box in a consequence graph.
   1.153  
   1.154 -In the UCCs, for a higher up runtime, each lower runtime it schedules onto is treated as a machine. We saw in Fig X that a unit has its own UCC in the level below it, so there is a corresponding consequence graph. The UCC states the degrees of scheduling freedom, while the consequence graph shows the hardware consequences resulting from the particular scheduling choices made in the runtime.
   1.155 +In the UCCs, for a higher up runtime, each lower runtime it schedules onto is treated as a machine. We saw in Fig X that a unit has and entire  UCC in the level below, so there is a corresponding consequence graph. The UCC states the degrees of scheduling freedom, while the consequence graph shows the hardware consequences resulting from the particular scheduling choices made in the runtime.
   1.156  
   1.157 - Now, the question is, what hardware usage should get counted towards one of the units? The answer is: only the time spent on the cores that is used to schedule, do work, and wait for non-overlapped communication.
   1.158 + Now, the question is, what hardware usage should get counted towards one of the units? The answer is: only the time spent on the cores that is used to schedule, do work, and wait for non-overlapped communication of that unit.
   1.159  
   1.160  The time spent on scheduling one of the units is straight-forward, it's the normal runtime overhead of receiving a unit, managing the constraints on it, and choosing the best location and time to execute it.  The only variation is that the location chosen is a lower-level runtime rather than a physical core.
   1.161  
   1.162 -But what core time should be charged as the work of that unit? The answer is: the core time not accounted for in the descendent consequence graphs. Each segement of physical core time can only be charged to one box in one consequence graph, so only the leaf graphs count the actual work. Further, the time spent in the lower runtime spent receiving, handling constraints, and choosing when and where to schedule the sub-units is charged to boxes in the lower-level consequence graph.  By the process of elimination, the only time not accounted for elsewhere is the time spent dividing up a unit into smaller ones, and time spent accumulating the individual results back together. So this is what gets charged to the work-time box for a unit.
   1.163 +But what core time should be charged as the work of that unit? The answer is: the core time not accounted for in the descendent consequence graphs. Each segment of physical core time can only be charged to one box in one consequence graph, so only the leaf graphs count the actual work. Further, the time spent in the lower runtime spent receiving, handling constraints, and choosing when and where to schedule the sub-units is charged to boxes in the lower-level consequence graph.  By the process of elimination, the only time not accounted for elsewhere is the time spent dividing up a unit into smaller ones, and time spent accumulating the individual results back together. So this is what gets charged to the work-time box for a unit.
   1.164  
   1.165 -The last question is how to handle communication consequences. This is tricky because decisions in higher-level runtimes set the context for decisions in lower-level ones. This means a higher-level choice is linked to the consequences from lower-level choices. The value of a consequence graph is linking the size of boxes in it to the decisions made by the scheduler as represented by the shape. It's not clear how to divide among the levels the time that cores spend waiting for non-overlapped communication. We have no good answer at the moment and leave it for future work.
   1.166 +The last question is how to handle communication consequences. This is tricky because decisions in higher-level runtimes set the context for decisions in lower-level ones. This means a higher-level choice is linked to the consequences from lower-level choices. The value of a consequence graph is linking the size of boxes in it to the decisions made by the scheduler, as represented by the shape. It's not clear how to divide, among the levels, the time that cores spend waiting for non-overlapped communication. We have no good answer at the moment and leave it for future work.
   1.167 +
   1.168 +\section{Conclusion}
   1.169 +We have shown how to apply a computation model to instrument a language runtime for collecting measurements that connect: to each other, to application structure, to scheduling decisions, and to hardware. A simple visualization of the data has features that indicate lost performance, and features that visually link the lost performance to the cause, no matter if the cause is application structure, language runtime implementation, or hardware feature.  It is this linkage, due to the computation model, that sets this approach apart from others. 
   1.170 + 
   1.171 +
   1.172 +\bibliography{BibForPapers}
   1.173 + 
   1.174 +\end{document}
   1.175 +
   1.176 +======
   1.177 +
   1.178 +Check-list -- be sure catch these:
   1.179 +
   1.180 +Pic illustrates matrix mult divider algorithm. 
   1.181 +
   1.182 +Pic illustrate processors created and communication between them.
   1.183 +
   1.184 +How consequence graph features each tie back to features in UCC and to specific segments of code or constructs.
   1.185 +
   1.186 +
   1.187 +Which lang features support model -- units, plus clear constraints on them -- can still do with pthreads, but less effective because don't have clean units nor semantics of constraints on units -- SSR provides these, as do languages like CnC, StarSs, and so on
   1.188 + 
   1.189 +No application instrumentation -- everything is inside language runtime (part in plugin, part in VMS -- VMS is just a helper to simplify runtime creation).
   1.190 +
   1.191 +Pic from VMS paper, with arrows pointing to places instrumentation injected.
   1.192 +
   1.193 +Avoid word "tool" in connection with visualization.. no need to draw attention to fact that we don't have a GUI, the contribution is not a tool, but rather a methodology, and the visualizations are just one element of the methodology
   1.194 +
   1.195 +Semantic information from application-code: The units, constraints on them, type of constraint, code executed in unit
   1.196 +
   1.197 +visual link perf-loss to code, as cause (or perf-loss to runtime or HW)
   1.198 +
   1.199 +visual: units, sched decision on each, hardware assigned to, runtime overhead on each, constraints bounded choice of hardware and order
   1.200 +
   1.201 +constraints color-coded by language-defined type
   1.202 +
   1.203 +visually, performance issue is pattern of either idle time or overhead
   1.204 +Together: visual links to units involved in perf-loss, which links to code-snippet, and to parallelism-construct defining the unit boundary and the construct constraining its scheduling.
   1.205 +
   1.206 +collect info by instrumenting runtime of lang -- do once, works all apps
   1.207 +
   1.208 +ties visual features to app-code segments -- despite app-independent
   1.209 +
   1.210 +Benefit: simple see perf-loss features, simple to link to cause in code, straight-forward to devise a fix.
   1.211 +
   1.212 +visual show unit linked to overhead in runtime to handle the constraints on unit, and choose its assignment to HW.
   1.213 +
   1.214 +Visual: idle of core from comm, NOT comm itself -- Rather than indicate how much time a communication takes, the visualization instead indicates how much idle time is caused on a core as a consequence of that communication.  This is the most useful-to-observe cost, of the communication. It naturally accounts for overlap, and only alerts the person tuning when there is a true cost, when the core idles.
   1.215 +
   1.216 +visual: non-ov comm + work, accounts cache-misses on out-of-order.  The second aspect of communication is the emergent effect of cache misses on computation rate.  As such, the relative size of work-units is visualized, which includes the cost of cache misses, given a shared-memory multi-core machine.
   1.217 +
   1.218 +three prevalent classes of performance loss are clearly displayed by our visualization: runtime overhead (including lock acquisition time), communication cost (both cache misses and runtime internal control communications), and poor scheduling choices (assign work in an order that causes idle time on cores)
   1.219 +
   1.220 +VMS == easy instrument lang -- Properties of VMS make it easy to instrument other languages, so the technique is straight-forward to apply to any VMS-based language.  For UCC, have to make own data struct for lang-specific dependencies.  For units, can be generic and pulled down into VMS.  VMS provides support for the instrumentation -- describe standard things support. Reuse code btwn plugins, for units, and common communication constructs (?)
   1.221  
   1.222   
   1.223 -\end{document}
   1.224 +UCC is application-derived degrees of freedom for picking assignment of work to HW resources.
   1.225 +
   1.226 +N to N construct -- ex of not-dependency but still constraint
   1.227 +
   1.228 +how features indicate performance loss, and link picture elements that indicate perf loss to sources of loss -- could be param choices, like how many pieces to make, or input choices like size of matrix, or code choices, like how to perform division, or scheduling choices, like how to assign work-units to cores.
   1.229 +
   1.230 +show UCC and consqG pics..  point out glaring visual feature that says a big perf loss..  show how links to cause.. and so on..
   1.231  
   1.232  ==============================
   1.233  
   1.234  \section{Random Early Thoughts}
   1.235  
   1.236 -The units are semantic information, the constraints on them are semantic information, the type of constraint is semantic information.  The code executed inside a unit is semantic information.
   1.237 -
   1.238 -UCC shows application-defined constraints on units -- these are the degrees of freedom for picking assignment of work to HW resources.
   1.239 -
   1.240 -When tuning performance, these types of semantic information work together -- they make it easy to spot performance issues (idle time or runtime overhead), and then link information about the code to the issue.  A visualization shows the scheduled units of work, the hardware those units are assigned to, the runtime overhead counted towards each unit, and the constraints that bounded the choice of which hardware and which order to assign the units.  Further, the constraints are color-coded by language-defined type of constraint. Hence, a performance issue appears as a pattern of either idle time or overhead, and the visualization links the units involved, as seen in the visualization, directly to the code-snippet of the unit, and the parallelism-construct that the unit.
   1.241 -
   1.242 -In this paper, we present an approach for collecting this information by instrumenting the runtime of a language that is based on VMS.  The instrumentation is done once for the language, then reused across applications.  Despite being independent of application, it ties specific features in the visualization to specific segments of code, to make it easy to spot performance problems, simple to understand what in the code is causing the problem, and straight-forward to devise a fix for the problem.
   1.243 -
   1.244 -The visualization identifies each unit of work that is scheduled by the runtime, and indicates how much overhead was spent in the runtime to handle the constraints and choose an assignment.
   1.245 -
   1.246 -Rather than indicate how much time a communication takes, the visualization instead indicates how much idle time is caused on a core as a consequence of that communication.  This is the most useful-to-observe cost, of the communication. It naturally accounts for overlap, and only alerts the person tuning when there is a true cost, when the core idles.
   1.247 -
   1.248 -The second aspect of communication is the emergent effect of cache misses on computation rate.  As such, the relative size of work-units is visualized, which includes the cost of cache misses, given a shared-memory multi-core machine.
   1.249 -
   1.250 -Hence, the three prevalent classes of performance loss are clearly displayed by our visualization: runtime overhead (including lock acquisition time), 
   1.251 -
   1.252 -
   1.253 -
   1.254 -Properties of VMS make it easy to instrument other languages, so the technique is straight-forward to apply to any VMS-based language.  For UCC, have to make own data struct for lang-specific dependencies.  For units, can be generic and pulled down into VMS.  VMS provides support for the instrumentation -- describe standard things support.
   1.255 -
   1.256 -Copy-pastable code: identifying units, common communication constructs
   1.257 -
   1.258 -Non-copyable: weird comm-construct (N to N), have to save dependencies correspond to that.
   1.259  
   1.260  Key places in plugin code for instrumentation -- places in the request handler that change state of a VP -- track down in plugin code every place that VP state changes, and put instrumentation there.
   1.261  
   1.262  If have a mutex -- is an acquire and a release -- VP only interacts with sem env, not another VP, but dependencies are between VPs, so have to record the sequence of interactions with semantic environment to establish causality chain (even though it's a runtime causilty chain, not necessarily an app constraint)
   1.263 +
   1.264  For Vthread, no UCC, only consequence graph.
   1.265  
   1.266 -
   1.267 -\subsection{Subsection}
   1.268 -
   1.269 -Text for the first sub-section.
   1.270 -
   1.271 -
   1.272 -\subsection{Subsection}
   1.273 -
   1.274 -Text for the second sub-section.
   1.275 -
   1.276 -\subsubsection{Subsubsection}
   1.277 -Text for the first sub-sub-section.
   1.278 -
   1.279 -\subsubsection{Subsubsection}
   1.280 -Text for the second sub-sub-section.
   1.281 -
   1.282 -
   1.283 -\subsection{Subsection}
   1.284 -
   1.285 -Text for the third sub-section.
   1.286 -
   1.287 -
   1.288 -
   1.289 -\section{Section}
   1.290 -
   1.291 -Text for the second section.
   1.292 -
   1.293 -
   1.294 -
   1.295 -\section{Figures and Tables}
   1.296 -
   1.297 -Text for the third section. This section has figures and tables in it.
   1.298 -
   1.299 -\begin{figure}
   1.300 -\centering
   1.301 -\fbox{figure matter}
   1.302 -\caption{This is the caption for figure \#1. Make sure it goes
   1.303 -        \emph{after} the figure!}
   1.304 -\label{figure1}
   1.305 -\end{figure}
   1.306 -
   1.307 -And more text in this section.
   1.308 -
   1.309 -\begin{table}
   1.310 -\caption{This is the caption for table \#1. Make sure it goes
   1.311 -\emph{before} the table!}
   1.312 -\label{table1}
   1.313 -\centering
   1.314 -table matter
   1.315 -\end{table}
   1.316 -
   1.317 -Figure and table references: \figref{figure1}, \tabref{table1}. Use
   1.318 -these at the beginning and within a sentence.
   1.319 -
   1.320 -Much better is to use the Figure and Table environments, which will
   1.321 -take care of placing the caption correctly for you. See
   1.322 -\fref{figurelabel} and \tref{tablelabel}.
   1.323 -
   1.324 -Using the Figure environment:
   1.325 -\begin{Figure}[h]{figurelabel}% <- don't forget this percent!
   1.326 -        {Caption for figure, Figure environment.}
   1.327 -\fbox{The figure matter goes here.}
   1.328 -\end{Figure}
   1.329 -
   1.330 -text
   1.331 -
   1.332 -Using the Table environment:
   1.333 -\begin{Table}{tablelabel}% <- don't forget this percent!
   1.334 -        {Caption for table, Table environment.}
   1.335 -\fbox{The table matter goes here.}
   1.336 -\end{Table}
   1.337 -
   1.338 -And more text in this section.
   1.339 -And more text in this section.
   1.340 -And more text in this section.
   1.341 -And more text in this section.
   1.342 -And more text in this section.
   1.343 -
   1.344 -
   1.345 -
   1.346 -\section{Equations}
   1.347 -
   1.348 -Referencing equations: \equref{equation1} for whatever.
   1.349 -\Equref{equation1} at the beginning of a sentence. 
   1.350 -%
   1.351 -\begin{equation}
   1.352 -equation
   1.353 -\label{equation1}
   1.354 -\end{equation}
   1.355 -%
   1.356 -text
   1.357 -
   1.358 -
   1.359 -
   1.360 -\bibliography{FilenameOfYourBibliography}
   1.361 -
   1.362 -
   1.363 -
   1.364 -\section{Test of Biographies}
   1.365 -
   1.366 -text
   1.367 -
   1.368 -\begin{biography}{Author 1}[0mm]{file.eps}
   1.369 -
   1.370 -\end{biography}
   1.371 -
   1.372 -
   1.373 -\end{document}
   1.374 -
   1.375 -?
   1.376 +Can apply this model to pthreads, but UCC has no useful info because units of work are not well defined -- they are instead defined in the application code -- application normally implementes an application-specific runtime as part of app -- mutexes and cond variables force adding application-related work-unit semantics to the application, in effect creating an application-specific language, via implementing an application-specific runtime.  That semantic information is not available to the pthreads language, and so is not capturable in a pthreads derived UCC. -- picture illustrates runtime, which embodies language construct semantics -- how SSR has two levels, but pthreads has three..
   1.377  
   1.378  =============
   1.379 +What's broken in others:
   1.380  
   1.381   the   or have cache misses over time, but never have a coherent view of how application code connects to what happens where and when. 
   1.382  
   1.383 @@ -875,20 +792,35 @@
   1.384  The problem of the other vis is they don't give shape of application..
   1.385   the fundamental parallelism related structure.
   1.386  
   1.387 -===================
   1.388 -
   1.389 -
   1.390 -
   1.391 -as well as which choices on them are allowed, and which were actually taken. Finally, 
   1.392 -
   1.393 -the application-imposed constraints on scheduling them, the hardware-imposed constraints on scheduling them, and the runtime-implementation imposed constraints on scheduling them. 
   1.394 -
   1.395 - Scheduling is a fundamental part of parallel execution. The views must include both constraints on scheduling and the actual scheduling choices. The parts that affect what scheduling choices are possible must connect to the parts that show which ones were taken.
   1.396  
   1.397  to have more theoretical underpinning and several views that connect to each other. The user needs more information, with some mental framework to 
   1.398  
   1.399  a lot of the time it's lists of measurements, or bar graphs, things like that -- over the whole application or by function -- forcing guessing of how it connects to -- if it tells you that this line creates a lot of level 2 cache misses, that doesn't tell you what the application is doing to cause this.. but when have whole UCC along with it, have context for the measurements -- puts the line of code into a framework -- it's necessary but not useful by itself -- it needs to be connected -- the unit information is more interesting than the line of code information -- line of code has only sequential meaning, missing scheduling connection -- need the scheduling behavior added -- need to know the unit of work that's causing problem, not the line of code -- unit provides a parallelism context, line of code does not.. unit provides an execution order and execution location, with implied communication -- line of code does not.
   1.400  
   1.401 +===================
   1.402 +
   1.403 +Perf bounded by: the application-imposed constraints on scheduling units, the hardware-imposed constraints on scheduling them, and the runtime-implementation imposed constraints on scheduling them. 
   1.404 +
   1.405 +
   1.406 +Par Comp Model:  Scheduling is a fundamental part of parallel execution. The views must include both constraints on scheduling and the actual scheduling choices. The parts that affect what scheduling choices are possible must connect to the parts that show which ones were taken.
   1.407 +
   1.408 +
   1.409 +==========  Table ref, figure environment, table environment
   1.410 + \tabref{table1}.
   1.411 + 
   1.412 +Using the Figure environment:
   1.413 +\begin{Figure}[h]{figurelabel}% <- don't forget this percent!
   1.414 +        {Caption for figure, Figure environment.}
   1.415 +\fbox{The figure matter goes here.}
   1.416 +\end{Figure}
   1.417 +
   1.418 +Table environment:
   1.419 +\begin{Table}{tablelabel}% <- don't forget this percent!
   1.420 +        {Caption for table, Table environment.}
   1.421 +\fbox{The table matter goes here.}
   1.422 +\end{Table}
   1.423 +
   1.424 +
   1.425  %%
   1.426  %% EOF ieeepes_skel.tex
   1.427  %%----------------------------------------------------------------------
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/CVs/12_Ap__Euro_Fellowship_CV/bib_for_papers_apr_2012.bib	Fri May 04 05:26:00 2012 -0700
     2.3 @@ -0,0 +1,916 @@
     2.4 +@techrep{SyncConstr_impl_w_distr_coherence_HW_Utah_96,
     2.5 +	author = {Carter, J. B. and Kuo, C.-C. and Kuramkote, R.},
     2.6 +	title = { A comparison of software and hardware synchronization mechanisms for distributed shared memory multiprocessors},
     2.7 +	institution = {University of Utah, Salt Lake City, UT},
     2.8 +	year = 1996,
     2.9 +	url = {http://www.cs.utah.edu/research/techreports/1996/pdf/UUCS-96-011.pdf},
    2.10 +	number = {UUCS-96-011}
    2.11 +}
    2.12 +@Article{SWCoherence_Hill_SW_for_shared_coherence_w_HW_support_93,
    2.13 +	author = {Hill, Mark D. and Larus, James R. and Reinhardt, Steven K. and Wood, David A.},
    2.14 +	title = {Cooperative shared memory: software and hardware for scalable multiprocessors},
    2.15 +	journal = {ACM Trans. Comput. Syst.},
    2.16 +	volume = 11,
    2.17 +	number = 4,
    2.18 +	year = 1993,
    2.19 +	pages = {300--318}
    2.20 +}
    2.21 +@InProceedings{SWCache_MIT_embedSW_manages_cache_w_HW_supp,
    2.22 +	author = {Chiou, Derek and Jain, Prabhat and Rudolph, Larry and Devadas, Srinivas},
    2.23 +	title = {Application-specific memory management for embedded systems using software-controlled caches},
    2.24 +	booktitle = {DAC},
    2.25 +	year = 2000,
    2.26 +	pages = {416--419}
    2.27 +}
    2.28 +@InProceedings{SWCache_instr_trig_HW_supp_04,
    2.29 +	author = {Janapsatya, Andhi and Parameswaran, Sri and Ignjatovic, A.},
    2.30 +	title = {Hardware/software managed scratchpad memory for embedded system},
    2.31 +	booktitle = {Proceedings of the 2004 IEEE/ACM International conference on Computer-aided design},
    2.32 +	series = {ICCAD '04},
    2.33 +	year = 2004,
    2.34 +	pages = {370--377}
    2.35 +}
    2.36 +@InProceedings{SWCache_arch_supp_OS_policy_06,
    2.37 +	author = {Rafique, Nauman and Lim, Won-Taek and Thottethodi, Mithuna},
    2.38 +	title = {Architectural support for operating system-driven CMP cache management},
    2.39 +	booktitle = {Proceedings of the 15th international conference on Parallel architectures and compilation techniques},
    2.40 +	series = {PACT '06},
    2.41 +	year = 2006,
    2.42 +	pages = {2--12}
    2.43 +}
    2.44 +@InProceedings{SWCoherence_on_Distr_Mem_90,
    2.45 +	author = {Bennett, J.K. and Carter, J.B. and Zwaenepoel, W.},
    2.46 +	booktitle = {Computer Architecture, 1990. Proceedings., 17th Annual International Symposium on},
    2.47 +	title = {Adaptive software cache management for distributed shared memory architectures},
    2.48 +	year = 1990,
    2.49 +	pages = {125 -134}
    2.50 +}
    2.51 +@InProceedings{Charm_runtime_opt_10,
    2.52 +	author = {Mei, Chao and Zheng, Gengbin and Gioachin, Filippo and Kal{\'e}, Laxmikant V.},
    2.53 +	title = {Optimizing a parallel runtime system for multicore clusters: a case study},
    2.54 +	booktitle = {The 2010 TeraGrid Conference},
    2.55 +	year = 2010,
    2.56 +	pages = {12:1--12:8}
    2.57 +}
    2.58 +@InProceedings{TCC_Hammond_ISCA_04,
    2.59 +	author = {Hammond, Lance and al, et},
    2.60 +	title = {Transactional Memory Coherence and Consistency},
    2.61 +	series = {ISCA '04},
    2.62 +	pages = {102--},
    2.63 +	booktitle = {},
    2.64 +	year = {}
    2.65 +}
    2.66 +@Misc{WorkTableHome,
    2.67 +	author = {Halle, Sean},
    2.68 +	note = {http://musictwodotoh.com/worktable/content/refman.pdf},
    2.69 +	title = {The WorkTable Language Reference Manual},
    2.70 +	year = 2012
    2.71 +}
    2.72 +@Misc{HWSimHome,
    2.73 +	author = {Halle, Sean and Hausers, Stefan},
    2.74 +	note = {http://musictwodotoh.com/hwsim/content/refman.pdf},
    2.75 +	title = {The HWSim Language Reference Manual},
    2.76 +	year = 2012
    2.77 +}
    2.78 +@Article{Lamport78,
    2.79 +	author = {Lamport, Leslie},
    2.80 +	title = {Time, clocks, and the ordering of events in a distributed system},
    2.81 +	journal = {Commun. ACM},
    2.82 +	volume = 21,
    2.83 +	issue = 7,
    2.84 +	year = 1978,
    2.85 +	pages = {558--565}
    2.86 +}
    2.87 +@Article{Lamport87,
    2.88 +	author = {Lamport, Leslie},
    2.89 +	title = {A fast mutual exclusion algorithm},
    2.90 +	journal = {ACM Trans. Comput. Syst.},
    2.91 +	volume = 5,
    2.92 +	issue = 1,
    2.93 +	year = 1987,
    2.94 +	pages = {1--11}
    2.95 +}
    2.96 +@InProceedings{Dijkstra67,
    2.97 +	author = {Dijkstra, Edsger W.},
    2.98 +	title = {The structure of the "{THE}"-multiprogramming system},
    2.99 +	booktitle = {Proceedings of the first ACM symposium on Operating System Principles},
   2.100 +	series = {SOSP '67},
   2.101 +	year = 1967,
   2.102 +	pages = {10.1--10.6}
   2.103 +}
   2.104 +@Article{Conway63,
   2.105 +	author = {Conway, Melvin E.},
   2.106 +	title = {Design of a separable transition-diagram compiler},
   2.107 +	journal = {Commun. ACM},
   2.108 +	volume = 6,
   2.109 +	issue = 7,
   2.110 +	year = 1963,
   2.111 +	pages = {396--408}
   2.112 +}
   2.113 +@Book{ComponentModel00,
   2.114 +	author = {G Leavens and M Sitaraman (eds)},
   2.115 +	title = {Foundations of Component-Based Systems},
   2.116 +	publisher = {Cambridge University Press},
   2.117 +	year = 2000
   2.118 +}
   2.119 +@Misc{Hewitt10,
   2.120 +	author = {Carl Hewitt},
   2.121 +	title = {Actor Model of Computation},
   2.122 +	year = 2010,
   2.123 +	note = {http://arxiv.org/abs/1008.1459}
   2.124 +}
   2.125 +@Article{Actors97,
   2.126 +	author = {Agha,G. and Mason,I. and Smith,S. and Talcott,C.},
   2.127 +	title = {A foundation for actor computation},
   2.128 +	journal = {Journal of Functional Programming},
   2.129 +	volume = 7,
   2.130 +	number = 01,
   2.131 +	pages = {1-72},
   2.132 +	year = 1997
   2.133 +}
   2.134 +@Article{SchedActivations,
   2.135 +	author = {Anderson, Thomas E. and Bershad, Brian N. and Lazowska, Edward D. and Levy, Henry M.},
   2.136 +	title = {Scheduler activations: effective kernel support for the user-level management of parallelism},
   2.137 +	journal = {ACM Trans. Comput. Syst.},
   2.138 +	volume = 10,
   2.139 +	issue = 1,
   2.140 +	month = {February},
   2.141 +	year = 1992,
   2.142 +	pages = {53--79}
   2.143 +}
   2.144 +@InProceedings{BOMinManticore,
   2.145 +	author = {Fluet, Matthew and Rainey, Mike and Reppy, John and Shaw, Adam and Xiao, Yingqi},
   2.146 +	title = {Manticore: a heterogeneous parallel language},
   2.147 +	booktitle = {Proceedings of the 2007 workshop on Declarative aspects of multicore programming},
   2.148 +	series = {DAMP '07},
   2.149 +	year = 2007,
   2.150 +	pages = {37--44},
   2.151 +	numpages = 8
   2.152 +}
   2.153 +@TechReport{Halle_GainFromChaos_TechRep,
   2.154 +	author = {Halle, K.S. and Chua, Leon O. and Anishchenko, V.S. and Safonova, M.A.},
   2.155 +	title = {Signal Amplification via Chaos: Experimental Evidence},
   2.156 +	institution = {EECS Department, University of California, Berkeley},
   2.157 +	year = 1992,
   2.158 +	url = {http://www.eecs.berkeley.edu/Pubs/TechRpts/1992/2223.html},
   2.159 +	number = {UCB/ERL M92/130}
   2.160 +}
   2.161 +@Article{Halle_GainFromChaos_pub,
   2.162 +	author = {K.S. Halle and Leon O. Chua and V.S. Anishchenko and M.A. Safonova},
   2.163 +	title = {Signal Amplification via Chaos: Experimental Evidence},
   2.164 +	journal = {Int. J. of Bifurcation and Chaos },
   2.165 +	pages = {290-308},
   2.166 +	year = 1993
   2.167 +}
   2.168 +@Article{Halle_SpreadSpect_pub,
   2.169 +	author = {K.S. Halle and C.W. Wu and M. Itoh and L. O. Chua},
   2.170 +	title = {Spread Spectrum Communication Through Modulation of Chaos},
   2.171 +	journal = {Int. J. of Bifurcation and Chaos },
   2.172 +	pages = {469-477},
   2.173 +	year = 1993,
   2.174 +	note = {cited by 232}
   2.175 +}
   2.176 +@Article{Halle_Secure_pub,
   2.177 +	author = {V. Kocarev and K.S. Halle and K. Eckert and L. O. Chua and V. Parlitz},
   2.178 +	title = {Experimental Demonstration of Secure Communications Via Chaotic Synchronization},
   2.179 +	journal = {Int. J. of Bifurcation and Chaos },
   2.180 +	pages = {709-713},
   2.181 +	year = 1992,
   2.182 +	note = {cited by 457}
   2.183 +}
   2.184 +@InProceedings{HotPar10_w_BLIS,
   2.185 +	author = {Sean Halle and Albert Cohen},
   2.186 +	booktitle = {HOTPAR '10: USENIX Workshop on Hot Topics in Parallelism},
   2.187 +	month = {June},
   2.188 +	title = {Leveraging Semantics Attached to Function Calls to Isolate Applications from Hardware},
   2.189 +	year = 2010
   2.190 +}
   2.191 +@InProceedings{HotPar11_w_Stack,
   2.192 +	author = {Sean Halle and Albert Cohen},
   2.193 +	booktitle = {HOTPAR '11: USENIX Workshop on Hot Topics in Parallelism},
   2.194 +	month = {May},
   2.195 +	title = {Support of Collective Effort Towards Performance Portability},
   2.196 +	year = 2011
   2.197 +}
   2.198 +@Article{VMS_LCPC_11,
   2.199 +	author = {Sean Halle and Albert Cohen},
   2.200 +	title = {A Mutable Hardware Abstraction to Replace Threads},
   2.201 +	journal = {24th International Workshop on Languages and Compilers for Parallel Languages (LCPC11)},
   2.202 +	year = 2011
   2.203 +}
   2.204 +@Misc{StackTechRep_10,
   2.205 +	author = {Halle, Sean and Nadezhkin, Dmitry and Cohen, Albert},
   2.206 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2010/ucsc-soe-10-02.pdf},
   2.207 +	title = {A Framework to Support Research on Portable High Performance Parallelism},
   2.208 +	year = 2010
   2.209 +}
   2.210 +@Misc{CTBigStepSemTechRep_06,
   2.211 +	author = {Halle, Sean},
   2.212 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-11.pdf},
   2.213 +	title = {The Big-Step Operational Semantics of CodeTime Circuits},
   2.214 +	year = 2006
   2.215 +}
   2.216 +@Misc{MentalFrameworkTechRep_06,
   2.217 +	author = {Halle, Sean},
   2.218 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-12.pdf},
   2.219 +	title = {A Mental Framework for use in Creating Hardware Independent Parallel Languages},
   2.220 +	year = 2006
   2.221 +}
   2.222 +@Misc{DKUTechRep_09,
   2.223 +	author = {Halle, Sean and Cohen, Albert},
   2.224 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2009/ucsc-soe-09-06.pdf},
   2.225 +	title = {DKU Pattern for Performance Portable Parallel Software},
   2.226 +	year = 2009
   2.227 +}
   2.228 +@Misc{EQNLangTechRep,
   2.229 +	author = {Halle, Sean},
   2.230 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2009/ucsc-soe-09-16.pdf},
   2.231 +	title = {An Extensible Parallel Language},
   2.232 +	year = 2009
   2.233 +}
   2.234 +@Misc{CTOSTechRep,
   2.235 +	author = {Halle, Sean},
   2.236 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2009/ucsc-soe-09-15.pdf},
   2.237 +	title = {A Hardware-Independent Parallel Operating System Abstraction Layer for Parallelism},
   2.238 +	year = 2009
   2.239 +}
   2.240 +@Misc{SideEffectsTechRep,
   2.241 +	author = {Halle, Sean and Cohen, Albert},
   2.242 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2009/ucsc-soe-09-14.pdf},
   2.243 +	title = {Parallel Language Extensions for Side Effects},
   2.244 +	year = 2009
   2.245 +}
   2.246 +@Misc{BaCTiLTechRep,
   2.247 +	author = {Halle, Sean},
   2.248 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-08.pdf},
   2.249 +	title = {BaCTiL: Base CodeTime Language},
   2.250 +	year = 2006
   2.251 +}
   2.252 +@Misc{CTPlatformTechRep,
   2.253 +	author = {Halle, Sean},
   2.254 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-09.pdf},
   2.255 +	title = {The Elements of the CodeTime Software Platform},
   2.256 +	year = 2006
   2.257 +}
   2.258 +@Misc{CTRTTechRep,
   2.259 +	author = {Halle, Sean},
   2.260 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-10.pdf},
   2.261 +	title = {A Scalable and Efficient Peer-to-Peer Run-Time System for a Hardware Independent Software Platform},
   2.262 +	year = 2006
   2.263 +}
   2.264 +@Misc{CIPTechRep,
   2.265 +	author = {Halle, Sean},
   2.266 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2005/ucsc-crl-05-05.pdf},
   2.267 +	title = {The Case for an Integrated Software Platform for {HEC} Illustrated Using the CodeTime Platform},
   2.268 +	year = 2005
   2.269 +}
   2.270 +@Misc{DKU_Infra_site,
   2.271 +	author = {Sean Halle and Albert Cohen},
   2.272 +	note = {http://omp.musictwodotoh.com},
   2.273 +	title = {{DKU} infrastructure server}
   2.274 +}
   2.275 +@Misc{DKUSourceForge,
   2.276 +	author = {Sean Halle and Albert Cohen},
   2.277 +	month = {November},
   2.278 +	note = {http://dku.sourceforge.net},
   2.279 +	title = {{DKU} website},
   2.280 +	year = 2008
   2.281 +}
   2.282 +@Misc{BLISHome,
   2.283 +	author = {Sean Halle and Albert Cohen},
   2.284 +	month = {November},
   2.285 +	note = {http://blisplatform.sourceforge.net},
   2.286 +	title = {{BLIS} website},
   2.287 +	year = 2008
   2.288 +}
   2.289 +@Misc{VMSHome,
   2.290 +	author = {Sean Halle and Merten Sach and Ben Juurlink and Albert Cohen},
   2.291 +	note = {http://virtualizedmasterslave.org},
   2.292 +	title = {{VMS} Home Page},
   2.293 +	year = 2010
   2.294 +}
   2.295 +@Misc{PStackHome,
   2.296 +	author = {Sean Halle},
   2.297 +	note = {http://pstack.sourceforge.net},
   2.298 +	title = {{PStack} Home Page -- A Software Stack for Performantly Portable Parallelism},
   2.299 +	year = 2012
   2.300 +}
   2.301 +@Misc{DeblockingCode,
   2.302 +	note = {http://dku.svn.sourceforge.net/viewvc/dku/branches/DKU\_C\_\_Deblocking\_\_orig/},
   2.303 +	title = {{DKU-ized Deblocking Filter} code}
   2.304 +}
   2.305 +@Misc{SampleBLISCode,
   2.306 +	note = {http://dku.sourceforge.net/SampleCode.htm},
   2.307 +	title = {{Sample BLIS Code}}
   2.308 +}
   2.309 +@Misc{OMPHome,
   2.310 +	note = {http://www.openmediaplatform.eu/},
   2.311 +	title = {{Open Media Platform} homepage}
   2.312 +}
   2.313 +@Misc{MapReduceHome,
   2.314 +	author = {Google Corp.},
   2.315 +	note = {http://labs.google.com/papers/mapreduce.html},
   2.316 +	title = {{MapReduce} Home page}
   2.317 +}
   2.318 +@Misc{TBBHome,
   2.319 +	author = {Intel Corp.},
   2.320 +	note = {http://www.threadingbuildingblocks.org},
   2.321 +	title = {{TBB} Home page}
   2.322 +}
   2.323 +@Misc{HPFWikipedia,
   2.324 +	author = {Wikipedia},
   2.325 +	note = {http://en.wikipedia.org/wiki/High_Performance_Fortran},
   2.326 +	title = {{HPF} wikipedia page}
   2.327 +}
   2.328 +@Misc{OpenMPHome,
   2.329 +	author = {{OpenMP} organization},
   2.330 +	note = {http://www.openmp.org},
   2.331 +	title = {{OpenMP} Home page}
   2.332 +}
   2.333 +@Misc{MPIHome,
   2.334 +	author = {open-mpi organization},
   2.335 +	note = {http://www.open-mpi.org},
   2.336 +	title = {{Open MPI} Home page}
   2.337 +}
   2.338 +@Misc{OpenCLHome,
   2.339 +	author = {Kronos Group},
   2.340 +	note = {http://www.khronos.org/opencl},
   2.341 +	title = {{OpenCL} Home page}
   2.342 +}
   2.343 +@Misc{CILKHome,
   2.344 +	author = {Cilk group at MIT},
   2.345 +	note = {http://supertech.csail.mit.edu/cilk/},
   2.346 +	title = {{CILK} homepage}
   2.347 +}
   2.348 +@InProceedings{Fri98,
   2.349 +	author = {M. Frigo and C. E. Leiserson and K. H. Randall},
   2.350 +	title = {The Implementation of the Cilk-5 Multithreaded Language},
   2.351 +	booktitle = {PLDI '98: Proceedings of the 1998 ACM SIGPLAN conference on Programming language design and implementation},
   2.352 +	pages = {212--223},
   2.353 +	year = 1998,
   2.354 +	address = {Montreal, Quebec},
   2.355 +	month = jun
   2.356 +}
   2.357 +@Misc{TitaniumHome,
   2.358 +	note = {http://titanium.cs.berkeley.edu},
   2.359 +	title = {{Titanium} homepage}
   2.360 +}
   2.361 +@InProceedings{CnCInHotPar,
   2.362 +	author = {Knobe, Kathleen},
   2.363 +	booktitle = {HOTPAR '09: USENIX Workshop on Hot Topics in Parallelism},
   2.364 +	title = {Ease of Use with Concurrent Collections {(CnC)}},
   2.365 +	year = 2009
   2.366 +}
   2.367 +@Misc{CnCHome,
   2.368 +	author = {Intel Corp.},
   2.369 +	note = {http://software.intel.com/en-us/articles/intel-concurrent-collections-for-cc/},
   2.370 +	title = {{CnC} homepage}
   2.371 +}
   2.372 +@Misc{SpiralHome,
   2.373 +	author = {Spiral Group at CMU},
   2.374 +	note = {http://www.spiral.net},
   2.375 +	title = {{Spiral} homepage}
   2.376 +}
   2.377 +@Misc{ScalaHome,
   2.378 +	author = {Scala organization},
   2.379 +	note = {http://www.scala-lang.org/},
   2.380 +	title = {{Scala} homepage}
   2.381 +}
   2.382 +@Misc{UPCHome,
   2.383 +	author = {UPC group at UC Berkeley},
   2.384 +	note = {http://upc.lbl.gov/},
   2.385 +	title = {{Unified Parallel C} homepage}
   2.386 +}
   2.387 +@Misc{SuifHome,
   2.388 +	note = {http://suif.stanford.edu},
   2.389 +	title = {{Suif} Parallelizing compiler homepage}
   2.390 +}
   2.391 +@Article{SEJITS,
   2.392 +	author = {B. Catanzaro and S. Kamil and Y. Lee and K. Asanovic and J. Demmel and K. Keutzer and J. Shalf and K. Yelick and A. Fox},
   2.393 +	title = {SEJITS: Getting Productivity AND Performance With Selective Embedded JIT Specialization},
   2.394 +	journal = {First Workshop on Programmable Models for Emerging Architecture at the 18th International Conference on Parallel Architectures and Compilation Techniques },
   2.395 +	year = 2009
   2.396 +}
   2.397 +@InProceedings{Arnaldo3D,
   2.398 +	author = {Azevedo, Arnaldo and Meenderinck, Cor and Juurlink, Ben and Terechko, Andrei and Hoogerbrugge, Jan and Alvarez, Mauricio and Ramirez, Alex},
   2.399 +	title = {Parallel H.264 Decoding on an Embedded Multicore Processor},
   2.400 +	booktitle = {HiPEAC '09: Proceedings of the 4th International Conference on High Performance Embedded Architectures and Compilers},
   2.401 +	year = 2009,
   2.402 +	pages = {404--418}
   2.403 +}
   2.404 +@Article{NarayananGPUSched,
   2.405 +	author = {Narayanan Sundaram and Anand Raghunathan and Srimat T. Chakradhar},
   2.406 +	title = {A framework for efficient and scalable execution of domain-specific templates on GPUs},
   2.407 +	journal = {International Parallel and Distributed Processing Symposium {(IPDPS)}},
   2.408 +	year = 2009,
   2.409 +	pages = {1-12}
   2.410 +}
   2.411 +@InProceedings{PolyForGPU,
   2.412 +	author = {Baskaran, Muthu Manikandan and Bondhugula, Uday and Krishnamoorthy, Sriram and Ramanujam, J. and Rountev, Atanas and Sadayappan, P.},
   2.413 +	title = {A compiler framework for optimization of affine loop nests for gpgpus},
   2.414 +	booktitle = {ICS '08: Proceedings of the 22nd annual international conference on Supercomputing},
   2.415 +	year = 2008,
   2.416 +	pages = {225--234}
   2.417 +}
   2.418 +@InProceedings{Loulou08,
   2.419 +	author = {Pouchet, Louis-No\"{e}l and Bastoul, C\'{e}dric and Cohen, Albert and Cavazos, John},
   2.420 +	title = {Iterative optimization in the polyhedral model: part ii, multidimensional time},
   2.421 +	booktitle = {ACM SIGPLAN conference on Programming language design and implementation {(PLDI)} },
   2.422 +	year = 2008,
   2.423 +	pages = {90--100}
   2.424 +}
   2.425 +@InProceedings{MergeInHotPar,
   2.426 +	author = {Michael D. Linderman and James Balfour and Teresa H. Meng and William J. Dally},
   2.427 +	booktitle = {HOTPAR '09: USENIX Workshop on Hot Topics in Parallelism},
   2.428 +	month = {March},
   2.429 +	title = {Embracing Heterogeneity \- Parallel Programming for Changing Hardware},
   2.430 +	year = 2009
   2.431 +}
   2.432 +@InProceedings{GaloisRef,
   2.433 +	author = {Kulkarni, Milind and Pingali, Keshav and Walter, Bruce and Ramanarayanan, Ganesh and Bala, Kavita and Chew, L. Paul},
   2.434 +	title = {Optimistic parallelism requires abstractions},
   2.435 +	booktitle = {PLDI '07: Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation},
   2.436 +	year = 2007,
   2.437 +	pages = {211--222}
   2.438 +}
   2.439 +@Book{Allen2002,
   2.440 +	author = {Kennedy, Ken and Allen, John R.},
   2.441 +	title = {Optimizing compilers for modern architectures: a dependence-based approach},
   2.442 +	year = 2002,
   2.443 +	publisher = {Morgan Kaufmann Publishers Inc.}
   2.444 +}
   2.445 +@Misc{Stephens95,
   2.446 +	author = {R. Stephens},
   2.447 +	title = {A Survey Of Stream Processing},
   2.448 +	year = 1995
   2.449 +}
   2.450 +@InProceedings{Palatin06,
   2.451 +	author = {P Palatin and Y Lhuillier and O Temam},
   2.452 +	title = {CAPSULE: Hardware-assisted parallel execution of componentbased programs},
   2.453 +	booktitle = {In Proceedings of the 39th Annual International Symposium on Microarchitecture},
   2.454 +	year = 2006,
   2.455 +	pages = {247--258}
   2.456 +}
   2.457 +@InProceedings{Sequioa06,
   2.458 +	author = {Fatahalian,, Kayvon and Horn,, Daniel Reiter and Knight,, Timothy J. and Leem,, Larkhoon and Houston,, Mike and Park,, Ji Young and Erez,, Mattan and Ren,, Manman and Aiken,, Alex and Dally,, William J. and Hanrahan,, Pat},
   2.459 +	title = {Sequoia: programming the memory hierarchy},
   2.460 +	booktitle = {SC '06: Proceedings of the 2006 ACM/IEEE conference on Supercomputing},
   2.461 +	year = 2006,
   2.462 +	pages = 83
   2.463 +}
   2.464 +@Book{Cole89,
   2.465 +	author = {M Cole},
   2.466 +	title = {Algorithmic skeletons: Structured management of parallel computation},
   2.467 +	publisher = {Pitman},
   2.468 +	year = 1989
   2.469 +}
   2.470 +@InProceedings{Ginhac98,
   2.471 +	author = {Dominique Ginhac and Jocelyn Serot and Jean Pierre Derutin},
   2.472 +	title = {Fast prototyping of image processing applications using functional skeletons on a MIMD-DM architecture},
   2.473 +	booktitle = {In IAPR Workshop on Machine Vision and Applications},
   2.474 +	year = 1998,
   2.475 +	pages = {468--471}
   2.476 +}
   2.477 +@InProceedings{Serot08MetaParallel,
   2.478 +	author = {Serot, Jocelyn and Falcou, Joel},
   2.479 +	title = {Functional Meta-programming for Parallel Skeletons},
   2.480 +	booktitle = {ICCS '08: Proceedings of the 8th international conference on Computational Science, Part I},
   2.481 +	year = 2008,
   2.482 +	pages = {154--163}
   2.483 +}
   2.484 +@InProceedings{Darlington93,
   2.485 +	author = {J. Darlington and A. J. Field and P. G. Harrison and P. H. J. Kelly and D. W. N. Sharp and Q. Wu},
   2.486 +	title = {Parallel programming using skeleton functions},
   2.487 +	booktitle = {},
   2.488 +	year = 1993,
   2.489 +	pages = {146--160},
   2.490 +	publisher = {Springer-Verlag}
   2.491 +}
   2.492 +@Article{Asanovic06BerkeleyView,
   2.493 +	title = {{The landscape of parallel computing research: A view from berkeley}},
   2.494 +	author = {Asanovic, K. and Bodik, R. and Catanzaro, B.C. and Gebis, J.J. and Husbands, P. and Keutzer, K. and Patterson, D.A. and Plishker, W.L. and Shalf, J. and Williams, S.W. and others},
   2.495 +	journal = {Electrical Engineering and Computer Sciences, University of California at Berkeley, Technical Report No. UCB/EECS-2006-183, December},
   2.496 +	volume = 18,
   2.497 +	number = {2006-183},
   2.498 +	pages = 19,
   2.499 +	year = 2006
   2.500 +}
   2.501 +@Misc{BerkeleyPattLang,
   2.502 +	note = {http://parlab.eecs.berkeley.edu/wiki/patterns},
   2.503 +	title = {{Berkeley Pattern Language}}
   2.504 +}
   2.505 +@Book{Mattson04Patterns,
   2.506 +	title = {{Patterns for parallel programming}},
   2.507 +	author = {Mattson, T. and Sanders, B. and Massingill, B.},
   2.508 +	year = 2004,
   2.509 +	publisher = {Addison-Wesley Professional}
   2.510 +}
   2.511 +@Article{Skillicorn98,
   2.512 +	title = {{Models and languages for parallel computation}},
   2.513 +	author = {Skillicorn, D.B. and Talia, D.},
   2.514 +	journal = {ACM Computing Surveys (CSUR)},
   2.515 +	volume = 30,
   2.516 +	number = 2,
   2.517 +	pages = {123--169},
   2.518 +	year = 1998
   2.519 +}
   2.520 +@Conference{Blelloch93NESL,
   2.521 +	title = {{Implementation of a portable nested data-parallel language}},
   2.522 +	author = {Blelloch, G.E. and Hardwick, J.C. and Chatterjee, S. and Sipelstein, J. and Zagha, M.},
   2.523 +	booktitle = {Proceedings of the fourth ACM SIGPLAN symposium on Principles and practice of parallel programming},
   2.524 +	pages = {102--111},
   2.525 +	year = 1993,
   2.526 +	organization = {ACM New York, NY, USA}
   2.527 +}
   2.528 +@Article{McgrawSisal,
   2.529 +	title = {{SISAL: Streams and iteration in a single assignment language: Reference manual version 1.2}},
   2.530 +	author = {McGraw, J. and Skedzielewski, SK and Allan, SJ and Oldehoeft, RR and Glauert, J. and Kirkham, C. and Noyce, B. and Thomas, R.},
   2.531 +	journal = {Manual M-146, Rev},
   2.532 +	volume = 1
   2.533 +}
   2.534 +@Article{Gelernter85Linda,
   2.535 +	title = {{Generative communication in Linda}},
   2.536 +	author = {Gelernter, D.},
   2.537 +	journal = {ACM Transactions on Programming Languages and Systems (TOPLAS)},
   2.538 +	volume = 7,
   2.539 +	number = 1,
   2.540 +	pages = {80--112},
   2.541 +	year = 1985
   2.542 +}
   2.543 +@Article{Lin94ZPL,
   2.544 +	title = {{ZPL: An array sublanguage}},
   2.545 +	author = {Lin, C. and Snyder, L.},
   2.546 +	journal = {Lecture Notes in Computer Science},
   2.547 +	volume = 768,
   2.548 +	pages = {96--114},
   2.549 +	year = 1994
   2.550 +}
   2.551 +@Article{baecker97,
   2.552 +	author = {Ron Baecker and Chris DiGiano and Aaron Marcus},
   2.553 +	title = {Software visualization for debugging},
   2.554 +	journal = {Communications of the ACM},
   2.555 +	volume = 40,
   2.556 +	number = 4,
   2.557 +	year = 1997,
   2.558 +	issn = {0001-0782},
   2.559 +	pages = {44--54},
   2.560 +	publisher = {ACM Press}
   2.561 +}
   2.562 +@Article{ball96,
   2.563 +	author = {T. A. Ball and S. G. Eick},
   2.564 +	title = {Software Visualization in the Large},
   2.565 +	journal = {IEEE Computer},
   2.566 +	volume = 29,
   2.567 +	number = 4,
   2.568 +	year = 1996,
   2.569 +	month = {apr},
   2.570 +	pages = {33--43}
   2.571 +}
   2.572 +@Book{berry89,
   2.573 +	title = {{The chemical abstract machine}},
   2.574 +	author = {Berry, G. and Boudol, G.},
   2.575 +	year = 1989,
   2.576 +	publisher = {ACM Press}
   2.577 +}
   2.578 +@Article{blumofe95,
   2.579 +	author = {Robert D. Blumofe and Christopher F. Joerg and Bradley C. Kuszmaul and Charles E. Leiserson and Keith H. Randall and Yuli Zhou},
   2.580 +	title = {Cilk: an efficient multithreaded runtime system},
   2.581 +	journal = {SIGPLAN Not.},
   2.582 +	volume = 30,
   2.583 +	number = 8,
   2.584 +	year = 1995,
   2.585 +	pages = {207--216}
   2.586 +}
   2.587 +@Article{burch90,
   2.588 +	title = {{Symbolic model checking: 10^{20} states and beyond}},
   2.589 +	author = {Burch, JR and Clarke, EM and McMillan, KL and Dill, DL and Hwang, LJ},
   2.590 +	journal = {Logic in Computer Science, 1990. LICS'90, Proceedings},
   2.591 +	pages = {428--439},
   2.592 +	year = 1990
   2.593 +}
   2.594 +@Article{chamberlain98,
   2.595 +	author = {B. Chamberlain and S. Choi and E. Lewis and C. Lin and L. Snyder and W. Weathersby},
   2.596 +	title = {ZPL's WYSIWYG Performance Model},
   2.597 +	journal = {hips},
   2.598 +	volume = 00,
   2.599 +	year = 1998,
   2.600 +	isbn = {0-8186-8412-7},
   2.601 +	pages = 50
   2.602 +}
   2.603 +@Article{church41,
   2.604 +	author = {A. Church},
   2.605 +	title = {The Calculi of Lambda-Conversion},
   2.606 +	journal = {Annals of Mathematics Studies},
   2.607 +	number = 6,
   2.608 +	year = 1941,
   2.609 +	publisher = {Princeton University}
   2.610 +}
   2.611 +@Misc{CodeTimeSite,
   2.612 +	author = {Sean Halle},
   2.613 +	key = {CodeTime},
   2.614 +	title = {Homepage for The CodeTime Parallel Software Platform},
   2.615 +	note = {{\ttfamily http://codetime.sourceforge.net}}
   2.616 +}
   2.617 +@Misc{CodeTimePlatform,
   2.618 +	author = {Sean Halle},
   2.619 +	key = {CodeTime},
   2.620 +	title = {The CodeTime Parallel Software Platform},
   2.621 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_Platform.pdf}}
   2.622 +}
   2.623 +@Misc{CodeTimeVS,
   2.624 +	author = {Sean Halle},
   2.625 +	key = {CodeTime},
   2.626 +	title = {The Specification of the CodeTime Platform's Virtual Server},
   2.627 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_Virtual\_Server.pdf}}
   2.628 +}
   2.629 +@Misc{CodeTimeOS,
   2.630 +	author = {Sean Halle},
   2.631 +	key = {CodeTime},
   2.632 +	title = {A Hardware Independent OS},
   2.633 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_OS.pdf}}
   2.634 +}
   2.635 +@Misc{CodeTimeSem,
   2.636 +	author = {Sean Halle},
   2.637 +	key = {CodeTime},
   2.638 +	title = {The Big-Step Operational Semantics of the CodeTime Computational Model},
   2.639 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_Semantics.pdf}}
   2.640 +}
   2.641 +@Misc{CodeTimeTh,
   2.642 +	author = {Sean Halle},
   2.643 +	key = {CodeTime},
   2.644 +	title = {A Mental Framework for Use in Creating Hardware-Independent Parallel Languages},
   2.645 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTiime\_Theoretical\_Framework.pdf}}
   2.646 +}
   2.647 +@Misc{CodeTimeTh1,
   2.648 +	author = {Sean Halle},
   2.649 +	key = {CodeTime},
   2.650 +	title = {The CodeTime Parallel Software Platform},
   2.651 +	note = {{\ttfamily http://codetime.sourceforge.net}}
   2.652 +}
   2.653 +@Misc{CodeTimeTh2,
   2.654 +	author = {Sean Halle},
   2.655 +	key = {CodeTime},
   2.656 +	title = {The CodeTime Parallel Software Platform},
   2.657 +	note = {{\ttfamily http://codetime.sourceforge.net}}
   2.658 +}
   2.659 +@Misc{CodeTimeRT,
   2.660 +	author = {Sean Halle},
   2.661 +	key = {CodeTime},
   2.662 +	title = {The CodeTime Parallel Software Platform},
   2.663 +	note = {{\ttfamily http://codetime.sourceforge.net}}
   2.664 +}
   2.665 +@Misc{CodeTimeWebSite,
   2.666 +	author = {Sean Halle},
   2.667 +	key = {CodeTime},
   2.668 +	title = {The CodeTime Parallel Software Platform},
   2.669 +	note = {{\ttfamily http://codetime.sourceforge.net}}
   2.670 +}
   2.671 +@Misc{CodeTimeBaCTiL,
   2.672 +	author = {Sean Halle},
   2.673 +	key = {CodeTime},
   2.674 +	title = {The Base CodeTime Language},
   2.675 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_BaCTiL.pdf}}
   2.676 +}
   2.677 +@Misc{CodeTimeCert,
   2.678 +	author = {Sean Halle},
   2.679 +	key = {CodeTime},
   2.680 +	title = {The CodeTime Certification Strategy},
   2.681 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_Certification.pdf}}
   2.682 +}
   2.683 +@InProceedings{ducournau94,
   2.684 +	author = {R. Ducournau and M. Habib and M. Huchard and M. L. Mugnier},
   2.685 +	title = {Proposal for a monotonic multiple inheritance linearization},
   2.686 +	booktitle = {OOPSLA '94: Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications},
   2.687 +	year = 1994,
   2.688 +	pages = {164--175},
   2.689 +	publisher = {ACM Press}
   2.690 +}
   2.691 +@Article{emerson91,
   2.692 +	title = {{Tree automata, mu-calculus and determinacy}},
   2.693 +	author = {Emerson, EA and Jutla, CS},
   2.694 +	journal = {Proceedings of the 32nd Symposium on Foundations of Computer Science},
   2.695 +	pages = {368--377},
   2.696 +	year = 1991
   2.697 +}
   2.698 +@Article{fortune78,
   2.699 +	title = {{Parallelism in random access machines}},
   2.700 +	author = {Fortune, S. and Wyllie, J.},
   2.701 +	journal = {STOC '78: Proceedings of the tenth annual ACM symposium on Theory of computing},
   2.702 +	pages = {114--118},
   2.703 +	year = 1978,
   2.704 +	publisher = {ACM Press New York, NY, USA}
   2.705 +}
   2.706 +@Book{goldberg83,
   2.707 +	title = {{Smalltalk-80: the language and its implementation}},
   2.708 +	author = {Goldberg, A. and Robson, D.},
   2.709 +	year = 1983,
   2.710 +	publisher = {Addison-Wesley}
   2.711 +}
   2.712 +@InProceedings{goldschlager78,
   2.713 +	author = {Leslie M. Goldschlager},
   2.714 +	title = {A unified approach to models of synchronous parallel machines},
   2.715 +	booktitle = {STOC '78: Proceedings of the tenth annual ACM symposium on Theory of computing},
   2.716 +	year = 1978,
   2.717 +	pages = {89--94},
   2.718 +	location = {San Diego, California, United States},
   2.719 +	doi = {http://doi.acm.org/10.1145/800133.804336},
   2.720 +	publisher = {ACM Press}
   2.721 +}
   2.722 +@Book{gosling96,
   2.723 +	author = {J. Gosling and B. Joy and G. Steele and G. Bracha},
   2.724 +	title = {The Java Language Specification},
   2.725 +	publisher = {Addison-Wesley},
   2.726 +	year = 1996
   2.727 +}
   2.728 +@Article{hasselbring00,
   2.729 +	author = {Wilhelm Hasselbring},
   2.730 +	title = {Programming languages and systems for prototyping concurrent applications},
   2.731 +	journal = {ACM Comput. Surv.},
   2.732 +	volume = 32,
   2.733 +	number = 1,
   2.734 +	year = 2000,
   2.735 +	issn = {0360-0300},
   2.736 +	pages = {43--79},
   2.737 +	doi = {http://doi.acm.org/10.1145/349194.349199},
   2.738 +	publisher = {ACM Press},
   2.739 +	address = {New York, NY, USA}
   2.740 +}
   2.741 +@Article{hoare78,
   2.742 +	author = {C. A. R. Hoare},
   2.743 +	title = {Communicating Sequential Processes},
   2.744 +	journal = {Communications of the ACM},
   2.745 +	year = 1978,
   2.746 +	volume = 21,
   2.747 +	number = 8,
   2.748 +	pages = {666-677}
   2.749 +}
   2.750 +@Article{huth,
   2.751 +	title = {{A Unifying Framework for Model Checking Labeled Kripke Structures, Modal Transition Systems, and Interval Transition Systems}},
   2.752 +	author = {Huth, M.},
   2.753 +	journal = {Proceedings of the 19th International Conference on the Foundations of Software Technology \& Theoretical Computer Science, Lecture Notes in Computer Science},
   2.754 +	pages = {369--380},
   2.755 +	publisher = {Springer-Verlag}
   2.756 +}
   2.757 +@Article{johnston04,
   2.758 +	author = {Wesley M. Johnston and J. R. Paul Hanna and Richard J. Millar},
   2.759 +	title = {Advances in dataflow programming languages},
   2.760 +	journal = {ACM Comput. Surv.},
   2.761 +	volume = 36,
   2.762 +	number = 1,
   2.763 +	year = 2004,
   2.764 +	issn = {0360-0300},
   2.765 +	pages = {1--34},
   2.766 +	doi = {http://doi.acm.org/10.1145/1013208.1013209},
   2.767 +	publisher = {ACM Press},
   2.768 +	address = {New York, NY, USA}
   2.769 +}
   2.770 +@Book{koelbel93,
   2.771 +	author = {C. H. Koelbel and D. Loveman and R. Schreiber and G. Steele Jr},
   2.772 +	title = {High Performance Fortran Handbook},
   2.773 +	year = 1993,
   2.774 +	publisher = {MIT Press}
   2.775 +}
   2.776 +@Article{kozen83,
   2.777 +	title = {{Results on the Propositional mu-Calculus}},
   2.778 +	author = {Kozen, D.},
   2.779 +	journal = {TCS},
   2.780 +	volume = 27,
   2.781 +	pages = {333--354},
   2.782 +	year = 1983
   2.783 +}
   2.784 +@Article{kripke63,
   2.785 +	title = {{Semantical analysis of modal logic}},
   2.786 +	author = {Kripke, S.},
   2.787 +	journal = {Zeitschrift fur Mathematische Logik und Grundlagen der Mathematik},
   2.788 +	volume = 9,
   2.789 +	pages = {67--96},
   2.790 +	year = 1963
   2.791 +}
   2.792 +@Book{mcGraw85,
   2.793 +	author = {J McGraw and S. Skedzielewski and S. Allan and R Odefoeft},
   2.794 +	title = {SISAL: Streams and Iteration in a Single-Assignment Language: Reference Manual Version 1.2},
   2.795 +	note = {Manual M-146 Rev. 1},
   2.796 +	publisher = {Lawrence Livermore National Laboratory},
   2.797 +	year = 1985
   2.798 +}
   2.799 +@Book{milner80,
   2.800 +	title = {{A Calculus of Communicating Systems, volume 92 of Lecture Notes in Computer Science}},
   2.801 +	author = {Milner, R.},
   2.802 +	year = 1980,
   2.803 +	publisher = {Springer-Verlag}
   2.804 +}
   2.805 +@Article{milner92,
   2.806 +	title = {{A calculus of mobile processes, parts I and II}},
   2.807 +	author = {Milner, R. and Parrow, J. and Walker, D.},
   2.808 +	journal = {Information and Computation},
   2.809 +	volume = 100,
   2.810 +	number = 1,
   2.811 +	pages = {1--40 and 41--77},
   2.812 +	year = 1992,
   2.813 +	publisher = {Academic Press}
   2.814 +}
   2.815 +@Book{milner99,
   2.816 +	author = {Robin Milner},
   2.817 +	title = {Communicating and Mobile Systems: The pi-Calculus},
   2.818 +	publisher = {Cambridge University Press},
   2.819 +	year = 1999
   2.820 +}
   2.821 +@Book{MPIForum94,
   2.822 +	author = {M. P. I. Forum},
   2.823 +	title = {MPI: A Message-Passing Interface Standard},
   2.824 +	year = 1994
   2.825 +}
   2.826 +@Article{petri62,
   2.827 +	title = {{Fundamentals of a theory of asynchronous information flow}},
   2.828 +	author = {Petri, C.A.},
   2.829 +	journal = {Proc. IFIP Congress},
   2.830 +	volume = 62,
   2.831 +	pages = {386--390},
   2.832 +	year = 1962
   2.833 +}
   2.834 +@Book{pierce02,
   2.835 +	title = {Types and Programming Languages},
   2.836 +	author = {Pierce, B. C.},
   2.837 +	year = 2002,
   2.838 +	publisher = {MIT Press}
   2.839 +}
   2.840 +@Article{price,
   2.841 +	author = {B. A. Price and R. M. Baecker and L. S. Small},
   2.842 +	title = {A Principled Taxonomy of Software Visualization},
   2.843 +	journal = {Journal of Visual Languages and Computing},
   2.844 +	volume = 4,
   2.845 +	number = 3,
   2.846 +	pages = {211--266}
   2.847 +}
   2.848 +@Misc{pythonWebSite,
   2.849 +	key = {Python},
   2.850 +	title = {The Python Software Foundation Mission Statement},
   2.851 +	note = {{\ttfamily http://www.python.org/psf/mission.html}}
   2.852 +}
   2.853 +@Unpublished{reed03,
   2.854 +	editor = {Daniel A. Reed},
   2.855 +	title = {Workshop on The Roadmap for the Revitalization of High-End Computing},
   2.856 +	day = {16--18},
   2.857 +	month = {jun},
   2.858 +	year = 2003,
   2.859 +	note = {Available at {\ttfamily http://www.cra.org/reports/supercomputing.web.pdf}}
   2.860 +}
   2.861 +@Article{reeves84,
   2.862 +	author = {A. P. Reeves},
   2.863 +	title = {Parallel Pascal -- An Extended Pascal for Parallel Computers},
   2.864 +	journal = {Journal of Parallel and Distributed Computing},
   2.865 +	volume = 1,
   2.866 +	number = {},
   2.867 +	year = 1984,
   2.868 +	month = {aug},
   2.869 +	pages = {64--80}
   2.870 +}
   2.871 +@Article{skillicorn98,
   2.872 +	author = {David B. Skillicorn and Domenico Talia},
   2.873 +	title = {Models and languages for parallel computation},
   2.874 +	journal = {ACM Comput. Surv.},
   2.875 +	volume = 30,
   2.876 +	number = 2,
   2.877 +	year = 1998,
   2.878 +	issn = {0360-0300},
   2.879 +	pages = {123--169},
   2.880 +	doi = {http://doi.acm.org/10.1145/280277.280278},
   2.881 +	publisher = {ACM Press},
   2.882 +	address = {New York, NY, USA}
   2.883 +}
   2.884 +@Article{stefik86,
   2.885 +	title = {Object Oriented Programming: Themes and Variations},
   2.886 +	author = {Stefik, M. and Bobrow, D. G.},
   2.887 +	journal = {The AI Magazine},
   2.888 +	volume = 6,
   2.889 +	number = 4,
   2.890 +	year = 1986
   2.891 +}
   2.892 +@Book{stirling92,
   2.893 +	title = {{Modal and Temporal Logics}},
   2.894 +	author = {Stirling, C.},
   2.895 +	year = 1992,
   2.896 +	publisher = {University of Edinburgh, Department of Computer Science}
   2.897 +}
   2.898 +@Misc{TitaniumWebSite,
   2.899 +	author = {Paul Hilfinger and et. al.},
   2.900 +	title = {The Titanium Project Home Page},
   2.901 +	note = {{\ttfamily http://www.cs.berkeley.edu/projects/titanium}}
   2.902 +}
   2.903 +@Misc{turing38,
   2.904 +	author = {A. Turing},
   2.905 +	note = {http://www.turingarchive.org/intro/, and http://www.turing.org.uk/sources/biblio4.html, and http://web.comlab.ox.ac.uk/oucl/research/areas/ieg/e-library/sources/tp2-ie.pdf},
   2.906 +	year = 1938
   2.907 +}
   2.908 +@Book{vonNeumann45,
   2.909 +	title = {First Draft of a Report on the EDVAC},
   2.910 +	author = {J. von Neumann},
   2.911 +	year = 1945,
   2.912 +	publisher = {United States Army Ordnance Department}
   2.913 +}
   2.914 +@Book{winskel93,
   2.915 +	title = {{The Formal Semantics of Programming Languages}},
   2.916 +	author = {Winskel, G.},
   2.917 +	year = 1993,
   2.918 +	publisher = {MIT Press}
   2.919 +}
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/CVs/12_Ap__Euro_Fellowship_CV/euro_fellowship_CV.tex	Fri May 04 05:26:00 2012 -0700
     3.3 @@ -0,0 +1,170 @@
     3.4 +%&latex
     3.5 +%% Derived from: `cvctan.tex'
     3.6 +
     3.7 +\documentclass[a4paper]{article}
     3.8 +
     3.9 +\usepackage{tabularx}
    3.10 +
    3.11 +%\usepackage{doublespace}
    3.12 +%\setstretch{1.1}
    3.13 +
    3.14 +%\usepackage{ae}
    3.15 +\usepackage[T1]{fontenc}
    3.16 +\usepackage{CV}
    3.17 +
    3.18 +
    3.19 +\oddsidemargin 0in
    3.20 +\evensidemargin 0in
    3.21 +\textwidth\paperwidth
    3.22 +\advance \textwidth by -2in
    3.23 +\topmargin 0in
    3.24 +\textheight\paperheight
    3.25 +\advance\textheight -2in
    3.26 +\headheight 0pt
    3.27 +\headsep 0pt
    3.28 +\footskip 0pt
    3.29 +
    3.30 +
    3.31 +%%%%%%%%%%%%%%%%%%%%%%
    3.32 +\begin{document}
    3.33 +
    3.34 +\pagestyle{empty}
    3.35 +
    3.36 +%Ueberschrift
    3.37 +\begin{center}
    3.38 +\huge{\textsc{Curriculum Vitae}}
    3.39 +\vspace{\baselineskip}
    3.40 +
    3.41 +\Large{\textsc{Sean Halle}}
    3.42 +\end{center}
    3.43 +%\vspace{1.5\baselineskip}
    3.44 +
    3.45 +\section{}
    3.46 +\noindent\hspace*{\tabcolsep}
    3.47 +\begin{minipage}{0.4\linewidth}
    3.48 +
    3.49 +{\large{\textsc{Address}}}\\
    3.50 +17 Einsteinufer Rm 647 \\
    3.51 +10587 Berlin\\[3pt]
    3.52 +Tel~: +49~30~314~73130\\
    3.53 +EMail~: \texttt{sean.halle@tu-berlin.de}
    3.54 +\end{minipage}
    3.55 +\begin{minipage}{0.4\linewidth}
    3.56 +
    3.57 +{\large{\textsc{Personal Details}}}\\
    3.58 +Nationality: US\\
    3.59 +Gender: Male\\
    3.60 +\\
    3.61 +
    3.62 +\end{minipage}
    3.63 +
    3.64 +\section{Overview/Summary} Sean is a researcher and sometimes entrepreneur.  As an undergraduate and masters student, his research at UC Berkeley demonstrated the first evidence of secure communication using chaos, spread spectrum communication using a chaotic carrier signal, and gain from perturbation of chaotic circuits, with a total of 450+ citations to these papers.  He left with his Masters in 1994, to pursue starting a company with technology developed during a graduate course, eventually founding a fabless chip company around a MIMD-SIMD low-power massively parallel processor for graphics (ProSide), in 1997.  After the company's demise, he switched to software and worked his way up the chain, ending at Chief Software Architect at Nevik in 2000.  The dot-com crash precipitated a return to academia to start his PhD in 2003, where he worked on parallelism, developing a theory of parallel computation, and a performance-portable software stack. As part of this, in 2008 he was invited by Albert Cohen to work in Paris at INRIA, the national computer science research institute for France, concentrating on new parallel languages for high productivity and high performance portability.  This led to BLIS and VMS, two technologies that became the basis of his dissertation, for which he received his PhD in 2011.  He is currently a post-doctorate researcher at TU Berlin, focusing on processor architecture to support portable parallelism, and a software stack to support performance-portable parallel languages.
    3.65 +
    3.66 +
    3.67 +
    3.68 +\section{Education}
    3.69 +
    3.70 +\begin{CV}
    3.71 +\item[May 1992:] UC Berkeley, BSEE, Dept. of Electrical Engineering and Computer Science.
    3.72 +\item[May 1994:] UC Berkeley, MSEE,  Dept. of Electrical Engineering and Computer Science.
    3.73 +
    3.74 +Thesis on \emph{Experimental Chaos}.  Published the first papers in the field on "Gain from Chaos," "Spread Spectrum Communication Using Chaos," and "Secure Communication Using Chaos." The papers, combined, have garnered in excess of 450 citations. Advisor: Leon O Chua.
    3.75 +
    3.76 +\item[June 2011:] UC Santa Cruz, PhD,  Dept. of Computer Engineering.
    3.77 +
    3.78 +Dissertation on \emph{theory of parallel computation and tools for delivering performance-portable parallel software}. Advisors: Albert Cohen (INRIA, Paris), and Jose Renau (UC Santa Cruz).
    3.79 +
    3.80 +\end{CV}
    3.81 +
    3.82 +
    3.83 +\section{Experience}
    3.84 +
    3.85 +\begin{CV}
    3.86 +
    3.87 +\item[Jun '11 to Jun '12:]  Post-doctorate researcher at Technical University Berlin.
    3.88 +
    3.89 + Overseeing 6 students who are working  on: verifying the Holistic Model of Parallel Computation (proposed in Dissertation), design of a low-power GPU that is free from programming and application restrictions, improvement of Virtualized Master-Slave (VMS) (from Dissertation), and implementation of the HWSim language on top of VMS. 
    3.90 +
    3.91 +\item[Apr '08 to Apr '11:]  INRIA, Paris and Ecole Normale Supereur: Performed research on Portable High Performance Parallelism.  
    3.92 +
    3.93 +In 2008-2009 period demonstrated DKU and BLIS framework in Java and in C, running on multi-core shared memory machines, a heterogeneous collection of them and on the Cell processor.  In 2010 and 2011 designed WorkTable language for high productivity parallel coding for Enterprise applications, and HWSim for high-performance simulation of hardware designs, using parallel host machines. In 2011 delivered Virtualized Master-Slave (VMS), a hardware abstraction to simplify creation and implementation of domain-specific parallel languages, and the basis of a software stack for performant-portable parallel software.  The work there formed the main results in his dissertation.
    3.94 +
    3.95 +\item[Sept '03 to Apr '08:] UC Santa Cruz: Performed research on a theory of parallel computation, and developed a programming system for performance-portable software called CodeTime, in addition to an analytic performance model for out-of-order pipelines.
    3.96 +
    3.97 +\item[Apr '02 to Sept '03:]  Freelance: In anticipation of starting a fabless chip company, architected an ultra low power multi-threaded high-throughput processor.  Developed a detailed analytic model of the processor.  Wrote behavioral code and a test suite to demonstrate its performance.  Pursued series-A funding.  
    3.98 +
    3.99 +\item[Dec '00 to Apr '02:] Nevik Networks: As Chief Software Architect, designed and was responsible for the team implementing a telecom abstraction layer that provides web-based end-customer provisioning of big-iron class 5 switches as well as soft-switches.  Led development, drove requirements gathering and scoping of the product.
   3.100 +
   3.101 +\item[Dec '99 to Dec '00:] SRI International:  A member of SRI's enterprise software consulting spin-off.  Designed a high speed trading system for Deutsche Bank's fixed income securities market.  Co-architected, for American Century, an integrated financial system.  Contributed papers analyzing and detailing electronic exchanges.  Technical lead on implementation of a financial planning services exchange.
   3.102 +
   3.103 +\item[Apr '99 to Dec '99:] Cisco Systems, contract:  Member of web based ordering tool team (\$15 Billion in orders annually via this tool).  Added functionality via modifying front-end servlet code, back-end business logic, and Oracle database tables.
   3.104 +
   3.105 +\item[Apr '98 to Mar '99:] Sun Microsystems, JavaSoft division,  contract:   Participated in debug of the AWT portion of the Java language for the 1.2 release.  Contributed to specification of the automated GUI testing API that later appeared in release 1.5.  Developed automated testing tools.
   3.106 +
   3.107 +\item[Mar '96 to Dec '97:] ProSide Inc.  Acquired funding for a novel architecture fusing SIMD and SPMD of his design.  Targeted at 3D graphics, was also a general "loop accelerator" that appeared as smart-memory.  Developed base programming language and tools.
   3.108 +
   3.109 +\item[Jan '95 to Jan '96:] Digital Equipment Corporation:  Held position created for him by Dan Dobberpuhl to evaluate advanced technologies for use in Alpha processors.  Evaluated adiabatic logic, Time-Stationary Computation, and other low power, high speed technologies.  Invented five new logic families and a novel division technique based on deduction.  Designed high speed pseudo-self-timed array multiplier for low cost Alpha core and StrongArm VLIW co-processor using a combination of static, domino, and differential cascode (DCVSL) logic.
   3.110 +
   3.111 +
   3.112 +\end{CV}
   3.113 +
   3.114 +\pagebreak
   3.115 +\section{References}
   3.116 +
   3.117 +\noindent These persons are familiar with my professional qualifications and my character:
   3.118 +
   3.119 +\begin{table}[ht]
   3.120 +\begin{tabular}{@{}lll@{}}
   3.121 +\textbf{Prof. Albert Cohen} \\
   3.122 +Thesis supervisor & Phone: & +33-1-44-32-21-67\\
   3.123 +Department d'Informatiqe & Email & albert.cohen@inria.fr\\
   3.124 +Ecole Normale Superieure \\
   3.125 +45 rue d'Ulm\\
   3.126 +75005 Paris\\
   3.127 +France
   3.128 +\end{tabular}
   3.129 +
   3.130 +\vspace{.15in}
   3.131 +\begin{tabular}{@{}lll@{}}
   3.132 +\textbf{Prof. Jose Renau} \\
   3.133 +Thesis supervisor & Phone: & +1-831-459-1847\\
   3.134 + 1156 High Street MS: SOE2 & Email & renau@soe.ucsc.edu\\
   3.135 +Santa Cruz, CA 95064 \\
   3.136 +USA
   3.137 +\end{tabular}
   3.138 +
   3.139 +
   3.140 +\vspace{.15in}
   3.141 +\begin{tabular}{@{}lll@{}}
   3.142 +\textbf{Prof. Ben Juurlink} \\
   3.143 +Post-doc Advisor & Phone: & +49 30 314 73131\\
   3.144 +Technical University Berlin & Email &  b.juurlink@tu-berlin.de\\
   3.145 +Einsteinufer 17 / Sekr. EN12 \\
   3.146 +10587 Berlin\\
   3.147 +Germany
   3.148 +\end{tabular}
   3.149 +
   3.150 +\end{table}
   3.151 +
   3.152 +\end{document}
   3.153 +
   3.154 +
   3.155 +
   3.156 +
   3.157 +
   3.158 +%Tabellen
   3.159 +\begin{table}[htbp] \centering%
   3.160 +\begin{tabular}{lll}\hline\hline
   3.161 +1 & 2 & 3 \\ \hline
   3.162 +1 & \multicolumn{2}{c}{2} \\
   3.163 +\hline
   3.164 +\end{tabular}
   3.165 +\caption{Titel\label{Tabelle: Label}}
   3.166 +\end{table}
   3.167 +
   3.168 +
   3.169 +
   3.170 +
   3.171 +
   3.172 +
   3.173 +
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/CVs/12_Ap__Euro_Fellowship_CV/euro_fellowship_CV_w_pubs.tex	Fri May 04 05:26:00 2012 -0700
     4.3 @@ -0,0 +1,194 @@
     4.4 +%&latex
     4.5 +%% Derived from: `cvctan.tex'
     4.6 +
     4.7 +\documentclass[a4paper]{article}
     4.8 +
     4.9 +\usepackage{tabularx}
    4.10 +
    4.11 +%\usepackage{doublespace}
    4.12 +%\setstretch{1.1}
    4.13 +
    4.14 +%\usepackage{ae}
    4.15 +\usepackage[T1]{fontenc}
    4.16 +\usepackage{CV}
    4.17 +
    4.18 +
    4.19 +\oddsidemargin 0in
    4.20 +\evensidemargin 0in
    4.21 +\textwidth\paperwidth
    4.22 +\advance \textwidth by -2in
    4.23 +\topmargin 0in
    4.24 +\textheight\paperheight
    4.25 +\advance\textheight -2in
    4.26 +\headheight 0pt
    4.27 +\headsep 0pt
    4.28 +\footskip 0pt
    4.29 +
    4.30 +
    4.31 +%%%%%%%%%%%%%%%%%%%%%%
    4.32 +\begin{document}
    4.33 +
    4.34 +\pagestyle{empty}
    4.35 +\bibliographystyle{plain}
    4.36 +%Ueberschrift
    4.37 +\begin{center}
    4.38 +\huge{\textsc{Curriculum Vitae}}
    4.39 +\vspace{\baselineskip}
    4.40 +
    4.41 +\Large{\textsc{Sean Halle}}
    4.42 +\end{center}
    4.43 +%\vspace{1.5\baselineskip}
    4.44 +
    4.45 +\section{}
    4.46 +\noindent\hspace*{\tabcolsep}
    4.47 +\begin{minipage}{0.4\linewidth}
    4.48 +
    4.49 +{\large{\textsc{Address}}}\\
    4.50 +17 Einsteinufer Rm 647 \\
    4.51 +10587 Berlin\\[3pt]
    4.52 +Tel~: +49~30~314~73130\\
    4.53 +EMail~: \texttt{sean.halle@tu-berlin.de}
    4.54 +\end{minipage}
    4.55 +\begin{minipage}{0.4\linewidth}
    4.56 +
    4.57 +{\large{\textsc{Personal Details}}}\\
    4.58 +Nationality: US\\
    4.59 +Gender: Male\\
    4.60 +\\
    4.61 +
    4.62 +\end{minipage}
    4.63 +
    4.64 +\section{Overview/Summary} Sean is a researcher and sometimes entrepreneur.  As an undergraduate and masters student, his research at UC Berkeley demonstrated the first evidence of secure communication using chaos, spread spectrum communication using a chaotic carrier signal, and gain from perturbation of chaotic circuits, with a total of 450+ citations to these papers.  He left with his Masters in 1994, to pursue starting a company with technology developed during a graduate course, eventually founding a fabless chip company around a MIMD-SIMD low-power massively parallel processor for graphics (ProSide), in 1997.  After the company's demise, he switched to software and worked his way up the chain, ending at Chief Software Architect at Nevik in 2000.  The dot-com crash precipitated a return to academia to start his PhD in 2003, where he worked on parallelism, developing a theory of parallel computation, and a performance-portable software stack. As part of this, in 2008 he was invited by Albert Cohen to work in Paris at INRIA, the national computer science research institute for France, concentrating on new parallel languages for high productivity and high performance portability.  This led to BLIS and VMS, two technologies that became the basis of his dissertation, for which he received his PhD in 2011.  He is currently a post-doctorate researcher at TU Berlin, focusing on processor architecture to support portable parallelism, and a software stack to support performance-portable parallel languages.
    4.65 +
    4.66 +
    4.67 +
    4.68 +\section{Education}
    4.69 +
    4.70 +\begin{CV}
    4.71 +\item[May 1992:] UC Berkeley, BSEE, Dept. of Electrical Engineering and Computer Science.
    4.72 +\item[May 1994:] UC Berkeley, MSEE,  Dept. of Electrical Engineering and Computer Science.
    4.73 +
    4.74 +Thesis on \emph{Experimental Chaos}.  Published the first papers in the field on "Gain from Chaos," "Spread Spectrum Communication Using Chaos," and "Secure Communication Using Chaos." The papers, combined, have garnered in excess of 450 citations. Advisor: Leon O Chua.
    4.75 +
    4.76 +\item[June 2011:] UC Santa Cruz, PhD,  Dept. of Computer Engineering.
    4.77 +
    4.78 +Dissertation on \emph{theory of parallel computation and tools for delivering performance-portable parallel software}. Advisors: Albert Cohen (INRIA, Paris), and Jose Renau (UC Santa Cruz).
    4.79 +
    4.80 +\end{CV}
    4.81 +
    4.82 +
    4.83 +\section{Experience}
    4.84 +
    4.85 +\begin{CV}
    4.86 +
    4.87 +\item[Jun '11 to Jun '12:]  Post-doctorate researcher at Technical University Berlin.
    4.88 +
    4.89 + Overseeing 6 students who are working  on: verifying the Holistic Model of Parallel Computation (proposed in Dissertation), design of a low-power GPU that is free from programming and application restrictions, improvement of Virtualized Master-Slave (VMS) (from Dissertation), and implementation of the HWSim language on top of VMS. 
    4.90 +
    4.91 +\item[Apr '08 to Apr '11:]  INRIA, Paris and Ecole Normale Supereur: Performed research on Portable High Performance Parallelism.  
    4.92 +
    4.93 +In 2008-2009 period demonstrated DKU and BLIS framework in Java and in C, running on multi-core shared memory machines, a heterogeneous collection of them and on the Cell processor.  In 2010 and 2011 designed WorkTable language for high productivity parallel coding for Enterprise applications, and HWSim for high-performance simulation of hardware designs, using parallel host machines. In 2011 delivered Virtualized Master-Slave (VMS), a hardware abstraction to simplify creation and implementation of domain-specific parallel languages, and the basis of a software stack for performant-portable parallel software.  The work there formed the main results in his dissertation.
    4.94 +
    4.95 +\item[Sept '03 to Apr '08:] UC Santa Cruz: Performed research on a theory of parallel computation, and developed a programming system for performance-portable software called CodeTime, in addition to an analytic performance model for out-of-order pipelines.
    4.96 +
    4.97 +\item[Apr '02 to Sept '03:]  Freelance: In anticipation of starting a fabless chip company, architected an ultra low power multi-threaded high-throughput processor.  Developed a detailed analytic model of the processor.  Wrote behavioral code and a test suite to demonstrate its performance.  Pursued series-A funding.  
    4.98 +
    4.99 +\item[Dec '00 to Apr '02:] Nevik Networks: As Chief Software Architect, designed and was responsible for the team implementing a telecom abstraction layer that provides web-based end-customer provisioning of big-iron class 5 switches as well as soft-switches.  Led development, drove requirements gathering and scoping of the product.
   4.100 +
   4.101 +\item[Dec '99 to Dec '00:] SRI International:  A member of SRI's enterprise software consulting spin-off.  Designed a high speed trading system for Deutsche Bank's fixed income securities market.  Co-architected, for American Century, an integrated financial system.  Contributed papers analyzing and detailing electronic exchanges.  Technical lead on implementation of a financial planning services exchange.
   4.102 +
   4.103 +\item[Apr '99 to Dec '99:] Cisco Systems, contract:  Member of web based ordering tool team (\$15 Billion in orders annually via this tool).  Added functionality via modifying front-end servlet code, back-end business logic, and Oracle database tables.
   4.104 +
   4.105 +\item[Apr '98 to Mar '99:] Sun Microsystems, JavaSoft division,  contract:   Participated in debug of the AWT portion of the Java language for the 1.2 release.  Contributed to specification of the automated GUI testing API that later appeared in release 1.5.  Developed automated testing tools.
   4.106 +
   4.107 +\item[Mar '96 to Dec '97:] ProSide Inc.  Acquired funding for a novel architecture fusing SIMD and SPMD of his design.  Targeted at 3D graphics, was also a general "loop accelerator" that appeared as smart-memory.  Developed base programming language and tools.
   4.108 +
   4.109 +\item[Jan '95 to Jan '96:] Digital Equipment Corporation:  Held position created for him by Dan Dobberpuhl to evaluate advanced technologies for use in Alpha processors.  Evaluated adiabatic logic, Time-Stationary Computation, and other low power, high speed technologies.  Invented five new logic families and a novel division technique based on deduction.  Designed high speed pseudo-self-timed array multiplier for low cost Alpha core and StrongArm VLIW co-processor using a combination of static, domino, and differential cascode (DCVSL) logic.
   4.110 +
   4.111 +
   4.112 +\end{CV}
   4.113 +
   4.114 +\pagebreak
   4.115 +\section{Personal References}
   4.116 +
   4.117 +\noindent These persons are familiar with my professional qualifications and my character:
   4.118 +
   4.119 +\begin{table}[ht]
   4.120 +\begin{tabular}{@{}lll@{}}
   4.121 +\textbf{Prof. Albert Cohen} \\
   4.122 +Thesis supervisor & Phone: & +33-1-44-32-21-67\\
   4.123 +Department d'Informatiqe & Email & albert.cohen@inria.fr\\
   4.124 +Ecole Normale Superieure \\
   4.125 +45 rue d'Ulm\\
   4.126 +75005 Paris\\
   4.127 +France
   4.128 +\end{tabular}
   4.129 +
   4.130 +\vspace{.15in}
   4.131 +\begin{tabular}{@{}lll@{}}
   4.132 +\textbf{Prof. Jose Renau} \\
   4.133 +Thesis supervisor & Phone: & +1-831-459-1847\\
   4.134 + 1156 High Street MS: SOE2 & Email & renau@soe.ucsc.edu\\
   4.135 +Santa Cruz, CA 95064 \\
   4.136 +USA
   4.137 +\end{tabular}
   4.138 +
   4.139 +
   4.140 +\vspace{.15in}
   4.141 +\begin{tabular}{@{}lll@{}}
   4.142 +\textbf{Prof. Ben Juurlink} \\
   4.143 +Post-doc Advisor & Phone: & +49 30 314 73131\\
   4.144 +Technical University Berlin & Email &  b.juurlink@tu-berlin.de\\
   4.145 +Einsteinufer 17 / Sekr. EN12 \\
   4.146 +10587 Berlin\\
   4.147 +Germany
   4.148 +\end{tabular}
   4.149 +
   4.150 +\end{table}
   4.151 +
   4.152 +\cite{BLISHome,
   4.153 +HotPar10_w_BLIS,
   4.154 +HotPar11_w_Stack,
   4.155 +PStackHome,
   4.156 +VMS_LCPC_11,
   4.157 +VMSHome,
   4.158 +WorkTableHome,
   4.159 +BaCTiLTechRep,
   4.160 +CIPTechRep,
   4.161 +CTOSTechRep,
   4.162 +CTPlatformTechRep,
   4.163 +CTRTTechRep,
   4.164 +DKUTechRep_09,
   4.165 +EQNLangTechRep,
   4.166 +GainFromChaos_Halle_92,
   4.167 +MentalFrameworkTechRep_06,
   4.168 +Halle_GainFromChaos_pub,
   4.169 +Halle_Secure_pub,
   4.170 +Halle_SpreadSpect_pub}
   4.171 +
   4.172 +\bibliography{bib_for_papers_apr_2012}
   4.173 +
   4.174 +
   4.175 +
   4.176 +\end{document}
   4.177 +
   4.178 +
   4.179 +
   4.180 +
   4.181 +
   4.182 +%Tabellen
   4.183 +\begin{table}[htbp] \centering%
   4.184 +\begin{tabular}{lll}\hline\hline
   4.185 +1 & 2 & 3 \\ \hline
   4.186 +1 & \multicolumn{2}{c}{2} \\
   4.187 +\hline
   4.188 +\end{tabular}
   4.189 +\caption{Titel\label{Tabelle: Label}}
   4.190 +\end{table}
   4.191 +
   4.192 +
   4.193 +
   4.194 +
   4.195 +
   4.196 +
   4.197 +
     5.1 Binary file CVs/12_Ap__Euro_Fellowship_CV/publication_list.pdf has changed
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/CVs/12_Ap__Euro_Fellowship_CV/publication_list.tex	Fri May 04 05:26:00 2012 -0700
     6.3 @@ -0,0 +1,91 @@
     6.4 +%&latex
     6.5 +%% Derived from: `cvctan.tex'
     6.6 +
     6.7 +\documentclass[a4paper]{article}
     6.8 +
     6.9 +\usepackage{tabularx}
    6.10 +
    6.11 +%\usepackage{doublespace}
    6.12 +%\setstretch{1.1}
    6.13 +
    6.14 +%\usepackage{ae}
    6.15 +\usepackage[T1]{fontenc}
    6.16 +\usepackage{CV}
    6.17 +
    6.18 +
    6.19 +\oddsidemargin 0in
    6.20 +\evensidemargin 0in
    6.21 +\textwidth\paperwidth
    6.22 +\advance \textwidth by -2in
    6.23 +\topmargin 0in
    6.24 +\textheight\paperheight
    6.25 +\advance\textheight -2in
    6.26 +\headheight 0pt
    6.27 +\headsep 0pt
    6.28 +\footskip 0pt
    6.29 +
    6.30 +
    6.31 +%%%%%%%%%%%%%%%%%%%%%%
    6.32 +\begin{document}
    6.33 +
    6.34 +\pagestyle{empty}
    6.35 +\bibliographystyle{plain}
    6.36 +%Ueberschrift
    6.37 +\begin{center}
    6.38 +\huge{\textsc{Publication List}}
    6.39 +\vspace{\baselineskip}
    6.40 +
    6.41 +\Large{\textsc{Sean Halle}}
    6.42 +\end{center}
    6.43 +%\vspace{1.5\baselineskip}
    6.44 +
    6.45 +
    6.46 +\section{Overview} Sean has produced a large body of work, however due to a number of factors has only recently begun concentrating on publishing in major conferences and journals.  As such, most of the publications in the list are technical reports, or papers downloadable from development websites.
    6.47 +
    6.48 +
    6.49 +\cite{BLISHome,
    6.50 +HotPar10_w_BLIS,
    6.51 +HotPar11_w_Stack,
    6.52 +PStackHome,
    6.53 +VMS_LCPC_11,
    6.54 +VMSHome,
    6.55 +WorkTableHome,
    6.56 +BaCTiLTechRep,
    6.57 +CIPTechRep,
    6.58 +CTOSTechRep,
    6.59 +CTPlatformTechRep,
    6.60 +CTRTTechRep,
    6.61 +DKUTechRep_09,
    6.62 +EQNLangTechRep,
    6.63 +GainFromChaos_Halle_92,
    6.64 +MentalFrameworkTechRep_06,
    6.65 +Halle_GainFromChaos_pub,
    6.66 +Halle_Secure_pub,
    6.67 +Halle_SpreadSpect_pub}
    6.68 +
    6.69 +\bibliography{bib_for_papers_apr_2012}
    6.70 +
    6.71 +
    6.72 +
    6.73 +\end{document}
    6.74 +
    6.75 +
    6.76 +
    6.77 +
    6.78 +
    6.79 +%Tabellen
    6.80 +\begin{table}[htbp] \centering%
    6.81 +\begin{tabular}{lll}\hline\hline
    6.82 +1 & 2 & 3 \\ \hline
    6.83 +1 & \multicolumn{2}{c}{2} \\
    6.84 +\hline
    6.85 +\end{tabular}
    6.86 +\caption{Titel\label{Tabelle: Label}}
    6.87 +\end{table}
    6.88 +
    6.89 +
    6.90 +
    6.91 +
    6.92 +
    6.93 +
    6.94 +
     7.1 Binary file CVs/12_Ap__LLNL_CV/LLNL_CV_w_pubs.pdf has changed
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/CVs/12_Ap__LLNL_CV/LLNL_CV_w_pubs.tex	Fri May 04 05:26:00 2012 -0700
     8.3 @@ -0,0 +1,285 @@
     8.4 +%&latex
     8.5 +%% Derived from: `cvctan.tex'
     8.6 +
     8.7 +\documentclass[a4paper]{article}
     8.8 +
     8.9 +\usepackage{tabularx}
    8.10 +
    8.11 +%\usepackage{doublespace}
    8.12 +%\setstretch{1.1}
    8.13 +
    8.14 +%\usepackage{ae}
    8.15 +\usepackage[T1]{fontenc}
    8.16 +\usepackage{CV}
    8.17 +
    8.18 +
    8.19 +\oddsidemargin 0in
    8.20 +\evensidemargin 0in
    8.21 +\textwidth\paperwidth
    8.22 +\advance \textwidth by -2in
    8.23 +\topmargin 0in
    8.24 +\textheight\paperheight
    8.25 +\advance\textheight -2in
    8.26 +\headheight 0pt
    8.27 +\headsep 0pt
    8.28 +\footskip 0pt
    8.29 +
    8.30 +
    8.31 +%%%%%%%%%%%%%%%%%%%%%%
    8.32 +\begin{document}
    8.33 +
    8.34 +\pagestyle{empty}
    8.35 +\bibliographystyle{plain}
    8.36 +%Ueberschrift
    8.37 +\begin{center}
    8.38 +\huge{\textsc{Curriculum Vitae}}
    8.39 +\vspace{\baselineskip}
    8.40 +
    8.41 +\Large{\textsc{Sean Halle}}
    8.42 +\end{center}
    8.43 +%\vspace{1.5\baselineskip}
    8.44 +
    8.45 +\section{}
    8.46 +\noindent\hspace*{\tabcolsep}
    8.47 +\begin{minipage}{0.4\linewidth}
    8.48 +
    8.49 +{\large{\textsc{Address}}}\\
    8.50 +17 Einsteinufer Rm 647 \\
    8.51 +10587 Berlin\\[3pt]
    8.52 +Tel~: +49~30~314~73130\\
    8.53 +EMail~: \texttt{sean.halle@tu-berlin.de}
    8.54 +\end{minipage}
    8.55 +\begin{minipage}{0.4\linewidth}
    8.56 +
    8.57 +{\large{\textsc{Personal Details}}}\\
    8.58 +Nationality: US\\
    8.59 +Gender: Male\\
    8.60 +\\
    8.61 +
    8.62 +\end{minipage}
    8.63 +
    8.64 +\section{Overview/Summary} Sean is a researcher and sometimes entrepreneur.  As an undergraduate and masters student, his research at UC Berkeley demonstrated the first evidence of secure communication using chaos, spread spectrum communication using a chaotic carrier signal, and gain from perturbation of chaotic circuits, with a total of 450+ citations to these papers.  He left with his Masters in 1994, to pursue starting a company with technology developed during a graduate course, eventually founding a fabless chip company around a MIMD-SIMD low-power massively parallel processor for graphics (ProSide), in 1997.  After the company's demise, he switched to software and worked his way up the chain, ending at Chief Software Architect at Nevik in 2000.  The dot-com crash precipitated a return to academia to start his PhD in 2003, where he worked on parallelism, developing a theory of parallel computation, and a performance-portable software stack. As part of this, in 2008 he was invited by Albert Cohen to work in Paris at INRIA, the national computer science research institute for France, concentrating on new parallel languages for high productivity and high performance portability.  This led to BLIS and VMS, two technologies that became the basis of his dissertation, for which he received his PhD in 2011.  He is currently a post-doctorate researcher at TU Berlin, focusing on processor architecture to support portable parallelism, and a software stack to support performance-portable parallel languages, and would like to continue this work in his next post-doctorate position.
    8.65 +
    8.66 +
    8.67 +
    8.68 +\section{Education}
    8.69 +
    8.70 +\begin{CV}
    8.71 +\item[May 1992:] UC Berkeley, BSEE, Dept. of Electrical Engineering and Computer Science.
    8.72 +\item[May 1994:] UC Berkeley, MSEE,  Dept. of Electrical Engineering and Computer Science.
    8.73 +
    8.74 +Thesis on \emph{Experimental Chaos}.  Published the first papers in the field on "Gain from Chaos," "Spread Spectrum Communication Using Chaos," and "Secure Communication Using Chaos." The papers, combined, have garnered in excess of 450 citations. Advisor: Leon O Chua.
    8.75 +
    8.76 +\item[June 2011:] UC Santa Cruz, PhD,  Dept. of Computer Engineering.
    8.77 +
    8.78 +Dissertation on \emph{theory of parallel computation and tools for delivering performance-portable parallel software}. Advisors: Albert Cohen (INRIA, Paris), and Jose Renau (UC Santa Cruz).
    8.79 +
    8.80 +\end{CV}
    8.81 +
    8.82 +
    8.83 +\section{Experience}
    8.84 +
    8.85 +\begin{CV}
    8.86 +
    8.87 +\item[Jun '11 to Jun '12:]  Post-doctorate researcher at Technical University Berlin.
    8.88 +
    8.89 + Overseeing 6 students who are working  on: verifying the Holistic Model of Parallel Computation (proposed in Dissertation), design of a low-power GPU that is free from programming and application restrictions, improvement of Virtualized Master-Slave (VMS) (from Dissertation), and implementation of the HWSim language on top of VMS. 
    8.90 +
    8.91 +\item[Apr '08 to Apr '11:]  INRIA, Paris and Ecole Normale Supereur: Performed research on Portable High Performance Parallelism.  
    8.92 +
    8.93 +In 2008-2009 period demonstrated DKU and BLIS framework in Java and in C, running on multi-core shared memory machines, a heterogeneous collection of them and on the Cell processor.  In 2010 and 2011 designed WorkTable language for high productivity parallel coding for Enterprise applications, and HWSim for high-performance simulation of hardware designs, using parallel host machines. In 2011 delivered Virtualized Master-Slave (VMS), a hardware abstraction to simplify creation and implementation of domain-specific parallel languages, and the basis of a software stack for performant-portable parallel software.  The work there formed the main results in his dissertation.
    8.94 +
    8.95 +\item[Sept '03 to Apr '08:] UC Santa Cruz: Performed research on a theory of parallel computation, and developed a programming system for performance-portable software called CodeTime, in addition to an analytic performance model for out-of-order pipelines.
    8.96 +
    8.97 +\item[Apr '02 to Sept '03:]  Freelance: In anticipation of starting a fabless chip company, architected an ultra low power multi-threaded high-throughput processor.  Developed a detailed analytic model of the processor.  Wrote behavioral code and a test suite to demonstrate its performance.  Pursued series-A funding.  
    8.98 +
    8.99 +\item[Dec '00 to Apr '02:] Nevik Networks: As Chief Software Architect, designed and was responsible for the team implementing a telecom abstraction layer that provides web-based end-customer provisioning of big-iron class 5 switches as well as soft-switches.  Led development, drove requirements gathering and scoping of the product.
   8.100 +
   8.101 +\item[Dec '99 to Dec '00:] SRI International:  A member of SRI's enterprise software consulting spin-off.  Designed a high speed trading system for Deutsche Bank's fixed income securities market.  Co-architected, for American Century, an integrated financial system.  Contributed papers analyzing and detailing electronic exchanges.  Technical lead on implementation of a financial planning services exchange.
   8.102 +
   8.103 +\item[Apr '99 to Dec '99:] Cisco Systems, contract:  Member of web based ordering tool team (\$15 Billion in orders annually via this tool).  Added functionality via modifying front-end servlet code, back-end business logic, and Oracle database tables.
   8.104 +
   8.105 +\item[Apr '98 to Mar '99:] Sun Microsystems, JavaSoft division,  contract:   Participated in debug of the AWT portion of the Java language for the 1.2 release.  Contributed to specification of the automated GUI testing API that later appeared in release 1.5.  Developed automated testing tools.
   8.106 +
   8.107 +\item[Mar '96 to Dec '97:] ProSide Inc.  Acquired funding for a novel architecture fusing SIMD and SPMD of his design.  Targeted at 3D graphics, was also a general "loop accelerator" that appeared as smart-memory.  Developed base programming language and tools.
   8.108 +
   8.109 +\item[Jan '95 to Jan '96:] Digital Equipment Corporation:  Held position created for him by Dan Dobberpuhl to evaluate advanced technologies for use in Alpha processors.  Evaluated adiabatic logic, Time-Stationary Computation, and other low power, high speed technologies.  Invented five new logic families and a novel division technique based on deduction.  Designed high speed pseudo-self-timed array multiplier for low cost Alpha core and StrongArm VLIW co-processor using a combination of static, domino, and differential cascode (DCVSL) logic.
   8.110 +
   8.111 +
   8.112 +\end{CV}
   8.113 +
   8.114 +\pagebreak
   8.115 +\section{Personal References}
   8.116 +
   8.117 +\noindent These persons are familiar with my professional qualifications and my character:
   8.118 +
   8.119 +\begin{table}[ht]
   8.120 +\begin{tabular}{@{}lll@{}}
   8.121 +\textbf{Prof. Albert Cohen} \\
   8.122 +Thesis supervisor & Phone: & +33-1-44-32-21-67\\
   8.123 +Department d'Informatiqe & Email & albert.cohen@inria.fr\\
   8.124 +Ecole Normale Superieure \\
   8.125 +45 rue d'Ulm\\
   8.126 +75005 Paris\\
   8.127 +France
   8.128 +\end{tabular}
   8.129 +
   8.130 +\vspace{.15in}
   8.131 +\begin{tabular}{@{}lll@{}}
   8.132 +\textbf{Prof. Jose Renau} \\
   8.133 +Thesis supervisor & Phone: & +1-831-459-1847\\
   8.134 + 1156 High Street MS: SOE2 & Email & renau@soe.ucsc.edu\\
   8.135 +Santa Cruz, CA 95064 \\
   8.136 +USA
   8.137 +\end{tabular}
   8.138 +
   8.139 +
   8.140 +\vspace{.15in}
   8.141 +\begin{tabular}{@{}lll@{}}
   8.142 +\textbf{Prof. Ben Juurlink} \\
   8.143 +Post-doc Advisor & Phone: & +49 30 314 73131\\
   8.144 +Technical University Berlin & Email &  b.juurlink@tu-berlin.de\\
   8.145 +Einsteinufer 17 / Sekr. EN12 \\
   8.146 +10587 Berlin\\
   8.147 +Germany
   8.148 +\end{tabular}
   8.149 +
   8.150 +\end{table}
   8.151 +
   8.152 +
   8.153 +\section{Refereed Papers}
   8.154 +
   8.155 +\bibitem{Halle_GainFromChaos_pub}
   8.156 +K.S. Halle, Leon~O. Chua, V.S. Anishchenko, and M.A. Safonova.
   8.157 +\newblock Signal amplification via chaos: Experimental evidence.
   8.158 +\newblock {\em Int. J. of Bifurcation and Chaos}, pages 290--308, 1993.
   8.159 +
   8.160 +\bibitem{Halle_SpreadSpect_pub}
   8.161 +K.S. Halle, C.W. Wu, M.~Itoh, and L.~O. Chua.
   8.162 +\newblock Spread spectrum communication through modulation of chaos.
   8.163 +\newblock {\em Int. J. of Bifurcation and Chaos}, pages 469--477, 1993.
   8.164 +\newblock cited by 232.
   8.165 +
   8.166 +\bibitem{Halle_Secure_pub}
   8.167 +V.~Kocarev, K.S. Halle, K.~Eckert, L.~O. Chua, and V.~Parlitz.
   8.168 +\newblock Experimental demonstration of secure communications via chaotic
   8.169 +  synchronization.
   8.170 +\newblock {\em Int. J. of Bifurcation and Chaos}, pages 709--713, 1992.
   8.171 +\newblock cited by 457.
   8.172 +
   8.173 +\bibitem{HotPar10_w_BLIS}
   8.174 +Sean Halle and Albert Cohen.
   8.175 +\newblock Leveraging semantics attached to function calls to isolate
   8.176 +  applications from hardware.
   8.177 +\newblock In {\em HOTPAR '10: USENIX Workshop on Hot Topics in Parallelism},
   8.178 +  June 2010.
   8.179 +
   8.180 +\bibitem{VMS_LCPC_11}
   8.181 +Sean Halle and Albert Cohen.
   8.182 +\newblock A mutable hardware abstraction to replace threads.
   8.183 +\newblock {\em 24th International Workshop on Languages and Compilers for
   8.184 +  Parallel Languages (LCPC11)}, 2011.
   8.185 +
   8.186 +\bibitem{HotPar11_w_Stack}
   8.187 +Sean Halle and Albert Cohen.
   8.188 +\newblock Support of collective effort towards performance portability.
   8.189 +\newblock In {\em HOTPAR '11: USENIX Workshop on Hot Topics in Parallelism},
   8.190 +  May 2011.
   8.191 +
   8.192 +\section{Non-refereed Papers}
   8.193 +
   8.194 +\bibitem{CIPTechRep}
   8.195 +Sean Halle.
   8.196 +\newblock The case for an integrated software platform for {HEC} illustrated
   8.197 +  using the codetime platform, 2005.
   8.198 +\newblock
   8.199 +  http://www.soe.ucsc.edu/share/technical-reports/2005/ucsc-crl-05-05.pdf.
   8.200 +
   8.201 +\bibitem{BaCTiLTechRep}
   8.202 +Sean Halle.
   8.203 +\newblock Bactil: Base codetime language, 2006.
   8.204 +\newblock
   8.205 +  http://www.soe.ucsc.edu/share/technical-reports/2006/\\ucsc-crl-06-08.pdf.
   8.206 +
   8.207 +\bibitem{CTPlatformTechRep}
   8.208 +Sean Halle.
   8.209 +\newblock The elements of the codetime software platform, 2006.
   8.210 +\newblock
   8.211 +  http://www.soe.ucsc.edu/share/\\technical-reports/2006/ucsc-crl-06-09.pdf.
   8.212 +
   8.213 +\bibitem{MentalFrameworkTechRep_06}
   8.214 +Sean Halle.
   8.215 +\newblock A mental framework for use in creating hardware independent parallel
   8.216 +  languages, 2006.
   8.217 +\newblock
   8.218 +  http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-12.pdf.
   8.219 +
   8.220 +\bibitem{CTRTTechRep}
   8.221 +Sean Halle.
   8.222 +\newblock A scalable and efficient peer-to-peer run-time system for a hardware
   8.223 +  independent software platform, 2006.
   8.224 +\newblock
   8.225 +  http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-10.pdf.
   8.226 +
   8.227 +\bibitem{EQNLangTechRep}
   8.228 +Sean Halle.
   8.229 +\newblock An extensible parallel language, 2009.
   8.230 +\newblock
   8.231 +  http://www.soe.ucsc.edu/share/technical-reports/2009/\\ucsc-soe-09-16.pdf.
   8.232 +
   8.233 +\bibitem{CTOSTechRep}
   8.234 +Sean Halle.
   8.235 +\newblock A hardware-independent parallel operating system abstraction layer
   8.236 +  for parallelism, 2009.
   8.237 +\newblock
   8.238 +  http://www.soe.ucsc.edu/share/technical-reports/2009/ucsc-soe-09-15.pdf.
   8.239 +
   8.240 +\bibitem{PStackHome}
   8.241 +Sean Halle.
   8.242 +\newblock {PStack} home page -- a software stack for performantly portable
   8.243 +  parallelism, 2012.
   8.244 +\newblock http://pstack.\\sourceforge.net.
   8.245 +
   8.246 +\bibitem{WorkTableHome}
   8.247 +Sean Halle.
   8.248 +\newblock The worktable language reference manual, 2012.
   8.249 +\newblock http://musictwodotoh.com/worktable/content/\\refman.pdf.
   8.250 +
   8.251 +\bibitem{BLISHome}
   8.252 +Sean Halle and Albert Cohen.
   8.253 +\newblock {BLIS} website, November 2008.
   8.254 +\newblock http://blisplatform.sourceforge.net.
   8.255 +
   8.256 +\bibitem{DKUTechRep_09}
   8.257 +Sean Halle and Albert Cohen.
   8.258 +\newblock DKU pattern for performance portable parallel software, 2009.
   8.259 +\newblock
   8.260 +  http://www.soe.\\ucsc.edu/share/technical-reports/2009/ucsc-soe-09-06.pdf.
   8.261 +
   8.262 +\bibitem{VMSHome}
   8.263 +Sean Halle, Merten Sach, Ben Juurlink, and Albert Cohen.
   8.264 +\newblock {VMS} home page, 2010.
   8.265 +\newblock http://virtualizedmasterslave.\\org.
   8.266 +
   8.267 +\end{document}
   8.268 +
   8.269 +
   8.270 +
   8.271 +
   8.272 +
   8.273 +%Tabellen
   8.274 +\begin{table}[htbp] \centering%
   8.275 +\begin{tabular}{lll}\hline\hline
   8.276 +1 & 2 & 3 \\ \hline
   8.277 +1 & \multicolumn{2}{c}{2} \\
   8.278 +\hline
   8.279 +\end{tabular}
   8.280 +\caption{Titel\label{Tabelle: Label}}
   8.281 +\end{table}
   8.282 +
   8.283 +
   8.284 +
   8.285 +
   8.286 +
   8.287 +
   8.288 +
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/CVs/12_Ap__LLNL_CV/bib_for_papers_apr_28_2012.bib	Fri May 04 05:26:00 2012 -0700
     9.3 @@ -0,0 +1,916 @@
     9.4 +@techrep{SyncConstr_impl_w_distr_coherence_HW_Utah_96,
     9.5 +	author = {Carter, J. B. and Kuo, C.-C. and Kuramkote, R.},
     9.6 +	title = { A comparison of software and hardware synchronization mechanisms for distributed shared memory multiprocessors},
     9.7 +	institution = {University of Utah, Salt Lake City, UT},
     9.8 +	year = 1996,
     9.9 +	url = {http://www.cs.utah.edu/research/techreports/1996/pdf/UUCS-96-011.pdf},
    9.10 +	number = {UUCS-96-011}
    9.11 +}
    9.12 +@Article{SWCoherence_Hill_SW_for_shared_coherence_w_HW_support_93,
    9.13 +	author = {Hill, Mark D. and Larus, James R. and Reinhardt, Steven K. and Wood, David A.},
    9.14 +	title = {Cooperative shared memory: software and hardware for scalable multiprocessors},
    9.15 +	journal = {ACM Trans. Comput. Syst.},
    9.16 +	volume = 11,
    9.17 +	number = 4,
    9.18 +	year = 1993,
    9.19 +	pages = {300--318}
    9.20 +}
    9.21 +@InProceedings{SWCache_MIT_embedSW_manages_cache_w_HW_supp,
    9.22 +	author = {Chiou, Derek and Jain, Prabhat and Rudolph, Larry and Devadas, Srinivas},
    9.23 +	title = {Application-specific memory management for embedded systems using software-controlled caches},
    9.24 +	booktitle = {DAC},
    9.25 +	year = 2000,
    9.26 +	pages = {416--419}
    9.27 +}
    9.28 +@InProceedings{SWCache_instr_trig_HW_supp_04,
    9.29 +	author = {Janapsatya, Andhi and Parameswaran, Sri and Ignjatovic, A.},
    9.30 +	title = {Hardware/software managed scratchpad memory for embedded system},
    9.31 +	booktitle = {Proceedings of the 2004 IEEE/ACM International conference on Computer-aided design},
    9.32 +	series = {ICCAD '04},
    9.33 +	year = 2004,
    9.34 +	pages = {370--377}
    9.35 +}
    9.36 +@InProceedings{SWCache_arch_supp_OS_policy_06,
    9.37 +	author = {Rafique, Nauman and Lim, Won-Taek and Thottethodi, Mithuna},
    9.38 +	title = {Architectural support for operating system-driven CMP cache management},
    9.39 +	booktitle = {Proceedings of the 15th international conference on Parallel architectures and compilation techniques},
    9.40 +	series = {PACT '06},
    9.41 +	year = 2006,
    9.42 +	pages = {2--12}
    9.43 +}
    9.44 +@InProceedings{SWCoherence_on_Distr_Mem_90,
    9.45 +	author = {Bennett, J.K. and Carter, J.B. and Zwaenepoel, W.},
    9.46 +	booktitle = {Computer Architecture, 1990. Proceedings., 17th Annual International Symposium on},
    9.47 +	title = {Adaptive software cache management for distributed shared memory architectures},
    9.48 +	year = 1990,
    9.49 +	pages = {125 -134}
    9.50 +}
    9.51 +@InProceedings{Charm_runtime_opt_10,
    9.52 +	author = {Mei, Chao and Zheng, Gengbin and Gioachin, Filippo and Kal{\'e}, Laxmikant V.},
    9.53 +	title = {Optimizing a parallel runtime system for multicore clusters: a case study},
    9.54 +	booktitle = {The 2010 TeraGrid Conference},
    9.55 +	year = 2010,
    9.56 +	pages = {12:1--12:8}
    9.57 +}
    9.58 +@InProceedings{TCC_Hammond_ISCA_04,
    9.59 +	author = {Hammond, Lance and al, et},
    9.60 +	title = {Transactional Memory Coherence and Consistency},
    9.61 +	series = {ISCA '04},
    9.62 +	pages = {102--},
    9.63 +	booktitle = {},
    9.64 +	year = {}
    9.65 +}
    9.66 +@Misc{WorkTableHome,
    9.67 +	author = {Halle, Sean},
    9.68 +	note = {http://musictwodotoh.com/worktable/content/refman.pdf},
    9.69 +	title = {The WorkTable Language Reference Manual},
    9.70 +	year = 2012
    9.71 +}
    9.72 +@Misc{HWSimHome,
    9.73 +	author = {Halle, Sean and Hausers, Stefan},
    9.74 +	note = {http://musictwodotoh.com/hwsim/content/refman.pdf},
    9.75 +	title = {The HWSim Language Reference Manual},
    9.76 +	year = 2012
    9.77 +}
    9.78 +@Article{Lamport78,
    9.79 +	author = {Lamport, Leslie},
    9.80 +	title = {Time, clocks, and the ordering of events in a distributed system},
    9.81 +	journal = {Commun. ACM},
    9.82 +	volume = 21,
    9.83 +	issue = 7,
    9.84 +	year = 1978,
    9.85 +	pages = {558--565}
    9.86 +}
    9.87 +@Article{Lamport87,
    9.88 +	author = {Lamport, Leslie},
    9.89 +	title = {A fast mutual exclusion algorithm},
    9.90 +	journal = {ACM Trans. Comput. Syst.},
    9.91 +	volume = 5,
    9.92 +	issue = 1,
    9.93 +	year = 1987,
    9.94 +	pages = {1--11}
    9.95 +}
    9.96 +@InProceedings{Dijkstra67,
    9.97 +	author = {Dijkstra, Edsger W.},
    9.98 +	title = {The structure of the "{THE}"-multiprogramming system},
    9.99 +	booktitle = {Proceedings of the first ACM symposium on Operating System Principles},
   9.100 +	series = {SOSP '67},
   9.101 +	year = 1967,
   9.102 +	pages = {10.1--10.6}
   9.103 +}
   9.104 +@Article{Conway63,
   9.105 +	author = {Conway, Melvin E.},
   9.106 +	title = {Design of a separable transition-diagram compiler},
   9.107 +	journal = {Commun. ACM},
   9.108 +	volume = 6,
   9.109 +	issue = 7,
   9.110 +	year = 1963,
   9.111 +	pages = {396--408}
   9.112 +}
   9.113 +@Book{ComponentModel00,
   9.114 +	author = {G Leavens and M Sitaraman (eds)},
   9.115 +	title = {Foundations of Component-Based Systems},
   9.116 +	publisher = {Cambridge University Press},
   9.117 +	year = 2000
   9.118 +}
   9.119 +@Misc{Hewitt10,
   9.120 +	author = {Carl Hewitt},
   9.121 +	title = {Actor Model of Computation},
   9.122 +	year = 2010,
   9.123 +	note = {http://arxiv.org/abs/1008.1459}
   9.124 +}
   9.125 +@Article{Actors97,
   9.126 +	author = {Agha,G. and Mason,I. and Smith,S. and Talcott,C.},
   9.127 +	title = {A foundation for actor computation},
   9.128 +	journal = {Journal of Functional Programming},
   9.129 +	volume = 7,
   9.130 +	number = 01,
   9.131 +	pages = {1-72},
   9.132 +	year = 1997
   9.133 +}
   9.134 +@Article{SchedActivations,
   9.135 +	author = {Anderson, Thomas E. and Bershad, Brian N. and Lazowska, Edward D. and Levy, Henry M.},
   9.136 +	title = {Scheduler activations: effective kernel support for the user-level management of parallelism},
   9.137 +	journal = {ACM Trans. Comput. Syst.},
   9.138 +	volume = 10,
   9.139 +	issue = 1,
   9.140 +	month = {February},
   9.141 +	year = 1992,
   9.142 +	pages = {53--79}
   9.143 +}
   9.144 +@InProceedings{BOMinManticore,
   9.145 +	author = {Fluet, Matthew and Rainey, Mike and Reppy, John and Shaw, Adam and Xiao, Yingqi},
   9.146 +	title = {Manticore: a heterogeneous parallel language},
   9.147 +	booktitle = {Proceedings of the 2007 workshop on Declarative aspects of multicore programming},
   9.148 +	series = {DAMP '07},
   9.149 +	year = 2007,
   9.150 +	pages = {37--44},
   9.151 +	numpages = 8
   9.152 +}
   9.153 +@TechReport{Halle_GainFromChaos_TechRep,
   9.154 +	author = {Halle, K.S. and Chua, Leon O. and Anishchenko, V.S. and Safonova, M.A.},
   9.155 +	title = {Signal Amplification via Chaos: Experimental Evidence},
   9.156 +	institution = {EECS Department, University of California, Berkeley},
   9.157 +	year = 1992,
   9.158 +	url = {http://www.eecs.berkeley.edu/Pubs/TechRpts/1992/2223.html},
   9.159 +	number = {UCB/ERL M92/130}
   9.160 +}
   9.161 +@Article{Halle_GainFromChaos_pub,
   9.162 +	author = {K.S. Halle and Leon O. Chua and V.S. Anishchenko and M.A. Safonova},
   9.163 +	title = {Signal Amplification via Chaos: Experimental Evidence},
   9.164 +	journal = {Int. J. of Bifurcation and Chaos },
   9.165 +	pages = {290-308},
   9.166 +	year = 1993
   9.167 +}
   9.168 +@Article{Halle_SpreadSpect_pub,
   9.169 +	author = {K.S. Halle and C.W. Wu and M. Itoh and L. O. Chua},
   9.170 +	title = {Spread Spectrum Communication Through Modulation of Chaos},
   9.171 +	journal = {Int. J. of Bifurcation and Chaos },
   9.172 +	pages = {469-477},
   9.173 +	year = 1993,
   9.174 +	note = {cited by 232}
   9.175 +}
   9.176 +@Article{Halle_Secure_pub,
   9.177 +	author = {V. Kocarev and K.S. Halle and K. Eckert and L. O. Chua and V. Parlitz},
   9.178 +	title = {Experimental Demonstration of Secure Communications Via Chaotic Synchronization},
   9.179 +	journal = {Int. J. of Bifurcation and Chaos },
   9.180 +	pages = {709-713},
   9.181 +	year = 1992,
   9.182 +	note = {cited by 457}
   9.183 +}
   9.184 +@InProceedings{HotPar10_w_BLIS,
   9.185 +	author = {Sean Halle and Albert Cohen},
   9.186 +	booktitle = {HOTPAR '10: USENIX Workshop on Hot Topics in Parallelism},
   9.187 +	month = {June},
   9.188 +	title = {Leveraging Semantics Attached to Function Calls to Isolate Applications from Hardware},
   9.189 +	year = 2010
   9.190 +}
   9.191 +@InProceedings{HotPar11_w_Stack,
   9.192 +	author = {Sean Halle and Albert Cohen},
   9.193 +	booktitle = {HOTPAR '11: USENIX Workshop on Hot Topics in Parallelism},
   9.194 +	month = {May},
   9.195 +	title = {Support of Collective Effort Towards Performance Portability},
   9.196 +	year = 2011
   9.197 +}
   9.198 +@Article{VMS_LCPC_11,
   9.199 +	author = {Sean Halle and Albert Cohen},
   9.200 +	title = {A Mutable Hardware Abstraction to Replace Threads},
   9.201 +	journal = {24th International Workshop on Languages and Compilers for Parallel Languages (LCPC11)},
   9.202 +	year = 2011
   9.203 +}
   9.204 +@Misc{StackTechRep_10,
   9.205 +	author = {Halle, Sean and Nadezhkin, Dmitry and Cohen, Albert},
   9.206 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2010/ucsc-soe-10-02.pdf},
   9.207 +	title = {A Framework to Support Research on Portable High Performance Parallelism},
   9.208 +	year = 2010
   9.209 +}
   9.210 +@Misc{CTBigStepSemTechRep_06,
   9.211 +	author = {Halle, Sean},
   9.212 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-11.pdf},
   9.213 +	title = {The Big-Step Operational Semantics of CodeTime Circuits},
   9.214 +	year = 2006
   9.215 +}
   9.216 +@Misc{MentalFrameworkTechRep_06,
   9.217 +	author = {Halle, Sean},
   9.218 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-12.pdf},
   9.219 +	title = {A Mental Framework for use in Creating Hardware Independent Parallel Languages},
   9.220 +	year = 2006
   9.221 +}
   9.222 +@Misc{DKUTechRep_09,
   9.223 +	author = {Halle, Sean and Cohen, Albert},
   9.224 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2009/ucsc-soe-09-06.pdf},
   9.225 +	title = {DKU Pattern for Performance Portable Parallel Software},
   9.226 +	year = 2009
   9.227 +}
   9.228 +@Misc{EQNLangTechRep,
   9.229 +	author = {Halle, Sean},
   9.230 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2009/ucsc-soe-09-16.pdf},
   9.231 +	title = {An Extensible Parallel Language},
   9.232 +	year = 2009
   9.233 +}
   9.234 +@Misc{CTOSTechRep,
   9.235 +	author = {Halle, Sean},
   9.236 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2009/ucsc-soe-09-15.pdf},
   9.237 +	title = {A Hardware-Independent Parallel Operating System Abstraction Layer for Parallelism},
   9.238 +	year = 2009
   9.239 +}
   9.240 +@Misc{SideEffectsTechRep,
   9.241 +	author = {Halle, Sean and Cohen, Albert},
   9.242 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2009/ucsc-soe-09-14.pdf},
   9.243 +	title = {Parallel Language Extensions for Side Effects},
   9.244 +	year = 2009
   9.245 +}
   9.246 +@Misc{BaCTiLTechRep,
   9.247 +	author = {Halle, Sean},
   9.248 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-08.pdf},
   9.249 +	title = {BaCTiL: Base CodeTime Language},
   9.250 +	year = 2006
   9.251 +}
   9.252 +@Misc{CTPlatformTechRep,
   9.253 +	author = {Halle, Sean},
   9.254 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-09.pdf},
   9.255 +	title = {The Elements of the CodeTime Software Platform},
   9.256 +	year = 2006
   9.257 +}
   9.258 +@Misc{CTRTTechRep,
   9.259 +	author = {Halle, Sean},
   9.260 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2006/ucsc-crl-06-10.pdf},
   9.261 +	title = {A Scalable and Efficient Peer-to-Peer Run-Time System for a Hardware Independent Software Platform},
   9.262 +	year = 2006
   9.263 +}
   9.264 +@Misc{CIPTechRep,
   9.265 +	author = {Halle, Sean},
   9.266 +	note = {http://www.soe.ucsc.edu/share/technical-reports/2005/ucsc-crl-05-05.pdf},
   9.267 +	title = {The Case for an Integrated Software Platform for {HEC} Illustrated Using the CodeTime Platform},
   9.268 +	year = 2005
   9.269 +}
   9.270 +@Misc{DKU_Infra_site,
   9.271 +	author = {Sean Halle and Albert Cohen},
   9.272 +	note = {http://omp.musictwodotoh.com},
   9.273 +	title = {{DKU} infrastructure server}
   9.274 +}
   9.275 +@Misc{DKUSourceForge,
   9.276 +	author = {Sean Halle and Albert Cohen},
   9.277 +	month = {November},
   9.278 +	note = {http://dku.sourceforge.net},
   9.279 +	title = {{DKU} website},
   9.280 +	year = 2008
   9.281 +}
   9.282 +@Misc{BLISHome,
   9.283 +	author = {Sean Halle and Albert Cohen},
   9.284 +	month = {November},
   9.285 +	note = {http://blisplatform.sourceforge.net},
   9.286 +	title = {{BLIS} website},
   9.287 +	year = 2008
   9.288 +}
   9.289 +@Misc{VMSHome,
   9.290 +	author = {Sean Halle and Merten Sach and Ben Juurlink and Albert Cohen},
   9.291 +	note = {http://virtualizedmasterslave.org},
   9.292 +	title = {{VMS} Home Page},
   9.293 +	year = 2010
   9.294 +}
   9.295 +@Misc{PStackHome,
   9.296 +	author = {Sean Halle},
   9.297 +	note = {http://pstack.sourceforge.net},
   9.298 +	title = {{PStack} Home Page -- A Software Stack for Performantly Portable Parallelism},
   9.299 +	year = 2012
   9.300 +}
   9.301 +@Misc{DeblockingCode,
   9.302 +	note = {http://dku.svn.sourceforge.net/viewvc/dku/branches/DKU\_C\_\_Deblocking\_\_orig/},
   9.303 +	title = {{DKU-ized Deblocking Filter} code}
   9.304 +}
   9.305 +@Misc{SampleBLISCode,
   9.306 +	note = {http://dku.sourceforge.net/SampleCode.htm},
   9.307 +	title = {{Sample BLIS Code}}
   9.308 +}
   9.309 +@Misc{OMPHome,
   9.310 +	note = {http://www.openmediaplatform.eu/},
   9.311 +	title = {{Open Media Platform} homepage}
   9.312 +}
   9.313 +@Misc{MapReduceHome,
   9.314 +	author = {Google Corp.},
   9.315 +	note = {http://labs.google.com/papers/mapreduce.html},
   9.316 +	title = {{MapReduce} Home page}
   9.317 +}
   9.318 +@Misc{TBBHome,
   9.319 +	author = {Intel Corp.},
   9.320 +	note = {http://www.threadingbuildingblocks.org},
   9.321 +	title = {{TBB} Home page}
   9.322 +}
   9.323 +@Misc{HPFWikipedia,
   9.324 +	author = {Wikipedia},
   9.325 +	note = {http://en.wikipedia.org/wiki/High_Performance_Fortran},
   9.326 +	title = {{HPF} wikipedia page}
   9.327 +}
   9.328 +@Misc{OpenMPHome,
   9.329 +	author = {{OpenMP} organization},
   9.330 +	note = {http://www.openmp.org},
   9.331 +	title = {{OpenMP} Home page}
   9.332 +}
   9.333 +@Misc{MPIHome,
   9.334 +	author = {open-mpi organization},
   9.335 +	note = {http://www.open-mpi.org},
   9.336 +	title = {{Open MPI} Home page}
   9.337 +}
   9.338 +@Misc{OpenCLHome,
   9.339 +	author = {Kronos Group},
   9.340 +	note = {http://www.khronos.org/opencl},
   9.341 +	title = {{OpenCL} Home page}
   9.342 +}
   9.343 +@Misc{CILKHome,
   9.344 +	author = {Cilk group at MIT},
   9.345 +	note = {http://supertech.csail.mit.edu/cilk/},
   9.346 +	title = {{CILK} homepage}
   9.347 +}
   9.348 +@InProceedings{Fri98,
   9.349 +	author = {M. Frigo and C. E. Leiserson and K. H. Randall},
   9.350 +	title = {The Implementation of the Cilk-5 Multithreaded Language},
   9.351 +	booktitle = {PLDI '98: Proceedings of the 1998 ACM SIGPLAN conference on Programming language design and implementation},
   9.352 +	pages = {212--223},
   9.353 +	year = 1998,
   9.354 +	address = {Montreal, Quebec},
   9.355 +	month = jun
   9.356 +}
   9.357 +@Misc{TitaniumHome,
   9.358 +	note = {http://titanium.cs.berkeley.edu},
   9.359 +	title = {{Titanium} homepage}
   9.360 +}
   9.361 +@InProceedings{CnCInHotPar,
   9.362 +	author = {Knobe, Kathleen},
   9.363 +	booktitle = {HOTPAR '09: USENIX Workshop on Hot Topics in Parallelism},
   9.364 +	title = {Ease of Use with Concurrent Collections {(CnC)}},
   9.365 +	year = 2009
   9.366 +}
   9.367 +@Misc{CnCHome,
   9.368 +	author = {Intel Corp.},
   9.369 +	note = {http://software.intel.com/en-us/articles/intel-concurrent-collections-for-cc/},
   9.370 +	title = {{CnC} homepage}
   9.371 +}
   9.372 +@Misc{SpiralHome,
   9.373 +	author = {Spiral Group at CMU},
   9.374 +	note = {http://www.spiral.net},
   9.375 +	title = {{Spiral} homepage}
   9.376 +}
   9.377 +@Misc{ScalaHome,
   9.378 +	author = {Scala organization},
   9.379 +	note = {http://www.scala-lang.org/},
   9.380 +	title = {{Scala} homepage}
   9.381 +}
   9.382 +@Misc{UPCHome,
   9.383 +	author = {UPC group at UC Berkeley},
   9.384 +	note = {http://upc.lbl.gov/},
   9.385 +	title = {{Unified Parallel C} homepage}
   9.386 +}
   9.387 +@Misc{SuifHome,
   9.388 +	note = {http://suif.stanford.edu},
   9.389 +	title = {{Suif} Parallelizing compiler homepage}
   9.390 +}
   9.391 +@Article{SEJITS,
   9.392 +	author = {B. Catanzaro and S. Kamil and Y. Lee and K. Asanovic and J. Demmel and K. Keutzer and J. Shalf and K. Yelick and A. Fox},
   9.393 +	title = {SEJITS: Getting Productivity AND Performance With Selective Embedded JIT Specialization},
   9.394 +	journal = {First Workshop on Programmable Models for Emerging Architecture at the 18th International Conference on Parallel Architectures and Compilation Techniques },
   9.395 +	year = 2009
   9.396 +}
   9.397 +@InProceedings{Arnaldo3D,
   9.398 +	author = {Azevedo, Arnaldo and Meenderinck, Cor and Juurlink, Ben and Terechko, Andrei and Hoogerbrugge, Jan and Alvarez, Mauricio and Ramirez, Alex},
   9.399 +	title = {Parallel H.264 Decoding on an Embedded Multicore Processor},
   9.400 +	booktitle = {HiPEAC '09: Proceedings of the 4th International Conference on High Performance Embedded Architectures and Compilers},
   9.401 +	year = 2009,
   9.402 +	pages = {404--418}
   9.403 +}
   9.404 +@Article{NarayananGPUSched,
   9.405 +	author = {Narayanan Sundaram and Anand Raghunathan and Srimat T. Chakradhar},
   9.406 +	title = {A framework for efficient and scalable execution of domain-specific templates on GPUs},
   9.407 +	journal = {International Parallel and Distributed Processing Symposium {(IPDPS)}},
   9.408 +	year = 2009,
   9.409 +	pages = {1-12}
   9.410 +}
   9.411 +@InProceedings{PolyForGPU,
   9.412 +	author = {Baskaran, Muthu Manikandan and Bondhugula, Uday and Krishnamoorthy, Sriram and Ramanujam, J. and Rountev, Atanas and Sadayappan, P.},
   9.413 +	title = {A compiler framework for optimization of affine loop nests for gpgpus},
   9.414 +	booktitle = {ICS '08: Proceedings of the 22nd annual international conference on Supercomputing},
   9.415 +	year = 2008,
   9.416 +	pages = {225--234}
   9.417 +}
   9.418 +@InProceedings{Loulou08,
   9.419 +	author = {Pouchet, Louis-No\"{e}l and Bastoul, C\'{e}dric and Cohen, Albert and Cavazos, John},
   9.420 +	title = {Iterative optimization in the polyhedral model: part ii, multidimensional time},
   9.421 +	booktitle = {ACM SIGPLAN conference on Programming language design and implementation {(PLDI)} },
   9.422 +	year = 2008,
   9.423 +	pages = {90--100}
   9.424 +}
   9.425 +@InProceedings{MergeInHotPar,
   9.426 +	author = {Michael D. Linderman and James Balfour and Teresa H. Meng and William J. Dally},
   9.427 +	booktitle = {HOTPAR '09: USENIX Workshop on Hot Topics in Parallelism},
   9.428 +	month = {March},
   9.429 +	title = {Embracing Heterogeneity \- Parallel Programming for Changing Hardware},
   9.430 +	year = 2009
   9.431 +}
   9.432 +@InProceedings{GaloisRef,
   9.433 +	author = {Kulkarni, Milind and Pingali, Keshav and Walter, Bruce and Ramanarayanan, Ganesh and Bala, Kavita and Chew, L. Paul},
   9.434 +	title = {Optimistic parallelism requires abstractions},
   9.435 +	booktitle = {PLDI '07: Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation},
   9.436 +	year = 2007,
   9.437 +	pages = {211--222}
   9.438 +}
   9.439 +@Book{Allen2002,
   9.440 +	author = {Kennedy, Ken and Allen, John R.},
   9.441 +	title = {Optimizing compilers for modern architectures: a dependence-based approach},
   9.442 +	year = 2002,
   9.443 +	publisher = {Morgan Kaufmann Publishers Inc.}
   9.444 +}
   9.445 +@Misc{Stephens95,
   9.446 +	author = {R. Stephens},
   9.447 +	title = {A Survey Of Stream Processing},
   9.448 +	year = 1995
   9.449 +}
   9.450 +@InProceedings{Palatin06,
   9.451 +	author = {P Palatin and Y Lhuillier and O Temam},
   9.452 +	title = {CAPSULE: Hardware-assisted parallel execution of componentbased programs},
   9.453 +	booktitle = {In Proceedings of the 39th Annual International Symposium on Microarchitecture},
   9.454 +	year = 2006,
   9.455 +	pages = {247--258}
   9.456 +}
   9.457 +@InProceedings{Sequioa06,
   9.458 +	author = {Fatahalian,, Kayvon and Horn,, Daniel Reiter and Knight,, Timothy J. and Leem,, Larkhoon and Houston,, Mike and Park,, Ji Young and Erez,, Mattan and Ren,, Manman and Aiken,, Alex and Dally,, William J. and Hanrahan,, Pat},
   9.459 +	title = {Sequoia: programming the memory hierarchy},
   9.460 +	booktitle = {SC '06: Proceedings of the 2006 ACM/IEEE conference on Supercomputing},
   9.461 +	year = 2006,
   9.462 +	pages = 83
   9.463 +}
   9.464 +@Book{Cole89,
   9.465 +	author = {M Cole},
   9.466 +	title = {Algorithmic skeletons: Structured management of parallel computation},
   9.467 +	publisher = {Pitman},
   9.468 +	year = 1989
   9.469 +}
   9.470 +@InProceedings{Ginhac98,
   9.471 +	author = {Dominique Ginhac and Jocelyn Serot and Jean Pierre Derutin},
   9.472 +	title = {Fast prototyping of image processing applications using functional skeletons on a MIMD-DM architecture},
   9.473 +	booktitle = {In IAPR Workshop on Machine Vision and Applications},
   9.474 +	year = 1998,
   9.475 +	pages = {468--471}
   9.476 +}
   9.477 +@InProceedings{Serot08MetaParallel,
   9.478 +	author = {Serot, Jocelyn and Falcou, Joel},
   9.479 +	title = {Functional Meta-programming for Parallel Skeletons},
   9.480 +	booktitle = {ICCS '08: Proceedings of the 8th international conference on Computational Science, Part I},
   9.481 +	year = 2008,
   9.482 +	pages = {154--163}
   9.483 +}
   9.484 +@InProceedings{Darlington93,
   9.485 +	author = {J. Darlington and A. J. Field and P. G. Harrison and P. H. J. Kelly and D. W. N. Sharp and Q. Wu},
   9.486 +	title = {Parallel programming using skeleton functions},
   9.487 +	booktitle = {},
   9.488 +	year = 1993,
   9.489 +	pages = {146--160},
   9.490 +	publisher = {Springer-Verlag}
   9.491 +}
   9.492 +@Article{Asanovic06BerkeleyView,
   9.493 +	title = {{The landscape of parallel computing research: A view from berkeley}},
   9.494 +	author = {Asanovic, K. and Bodik, R. and Catanzaro, B.C. and Gebis, J.J. and Husbands, P. and Keutzer, K. and Patterson, D.A. and Plishker, W.L. and Shalf, J. and Williams, S.W. and others},
   9.495 +	journal = {Electrical Engineering and Computer Sciences, University of California at Berkeley, Technical Report No. UCB/EECS-2006-183, December},
   9.496 +	volume = 18,
   9.497 +	number = {2006-183},
   9.498 +	pages = 19,
   9.499 +	year = 2006
   9.500 +}
   9.501 +@Misc{BerkeleyPattLang,
   9.502 +	note = {http://parlab.eecs.berkeley.edu/wiki/patterns},
   9.503 +	title = {{Berkeley Pattern Language}}
   9.504 +}
   9.505 +@Book{Mattson04Patterns,
   9.506 +	title = {{Patterns for parallel programming}},
   9.507 +	author = {Mattson, T. and Sanders, B. and Massingill, B.},
   9.508 +	year = 2004,
   9.509 +	publisher = {Addison-Wesley Professional}
   9.510 +}
   9.511 +@Article{Skillicorn98,
   9.512 +	title = {{Models and languages for parallel computation}},
   9.513 +	author = {Skillicorn, D.B. and Talia, D.},
   9.514 +	journal = {ACM Computing Surveys (CSUR)},
   9.515 +	volume = 30,
   9.516 +	number = 2,
   9.517 +	pages = {123--169},
   9.518 +	year = 1998
   9.519 +}
   9.520 +@Conference{Blelloch93NESL,
   9.521 +	title = {{Implementation of a portable nested data-parallel language}},
   9.522 +	author = {Blelloch, G.E. and Hardwick, J.C. and Chatterjee, S. and Sipelstein, J. and Zagha, M.},
   9.523 +	booktitle = {Proceedings of the fourth ACM SIGPLAN symposium on Principles and practice of parallel programming},
   9.524 +	pages = {102--111},
   9.525 +	year = 1993,
   9.526 +	organization = {ACM New York, NY, USA}
   9.527 +}
   9.528 +@Article{McgrawSisal,
   9.529 +	title = {{SISAL: Streams and iteration in a single assignment language: Reference manual version 1.2}},
   9.530 +	author = {McGraw, J. and Skedzielewski, SK and Allan, SJ and Oldehoeft, RR and Glauert, J. and Kirkham, C. and Noyce, B. and Thomas, R.},
   9.531 +	journal = {Manual M-146, Rev},
   9.532 +	volume = 1
   9.533 +}
   9.534 +@Article{Gelernter85Linda,
   9.535 +	title = {{Generative communication in Linda}},
   9.536 +	author = {Gelernter, D.},
   9.537 +	journal = {ACM Transactions on Programming Languages and Systems (TOPLAS)},
   9.538 +	volume = 7,
   9.539 +	number = 1,
   9.540 +	pages = {80--112},
   9.541 +	year = 1985
   9.542 +}
   9.543 +@Article{Lin94ZPL,
   9.544 +	title = {{ZPL: An array sublanguage}},
   9.545 +	author = {Lin, C. and Snyder, L.},
   9.546 +	journal = {Lecture Notes in Computer Science},
   9.547 +	volume = 768,
   9.548 +	pages = {96--114},
   9.549 +	year = 1994
   9.550 +}
   9.551 +@Article{baecker97,
   9.552 +	author = {Ron Baecker and Chris DiGiano and Aaron Marcus},
   9.553 +	title = {Software visualization for debugging},
   9.554 +	journal = {Communications of the ACM},
   9.555 +	volume = 40,
   9.556 +	number = 4,
   9.557 +	year = 1997,
   9.558 +	issn = {0001-0782},
   9.559 +	pages = {44--54},
   9.560 +	publisher = {ACM Press}
   9.561 +}
   9.562 +@Article{ball96,
   9.563 +	author = {T. A. Ball and S. G. Eick},
   9.564 +	title = {Software Visualization in the Large},
   9.565 +	journal = {IEEE Computer},
   9.566 +	volume = 29,
   9.567 +	number = 4,
   9.568 +	year = 1996,
   9.569 +	month = {apr},
   9.570 +	pages = {33--43}
   9.571 +}
   9.572 +@Book{berry89,
   9.573 +	title = {{The chemical abstract machine}},
   9.574 +	author = {Berry, G. and Boudol, G.},
   9.575 +	year = 1989,
   9.576 +	publisher = {ACM Press}
   9.577 +}
   9.578 +@Article{blumofe95,
   9.579 +	author = {Robert D. Blumofe and Christopher F. Joerg and Bradley C. Kuszmaul and Charles E. Leiserson and Keith H. Randall and Yuli Zhou},
   9.580 +	title = {Cilk: an efficient multithreaded runtime system},
   9.581 +	journal = {SIGPLAN Not.},
   9.582 +	volume = 30,
   9.583 +	number = 8,
   9.584 +	year = 1995,
   9.585 +	pages = {207--216}
   9.586 +}
   9.587 +@Article{burch90,
   9.588 +	title = {{Symbolic model checking: 10^{20} states and beyond}},
   9.589 +	author = {Burch, JR and Clarke, EM and McMillan, KL and Dill, DL and Hwang, LJ},
   9.590 +	journal = {Logic in Computer Science, 1990. LICS'90, Proceedings},
   9.591 +	pages = {428--439},
   9.592 +	year = 1990
   9.593 +}
   9.594 +@Article{chamberlain98,
   9.595 +	author = {B. Chamberlain and S. Choi and E. Lewis and C. Lin and L. Snyder and W. Weathersby},
   9.596 +	title = {ZPL's WYSIWYG Performance Model},
   9.597 +	journal = {hips},
   9.598 +	volume = 00,
   9.599 +	year = 1998,
   9.600 +	isbn = {0-8186-8412-7},
   9.601 +	pages = 50
   9.602 +}
   9.603 +@Article{church41,
   9.604 +	author = {A. Church},
   9.605 +	title = {The Calculi of Lambda-Conversion},
   9.606 +	journal = {Annals of Mathematics Studies},
   9.607 +	number = 6,
   9.608 +	year = 1941,
   9.609 +	publisher = {Princeton University}
   9.610 +}
   9.611 +@Misc{CodeTimeSite,
   9.612 +	author = {Sean Halle},
   9.613 +	key = {CodeTime},
   9.614 +	title = {Homepage for The CodeTime Parallel Software Platform},
   9.615 +	note = {{\ttfamily http://codetime.sourceforge.net}}
   9.616 +}
   9.617 +@Misc{CodeTimePlatform,
   9.618 +	author = {Sean Halle},
   9.619 +	key = {CodeTime},
   9.620 +	title = {The CodeTime Parallel Software Platform},
   9.621 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_Platform.pdf}}
   9.622 +}
   9.623 +@Misc{CodeTimeVS,
   9.624 +	author = {Sean Halle},
   9.625 +	key = {CodeTime},
   9.626 +	title = {The Specification of the CodeTime Platform's Virtual Server},
   9.627 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_Virtual\_Server.pdf}}
   9.628 +}
   9.629 +@Misc{CodeTimeOS,
   9.630 +	author = {Sean Halle},
   9.631 +	key = {CodeTime},
   9.632 +	title = {A Hardware Independent OS},
   9.633 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_OS.pdf}}
   9.634 +}
   9.635 +@Misc{CodeTimeSem,
   9.636 +	author = {Sean Halle},
   9.637 +	key = {CodeTime},
   9.638 +	title = {The Big-Step Operational Semantics of the CodeTime Computational Model},
   9.639 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_Semantics.pdf}}
   9.640 +}
   9.641 +@Misc{CodeTimeTh,
   9.642 +	author = {Sean Halle},
   9.643 +	key = {CodeTime},
   9.644 +	title = {A Mental Framework for Use in Creating Hardware-Independent Parallel Languages},
   9.645 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTiime\_Theoretical\_Framework.pdf}}
   9.646 +}
   9.647 +@Misc{CodeTimeTh1,
   9.648 +	author = {Sean Halle},
   9.649 +	key = {CodeTime},
   9.650 +	title = {The CodeTime Parallel Software Platform},
   9.651 +	note = {{\ttfamily http://codetime.sourceforge.net}}
   9.652 +}
   9.653 +@Misc{CodeTimeTh2,
   9.654 +	author = {Sean Halle},
   9.655 +	key = {CodeTime},
   9.656 +	title = {The CodeTime Parallel Software Platform},
   9.657 +	note = {{\ttfamily http://codetime.sourceforge.net}}
   9.658 +}
   9.659 +@Misc{CodeTimeRT,
   9.660 +	author = {Sean Halle},
   9.661 +	key = {CodeTime},
   9.662 +	title = {The CodeTime Parallel Software Platform},
   9.663 +	note = {{\ttfamily http://codetime.sourceforge.net}}
   9.664 +}
   9.665 +@Misc{CodeTimeWebSite,
   9.666 +	author = {Sean Halle},
   9.667 +	key = {CodeTime},
   9.668 +	title = {The CodeTime Parallel Software Platform},
   9.669 +	note = {{\ttfamily http://codetime.sourceforge.net}}
   9.670 +}
   9.671 +@Misc{CodeTimeBaCTiL,
   9.672 +	author = {Sean Halle},
   9.673 +	key = {CodeTime},
   9.674 +	title = {The Base CodeTime Language},
   9.675 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_BaCTiL.pdf}}
   9.676 +}
   9.677 +@Misc{CodeTimeCert,
   9.678 +	author = {Sean Halle},
   9.679 +	key = {CodeTime},
   9.680 +	title = {The CodeTime Certification Strategy},
   9.681 +	note = {{\ttfamily http://codetime.sourceforge.net/content/CodeTime\_Certification.pdf}}
   9.682 +}
   9.683 +@InProceedings{ducournau94,
   9.684 +	author = {R. Ducournau and M. Habib and M. Huchard and M. L. Mugnier},
   9.685 +	title = {Proposal for a monotonic multiple inheritance linearization},
   9.686 +	booktitle = {OOPSLA '94: Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications},
   9.687 +	year = 1994,
   9.688 +	pages = {164--175},
   9.689 +	publisher = {ACM Press}
   9.690 +}
   9.691 +@Article{emerson91,
   9.692 +	title = {{Tree automata, mu-calculus and determinacy}},
   9.693 +	author = {Emerson, EA and Jutla, CS},
   9.694 +	journal = {Proceedings of the 32nd Symposium on Foundations of Computer Science},
   9.695 +	pages = {368--377},
   9.696 +	year = 1991
   9.697 +}
   9.698 +@Article{fortune78,
   9.699 +	title = {{Parallelism in random access machines}},
   9.700 +	author = {Fortune, S. and Wyllie, J.},
   9.701 +	journal = {STOC '78: Proceedings of the tenth annual ACM symposium on Theory of computing},
   9.702 +	pages = {114--118},
   9.703 +	year = 1978,
   9.704 +	publisher = {ACM Press New York, NY, USA}
   9.705 +}
   9.706 +@Book{goldberg83,
   9.707 +	title = {{Smalltalk-80: the language and its implementation}},
   9.708 +	author = {Goldberg, A. and Robson, D.},
   9.709 +	year = 1983,
   9.710 +	publisher = {Addison-Wesley}
   9.711 +}
   9.712 +@InProceedings{goldschlager78,
   9.713 +	author = {Leslie M. Goldschlager},
   9.714 +	title = {A unified approach to models of synchronous parallel machines},
   9.715 +	booktitle = {STOC '78: Proceedings of the tenth annual ACM symposium on Theory of computing},
   9.716 +	year = 1978,
   9.717 +	pages = {89--94},
   9.718 +	location = {San Diego, California, United States},
   9.719 +	doi = {http://doi.acm.org/10.1145/800133.804336},
   9.720 +	publisher = {ACM Press}
   9.721 +}
   9.722 +@Book{gosling96,
   9.723 +	author = {J. Gosling and B. Joy and G. Steele and G. Bracha},
   9.724 +	title = {The Java Language Specification},
   9.725 +	publisher = {Addison-Wesley},
   9.726 +	year = 1996
   9.727 +}
   9.728 +@Article{hasselbring00,
   9.729 +	author = {Wilhelm Hasselbring},
   9.730 +	title = {Programming languages and systems for prototyping concurrent applications},
   9.731 +	journal = {ACM Comput. Surv.},
   9.732 +	volume = 32,
   9.733 +	number = 1,
   9.734 +	year = 2000,
   9.735 +	issn = {0360-0300},
   9.736 +	pages = {43--79},
   9.737 +	doi = {http://doi.acm.org/10.1145/349194.349199},
   9.738 +	publisher = {ACM Press},
   9.739 +	address = {New York, NY, USA}
   9.740 +}
   9.741 +@Article{hoare78,
   9.742 +	author = {C. A. R. Hoare},
   9.743 +	title = {Communicating Sequential Processes},
   9.744 +	journal = {Communications of the ACM},
   9.745 +	year = 1978,
   9.746 +	volume = 21,
   9.747 +	number = 8,
   9.748 +	pages = {666-677}
   9.749 +}
   9.750 +@Article{huth,
   9.751 +	title = {{A Unifying Framework for Model Checking Labeled Kripke Structures, Modal Transition Systems, and Interval Transition Systems}},
   9.752 +	author = {Huth, M.},
   9.753 +	journal = {Proceedings of the 19th International Conference on the Foundations of Software Technology \& Theoretical Computer Science, Lecture Notes in Computer Science},
   9.754 +	pages = {369--380},
   9.755 +	publisher = {Springer-Verlag}
   9.756 +}
   9.757 +@Article{johnston04,
   9.758 +	author = {Wesley M. Johnston and J. R. Paul Hanna and Richard J. Millar},
   9.759 +	title = {Advances in dataflow programming languages},
   9.760 +	journal = {ACM Comput. Surv.},
   9.761 +	volume = 36,
   9.762 +	number = 1,
   9.763 +	year = 2004,
   9.764 +	issn = {0360-0300},
   9.765 +	pages = {1--34},
   9.766 +	doi = {http://doi.acm.org/10.1145/1013208.1013209},
   9.767 +	publisher = {ACM Press},
   9.768 +	address = {New York, NY, USA}
   9.769 +}
   9.770 +@Book{koelbel93,
   9.771 +	author = {C. H. Koelbel and D. Loveman and R. Schreiber and G. Steele Jr},
   9.772 +	title = {High Performance Fortran Handbook},
   9.773 +	year = 1993,
   9.774 +	publisher = {MIT Press}
   9.775 +}
   9.776 +@Article{kozen83,
   9.777 +	title = {{Results on the Propositional mu-Calculus}},
   9.778 +	author = {Kozen, D.},
   9.779 +	journal = {TCS},
   9.780 +	volume = 27,
   9.781 +	pages = {333--354},
   9.782 +	year = 1983
   9.783 +}
   9.784 +@Article{kripke63,
   9.785 +	title = {{Semantical analysis of modal logic}},
   9.786 +	author = {Kripke, S.},
   9.787 +	journal = {Zeitschrift fur Mathematische Logik und Grundlagen der Mathematik},
   9.788 +	volume = 9,
   9.789 +	pages = {67--96},
   9.790 +	year = 1963
   9.791 +}
   9.792 +@Book{mcGraw85,
   9.793 +	author = {J McGraw and S. Skedzielewski and S. Allan and R Odefoeft},
   9.794 +	title = {SISAL: Streams and Iteration in a Single-Assignment Language: Reference Manual Version 1.2},
   9.795 +	note = {Manual M-146 Rev. 1},
   9.796 +	publisher = {Lawrence Livermore National Laboratory},
   9.797 +	year = 1985
   9.798 +}
   9.799 +@Book{milner80,
   9.800 +	title = {{A Calculus of Communicating Systems, volume 92 of Lecture Notes in Computer Science}},
   9.801 +	author = {Milner, R.},
   9.802 +	year = 1980,
   9.803 +	publisher = {Springer-Verlag}
   9.804 +}
   9.805 +@Article{milner92,
   9.806 +	title = {{A calculus of mobile processes, parts I and II}},
   9.807 +	author = {Milner, R. and Parrow, J. and Walker, D.},
   9.808 +	journal = {Information and Computation},
   9.809 +	volume = 100,
   9.810 +	number = 1,
   9.811 +	pages = {1--40 and 41--77},
   9.812 +	year = 1992,
   9.813 +	publisher = {Academic Press}
   9.814 +}
   9.815 +@Book{milner99,
   9.816 +	author = {Robin Milner},
   9.817 +	title = {Communicating and Mobile Systems: The pi-Calculus},
   9.818 +	publisher = {Cambridge University Press},
   9.819 +	year = 1999
   9.820 +}
   9.821 +@Book{MPIForum94,
   9.822 +	author = {M. P. I. Forum},
   9.823 +	title = {MPI: A Message-Passing Interface Standard},
   9.824 +	year = 1994
   9.825 +}
   9.826 +@Article{petri62,
   9.827 +	title = {{Fundamentals of a theory of asynchronous information flow}},
   9.828 +	author = {Petri, C.A.},
   9.829 +	journal = {Proc. IFIP Congress},
   9.830 +	volume = 62,
   9.831 +	pages = {386--390},
   9.832 +	year = 1962
   9.833 +}
   9.834 +@Book{pierce02,
   9.835 +	title = {Types and Programming Languages},
   9.836 +	author = {Pierce, B. C.},
   9.837 +	year = 2002,
   9.838 +	publisher = {MIT Press}
   9.839 +}
   9.840 +@Article{price,
   9.841 +	author = {B. A. Price and R. M. Baecker and L. S. Small},
   9.842 +	title = {A Principled Taxonomy of Software Visualization},
   9.843 +	journal = {Journal of Visual Languages and Computing},
   9.844 +	volume = 4,
   9.845 +	number = 3,
   9.846 +	pages = {211--266}
   9.847 +}
   9.848 +@Misc{pythonWebSite,
   9.849 +	key = {Python},
   9.850 +	title = {The Python Software Foundation Mission Statement},
   9.851 +	note = {{\ttfamily http://www.python.org/psf/mission.html}}
   9.852 +}
   9.853 +@Unpublished{reed03,
   9.854 +	editor = {Daniel A. Reed},
   9.855 +	title = {Workshop on The Roadmap for the Revitalization of High-End Computing},
   9.856 +	day = {16--18},
   9.857 +	month = {jun},
   9.858 +	year = 2003,
   9.859 +	note = {Available at {\ttfamily http://www.cra.org/reports/supercomputing.web.pdf}}
   9.860 +}
   9.861 +@Article{reeves84,
   9.862 +	author = {A. P. Reeves},
   9.863 +	title = {Parallel Pascal -- An Extended Pascal for Parallel Computers},
   9.864 +	journal = {Journal of Parallel and Distributed Computing},
   9.865 +	volume = 1,
   9.866 +	number = {},
   9.867 +	year = 1984,
   9.868 +	month = {aug},
   9.869 +	pages = {64--80}
   9.870 +}
   9.871 +@Article{skillicorn98,
   9.872 +	author = {David B. Skillicorn and Domenico Talia},
   9.873 +	title = {Models and languages for parallel computation},
   9.874 +	journal = {ACM Comput. Surv.},
   9.875 +	volume = 30,
   9.876 +	number = 2,
   9.877 +	year = 1998,
   9.878 +	issn = {0360-0300},
   9.879 +	pages = {123--169},
   9.880 +	doi = {http://doi.acm.org/10.1145/280277.280278},
   9.881 +	publisher = {ACM Press},
   9.882 +	address = {New York, NY, USA}
   9.883 +}
   9.884 +@Article{stefik86,
   9.885 +	title = {Object Oriented Programming: Themes and Variations},
   9.886 +	author = {Stefik, M. and Bobrow, D. G.},
   9.887 +	journal = {The AI Magazine},
   9.888 +	volume = 6,
   9.889 +	number = 4,
   9.890 +	year = 1986
   9.891 +}
   9.892 +@Book{stirling92,
   9.893 +	title = {{Modal and Temporal Logics}},
   9.894 +	author = {Stirling, C.},
   9.895 +	year = 1992,
   9.896 +	publisher = {University of Edinburgh, Department of Computer Science}
   9.897 +}
   9.898 +@Misc{TitaniumWebSite,
   9.899 +	author = {Paul Hilfinger and et. al.},
   9.900 +	title = {The Titanium Project Home Page},
   9.901 +	note = {{\ttfamily http://www.cs.berkeley.edu/projects/titanium}}
   9.902 +}
   9.903 +@Misc{turing38,
   9.904 +	author = {A. Turing},
   9.905 +	note = {http://www.turingarchive.org/intro/, and http://www.turing.org.uk/sources/biblio4.html, and http://web.comlab.ox.ac.uk/oucl/research/areas/ieg/e-library/sources/tp2-ie.pdf},
   9.906 +	year = 1938
   9.907 +}
   9.908 +@Book{vonNeumann45,
   9.909 +	title = {First Draft of a Report on the EDVAC},
   9.910 +	author = {J. von Neumann},
   9.911 +	year = 1945,
   9.912 +	publisher = {United States Army Ordnance Department}
   9.913 +}
   9.914 +@Book{winskel93,
   9.915 +	title = {{The Formal Semantics of Programming Languages}},
   9.916 +	author = {Winskel, G.},
   9.917 +	year = 1993,
   9.918 +	publisher = {MIT Press}
   9.919 +}