\def\ie{{\em i.e.,}}
\def\eg{{\em e.g.,}}
\def\viz{{\em viz.,}}
\def\iff{{\em iff}}
\newcommand{\etal}{\textit{et al.}}
\newcommand{\emphbf}[1]{\textit{ \textbf{#1} } }
\newcommand{\comment}[1]{}
\newcommand{\todo}[1]{\noindent \textit{\textbf{TODO: #1}}}
\newcommand{\fix}[1]{\noindent{\textit{\textbf{FIX: #1}}}}

\newcommand{\ompPar}{\mbox{\tt parallel}}
\newcommand{\ompBarr}{\mbox{\tt barrier}}
\newcommand{\ompRed}{\mbox{\tt reduction}}
\newcommand{\mpiSend}{\mbox{\tt MPI\_send}}
\newcommand{\mpiRecv}{\mbox{\tt MPI\_recv}}

\newcommand{\Xten}{{\sf X10}}
\newcommand{\Xtendt}{{\sf X10DT}}
\newcommand{\MHP}{{\mbox{\it MHP}}}
\newcommand{\Before}{{\mbox{\it B4}}}
\newcommand{\PST}{{\mbox{\it PST}}}
\newcommand{\CS}{{\mbox{\it CS}}}
\newcommand{\LCA}{{\mbox{\it LCA}}}
\newcommand{\NEP}{{\mbox{\it NEP}}}
\newcommand{\PE}{{\mbox{\it PE}}}
\newcommand{\SPMD}{{\mbox{\it SPMD}}}
\newcommand\lseq{\mbox{$\langle$}}
\newcommand\rseq{\mbox{$\rangle$}}
\newcommand{\bfree}{\mbox{\em barrier-free}}

\newcommand{\eager}{eager}
\newcommand{\Eager}{Eager}
\newcommand{\lazy}{eager}
\newcommand{\Lazy}{Eager}
\newcommand{\eagerWithDelay}{eager-with-delay}
\newcommand{\EagerWithDelay}{Eager-with-delay}
\newcommand{\dynamicLazy}{dynamic-lazy}
\newcommand{\DynamicLazy}{Dynamic-Lazy}
\newcommand{\fixedLazy}{fixed-lazy}
\newcommand{\FixedLazy}{Fixed-Lazy}
\newcommand{\phaserBeam}{Phaser Beam}
\newcommand{\phaserBeams}{Phaser Beams}

\newcommand{\sigonly}{\mbox{\em signal-only}}
\newcommand{\waitonly}{\mbox{\em wait-only}}
\newcommand{\sigwait}{\mbox{\em signal-wait}}
\newcommand{\sigwaitsingle}{\mbox{\em signal-wait-single}}
\newcommand{\sigCapa}{\mbox{\em signal}}
\newcommand{\waitCapa}{\mbox{\em wait}}
\newcommand{\unreg}{\mbox{\em unregistered}}

\newcommand{\WP}{\ensuremath{{\cal WP}}}
\newcommand{\SP}{\ensuremath{{\cal SP}}}
\newcommand{\half}{\ensuremath{{\frac{1}{2}}}}

\newcommand{\sigMode}{\mbox{\tt SIG}}
\newcommand{\waitMode}{\mbox{\tt WAIT}}
\newcommand{\sigWaitMode}{\mbox{\tt SIG\_WAIT}}
\newcommand{\sigWaitSingleMode}{\mbox{\tt SIG\_WAIT\_SINGLE}}

\newcommand{\async}{{\small \mbox{\tt async}}}
\newcommand{\forasync}{{\small \mbox{\tt forasync}}}
\newcommand{\hjforall}{{\small \mbox{\tt forall}}}
\newcommand{\seq}{\mbox{\tt seq}}
\newcommand{\finish}{{\small \mbox{\tt finish}}}
\newcommand{\sfinish}{\mbox{\tt start-finish}}
\newcommand{\efinish}{\mbox{\tt end-finish}}
\newcommand{\foreach}{{\small \mbox{\tt forasync}}}
\newcommand{\sigOp}{\mbox{\tt signal}}
\newcommand{\waitOp}{\mbox{\tt wait}}
\newcommand{\nextOp}{\mbox{\tt next}}
\newcommand{\dropOp}{\mbox{\tt drop}}
\newcommand{\createOp}{\mbox{\tt create}}
\newcommand{\gatherOp}{\mbox{\tt gather}}
\newcommand{\broadcastOp}{\mbox{\tt broadcast}}

\newcommand{\anyOp}{\mbox{\tt ANY}}
\newcommand{\customOp}{\mbox{\tt CUSTOM}}
\newcommand{\sumOp}{\mbox{\tt SUM}}
\newcommand{\prodOp}{\mbox{\tt PROD}}
\newcommand{\minOp}{\mbox{\tt MIN}}
\newcommand{\maxOp}{\mbox{\tt MAX}}
%\newcommand{\sendOp}{\mbox{\tt send}}
\newcommand{\sendOp}{\mbox{\tt put}}
%\newcommand{\resultOp}{\mbox{\tt result}}
\newcommand{\resultOp}{\mbox{\tt get}}
\newcommand{\redResultOp}{\mbox{\tt customGet}}

\newcommand{\initM}{\mbox{\tt INIT\_ACCUM}}
\newcommand{\signalM}{\mbox{\tt SIGNAL}}
\newcommand{\waitM}{\mbox{\tt WAIT}}
%\newcommand{\sendM}{\mbox{\tt SEND}}
\newcommand{\sendM}{\mbox{\tt PUT}}
%\newcommand{\resultM}{\mbox{\tt RESULT}}
\newcommand{\resultM}{\mbox{\tt GET}}

\newcommand{\sigSync}{\mbox{\tt Sig\_Sync}}
\newcommand{\waitSync}{\mbox{\tt Wait\_Sync}}
\newcommand{\sigSyncMap}{\mbox{\tt sig\-Sync\-Map}}
\newcommand{\waitSyncMap}{\mbox{\tt wait\-Sync\-Map}}
\newcommand{\sigSyncSet}{\mbox{\tt sig\-Sync\-Set}}
\newcommand{\waitSyncSet}{\mbox{\tt wait\-Sync\-Set}}
\newcommand{\sigPhaseM}{\mbox{\tt sig\-Phase\-Master}}
\newcommand{\waitPhaseM}{\mbox{\tt wait\-Phase\-Master}}
\newcommand{\masterNo}{\mbox{curMaster}}

\newcommand{\safe}{\mbox{\tt safe}}
