From 987bfadfb1e24ed4e2af61631ba3a2d5db848325 Mon Sep 17 00:00:00 2001 From: Matt Pagnan Date: Sat, 23 Apr 2016 00:15:51 -0400 Subject: [PATCH] made changes to key algorithms --- Documentation/DesignDoc/DetailedDesign.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/DesignDoc/DetailedDesign.tex b/Documentation/DesignDoc/DetailedDesign.tex index f6bf0ee8..414ce130 100644 --- a/Documentation/DesignDoc/DetailedDesign.tex +++ b/Documentation/DesignDoc/DetailedDesign.tex @@ -459,7 +459,7 @@ \subsection{Key Algorithms} There are a variety of algorithms used in the module. When porting to the GPU, the same algorithms will be modified to run in parallel. In general, this consists of taking array traversals and running the procedures executed sequentially at the same time on different cores of the GPU. \subsubsection{GetXsecList} -GetXsecList takes in an array of energy queries, it then sends that array to the GPU to work on. The GPU divides up the work by having each individual thread on the GPU be responsible for a single energy query. Every thread will run the same algorithm that is run on the CPU, but instead they will all be doing it at the same time all checking the same vector for the Xsec corresponding to the energy query that thread has. +GetXsecList takes in an array of energy queries, it then sends that array to the GPU to work on. The GPU divides up the work by having each individual thread on the GPU be responsible for a single energy query. Every thread will look through the data vector independently until it finds the xSec corresponding to its energy value. This will all be happening in parallel. The results found replace the corresponding query energies %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ---- NeutronHPVector