Commit 7a0ffe4f authored by Felix Weiglhofer's avatar Felix Weiglhofer
Browse files

Fix typos.

parent ffdbcd2f
No preview for this file type
......@@ -63,7 +63,7 @@ of information.
The current implementation employs the FairTask
model and accesses digis through the
CbmDigiManager. There are ongoing efforts
to abstract from the FairRoot framewok and switch to
to abstract from the FairRoot framework and switch to
a std::vector interface. At present, the T0
detector is used as a seed detector, which
is appropriate for the most recent mCBM geometry.
......@@ -139,7 +139,7 @@ Root framework.
\section{GPU framework for online reconstruction}
% Felix
Work is currently underway to investigate the feasabillity of using GPUs for online reconstruction in CbmRoot.
Work is currently underway to investigate the feasibility of using GPUs for online reconstruction in CbmRoot.
The high degree of data parallelism that is present in the reconstruction algorithms and the fact that their runtime
is usually memory bound suggest a natural fit. However, GPU development is not straightforward for
a number of reasons. The hardware that the online processing will run on is not yet known. Therefore
......@@ -148,13 +148,13 @@ Furthermore the ability to run the reconstruction software on CPU should be reta
Such that offline processing can still be run without the need for additional hardware.
Out of the various APIs that exist for GPU programming (HIP, CUDA, SYCL and OpenCL), only SYCL is designed
to fullfill both of these requirements. However, the open source SYCL compilers that exist are still beta software at best
to fulfill both of these requirements. However, the open source SYCL compilers that exist are still beta software at best
and there is no guarantee that they will have support for state-of-the-art GPUs a few years down the line.
So instead of betting on a single API, a different approach was chosen. A library is being written that
acts as an abstraction layer between the GPU software and a specific API / compiler.
First of all, the GPU code will be compiled as regular C++ using the system compiler
alongside all the other code. If additional GPU compilers are present, then the GPU code is compiled
again into a seperate library using that compiler. At runtime the device can be selected where the reconstruction should run on.
again into a separate library using that compiler. At runtime the device can be selected where the reconstruction should run on.
If that device is the CPU, the kernels are just run on CPU with optional parallelization via OpenMP.
If a GPU was selected, the library associated with that device is loaded and run instead.
In addition to defining and running kernels, abstractions for common GPU operations are provided as well.
......@@ -164,7 +164,7 @@ In addition to this GPU abstraction layer, the STS Hitfinder is currently being
of concept.
It should be noted that this is approach based on the GPU reconstruction in the ALICE O$^2$ framework,
which works in a similiar way and is already in use successfully.
which works in a similar way and is already in use successfully.
\section{Alignment (May be skip it for this year?)}
Susovan Das?
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment