-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Jonas
committed
Apr 2, 2014
1 parent
bc898a5
commit bcd6d0d
Showing
18 changed files
with
1,152 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
.tmp/* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,14 @@ | ||
#TeXlipse project settings | ||
#Mon Feb 10 15:35:52 CET 2014 | ||
#Tue Apr 01 17:10:16 CEST 2014 | ||
markTmpDer=true | ||
builderNum=2 | ||
outputDir= | ||
makeIndSty= | ||
bibrefDir= | ||
outputFormat=pdf | ||
tempDir=.tmp | ||
mainTexFile=14.02.11_cern-pc-farm.tex | ||
outputFile=14.02.11_cern-pc-farm.pdf | ||
mainTexFile=14.04.02_pc-farm.tex | ||
outputFile=14.04.02_pc-farm.pdf | ||
langSpell=en | ||
markDer=true | ||
srcDir=meetings/14.02.11_cern-pc-farm | ||
srcDir=meetings/14.04.02_pc-farm |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
K 25 | ||
svn:wc:ra_dav:version-url | ||
V 62 | ||
/repos/kunzej/!svn/ver/792/talks/meetings/13.03.27_pisa-remote | ||
END | ||
pages.tex | ||
K 25 | ||
svn:wc:ra_dav:version-url | ||
V 72 | ||
/repos/kunzej/!svn/ver/792/talks/meetings/13.03.27_pisa-remote/pages.tex | ||
END | ||
13.03.27_pisa-remote.tex | ||
K 25 | ||
svn:wc:ra_dav:version-url | ||
V 87 | ||
/repos/kunzej/!svn/ver/792/talks/meetings/13.03.27_pisa-remote/13.03.27_pisa-remote.tex | ||
END |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,99 @@ | ||
10 | ||
|
||
dir | ||
841 | ||
https://win.etap-svn/repos/kunzej/talks/meetings/13.03.27_pisa-remote | ||
https://win.etap-svn/repos/kunzej | ||
|
||
|
||
|
||
2013-03-28T11:43:23.529941Z | ||
792 | ||
[email protected] | ||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
7b75de4d-efc6-422f-b655-f4d30aa840ef | ||
|
||
pics | ||
dir | ||
|
||
pages.tex | ||
file | ||
|
||
|
||
|
||
|
||
2013-11-04T13:31:45.138275Z | ||
1907a38bf341bee4c6be1bd3c92a3c44 | ||
2013-03-28T11:43:23.529941Z | ||
792 | ||
[email protected] | ||
has-props | ||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
4344 | ||
|
||
13.03.27_pisa-remote.tex | ||
file | ||
|
||
|
||
|
||
|
||
2013-11-04T13:31:45.107262Z | ||
0c023e4af7a4aff1fc12a4429b1dfcbb | ||
2013-03-28T11:43:23.529941Z | ||
792 | ||
[email protected] | ||
has-props | ||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
1715 | ||
|
9 changes: 9 additions & 0 deletions
9
meetings/14.04.02_pc-farm/.svn/prop-base/13.03.27_pisa-remote.tex.svn-base
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
K 14 | ||
svn:executable | ||
V 1 | ||
* | ||
K 13 | ||
svn:mime-type | ||
V 10 | ||
text/plain | ||
END |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
K 13 | ||
svn:mime-type | ||
V 10 | ||
text/plain | ||
END |
72 changes: 72 additions & 0 deletions
72
meetings/14.04.02_pc-farm/.svn/text-base/13.03.27_pisa-remote.tex.svn-base
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
\input{../../common/header.tex} | ||
\usepackage[ngerman]{babel} | ||
\usepackage{bibgerm} | ||
|
||
% | ||
% Paket um LIstings sauber zu formatieren. | ||
% | ||
\usepackage{listings} | ||
|
||
% Umlaute für listings | ||
\lstset{ | ||
literate= {Ö}{{\"O}}1 {Ä}{{\"A}}1 {Ü}{{\"U}}1 {ß}{{\ss}}2 {ü}{{\"u}}1 | ||
{ä}{{\"a}}1 {ö}{{\"o}}1 | ||
} | ||
|
||
\lstloadlanguages{C++,sh} | ||
|
||
\definecolor{darkblue}{rgb}{0,0,.6} | ||
\definecolor{darkred}{rgb}{.6,0,0} | ||
\definecolor{darkgreen}{rgb}{0,.6,0} | ||
|
||
\renewcommand{\lstlistingname}{Quellcode} | ||
|
||
\definecolor{javared}{rgb}{0.6,0,0} % for strings | ||
\definecolor{javagreen}{rgb}{0.25,0.5,0.35} % comments | ||
\definecolor{javapurple}{rgb}{0.5,0,0.35} % keywords | ||
\definecolor{javadocblue}{rgb}{0.25,0.35,0.75} % javadoc | ||
|
||
|
||
\AtBeginSection[]{% | ||
\begin{frame} | ||
\tableofcontents[currentsection] | ||
\end{frame} | ||
} | ||
|
||
\lstset{% | ||
language=C++, | ||
basicstyle=\ttfamily, | ||
commentstyle=\itshape\color{darkgreen}, | ||
keywordstyle=\bfseries\color{darkblue}, | ||
stringstyle=\color{darkred}, | ||
morecomment=[s][\color{javadocblue}]{/**}{*/}, | ||
showspaces=false, | ||
showtabs=false, | ||
columns=fixed, | ||
numbers=left, | ||
frame=none, | ||
numberstyle=\tiny, | ||
breaklines=true, | ||
showstringspaces=false, | ||
xleftmargin=1cm, | ||
captionpos=b, | ||
otherkeywords={$, \{, \}, \[, \], class} | ||
}%s | ||
|
||
\title{Implementation of L1 and L2 in the PC farm} | ||
\author{Jonas Kunze} | ||
\date{27.03.2013} | ||
|
||
\institute[{Universität Mainz}]{ | ||
\inst{} Universität Mainz} | ||
\titlegraphic{\includegraphics[height=3cm]{penguins}} | ||
%\logo{\includegraphics[width=2cm]{na62-logo}} | ||
\subject{NA62 online pc-farm design and implementation} | ||
\keywords{NA62,computing,multithreading,trigger,c++,boost,asio,10g} | ||
|
||
\begin{document} | ||
\frame{\titlepage} | ||
%\frame{\tableofcontents} | ||
|
||
\input{pages.tex} | ||
\end{document} |
142 changes: 142 additions & 0 deletions
142
meetings/14.04.02_pc-farm/.svn/text-base/pages.tex.svn-base
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,142 @@ | ||
\section{L1 computation} | ||
|
||
\begin{frame}{L1 Eventbuilding}{} | ||
\begin{block}{L1 Eventbuilding} | ||
L1 trigger executed not before all L0 data has been received \\ | ||
$\Rightarrow$ L1 algorithms have access to full event (except LKr data) | ||
\end{block} | ||
|
||
\begin{exampleblock}{All detectors processed within one thread} | ||
You can define the (most efficient) order of the algorithms\\ | ||
e.g. execute most CPU demanding parts at last | ||
\end{exampleblock} | ||
\end{frame} | ||
|
||
\begin{frame}[fragile] | ||
\frametitle{L1 interface} | ||
After successfully collecting all L0 data of one event the following method is | ||
invoked: | ||
\begin{lstlisting}[frame=trBL,caption={}]{} | ||
const uint16_t L1TriggerProcessor::compute(Event* event) { | ||
// Your code comes here | ||
... | ||
return (L0Trigger + L1Trigger<<8); | ||
} | ||
\end{lstlisting} | ||
if L1Trigger==0 the event will be discarded by the framework | ||
\end{frame} | ||
|
||
|
||
\begin{frame}{Event data structure}{} | ||
\begin{center} | ||
\includegraphics[width=6cm]{event-data-structure} | ||
\end{center} | ||
MEPEvent: The actual raw data struct as received via a MEP. Each | ||
subevent has as many MEPEvents as sources (Tel62 boards) are sending MEPs. | ||
\end{frame} | ||
|
||
\begin{frame}[fragile] | ||
\frametitle{Accessing the raw data} | ||
Event has one getter function for each detector: | ||
\begin{lstlisting}[frame=trBL,caption={}]{} | ||
Subevent* muv=event->getMUVSubevent(); | ||
for (int p = muv->getNumberOfParts()-1; p >= 0; p--) { | ||
MEPEvent* mepData = muv->getPart(p); | ||
mepData->getSourceID(); | ||
mepData->getData(); | ||
mepData->getEventLength(); | ||
} | ||
\end{lstlisting} | ||
\end{frame} | ||
|
||
\begin{frame}[fragile] | ||
\frametitle{L0TP} | ||
Some data has to be taken from the L0TP data: | ||
\begin{lstlisting}[frame=trBL,caption={}]{} | ||
MEPEvent* L0TPEvent = event->getL0TPSubevent()->getPart(0); | ||
|
||
//Struct L0TP has to be defined: | ||
L0TP* L0TPData = (L0TP*) L0TPEvent->getData(); | ||
event->setFinetime(L0TPData->fineTime); | ||
\end{lstlisting} | ||
\end{frame} | ||
|
||
\section{L2 computation} | ||
\begin{frame}[fragile] | ||
\frametitle{L2interface} | ||
After successfully collecting all CREAM data of one event the following method | ||
is invoked with the very same Event object: | ||
\begin{lstlisting}[frame=trBL,caption={}]{} | ||
const uint8_t L2TriggerProcessor::compute(Event* event) { | ||
// Your code comes here | ||
... | ||
return L2Trigger; | ||
} | ||
\end{lstlisting} | ||
Event may be used for L1$\rightarrow$L2 communications | ||
\end{frame} | ||
|
||
% \begin{frame}[fragile] | ||
% \frametitle{CREAM data} | ||
% Accessing the CREAM data has to be done by crateID and CREAMID: | ||
% \begin{lstlisting}[frame=trBL,caption={}]{} | ||
% LKREvent* lkrEvent = event->getLKrEvent(crateID, creamID); | ||
% lkrEvent->getData(); | ||
% lkrEvent->getEventLength(); | ||
% \end{lstlisting} | ||
% \end{frame} | ||
|
||
\section{Constraints} | ||
\begin{frame}{Constraints for the trigger implementations}{} | ||
There are no constraints concerning CPU time or memory consumption: | ||
The more you need, the more PCs you have to buy! | ||
|
||
\begin{itemize} | ||
\item Do not use any kind of parallelisation without asking me!!! | ||
\item Do not free any memory coming from *event | ||
\item Use Eclipse for development: (code completion, easy debugging, auto | ||
make, refactoring\ldots) | ||
\end{itemize} | ||
\end{frame} | ||
|
||
\section{Future approach} | ||
\begin{frame}{Accessing the code}{} | ||
The code (eclipse project) is available under CERN SVN:\\ \\ | ||
svn co https://svn.cern.ch/reps/na62-farm/na62-farm \\ | ||
|
||
Access has to be requested via mail: [email protected] | ||
|
||
\begin{block}{Dependencies/Prerequisites} | ||
\begin{enumerate} | ||
\item boost and tcmalloc (run install/install.sh) | ||
\item Root access | ||
\item PCIe network device | ||
\item pf\_ring: (installed via install/install.sh) | ||
\end{enumerate} | ||
|
||
I can implement a low performance version to get rid of points 2-4 | ||
|
||
\end{block} | ||
\end{frame} | ||
|
||
\begin{frame}{To be done}{} | ||
\begin{block}{Simulation with MC data} | ||
Only simple Tel62/CREAM simulators exist sending random data | ||
\end{block} | ||
\begin{ergo} | ||
If someone generates MEP files out of MC data I can implement the transmitter | ||
needed to test the L1/L2 algorithms | ||
\end{ergo} | ||
\end{frame} | ||
|
||
\section{Summary} | ||
\begin{frame}{Summary}{} | ||
\begin{itemize} | ||
\item You can put your algorithms into na62-farm/l[12] | ||
\item Someone has to manage L[12]TriggerProcessor::compute (order of | ||
algorithms) | ||
\item Someone has to provide me MC data in the MEP format | ||
\item Please request access to the repository the next 10 days! | ||
\item Feel free to: ssh root@na62farm6 "eclipse" | ||
\end{itemize} | ||
\end{frame} |
Oops, something went wrong.