Bug 1244: changes to pospopcnt
[libreriscv.git] / conferences / fosdem2024 / fosdem2024_ddffirst / fosdem2024_ddffirst.tex
index c8f8ba28eaa909293de78a735059fd384ebd7bab..04805956b4ec69c52215cd79a878d57512640706 100644 (file)
@@ -183,19 +183,26 @@ for (i = 0; i < VL; i++)
   \begin{itemize}
        \item   Positional popcount adds up the totals of each bit set to 1 in each bit-position, of an array of input values.
        \item   Notoriously difficult to do in SIMD assembler: typically 550 lines
+    \item https://github.com/clausecker/pospop
 
    \end{itemize}
        
        \lstinputlisting[language={}]{pospopcount.c}
+
        
 }
 
 \frame{\frametitle{Pospopcount}
        
        \begin{center}
-               \includegraphics[width=0.6\textwidth]{pospopcount.png}
+               \includegraphics[width=0.5\textwidth]{pospopcount.png}
        \end{center}
-       
+         \begin{itemize}
+               \item   The challenge is to perform an appropriate transpose of the data (the CPU can only work on registers, horizontally),
+               in blocks that suit the processor and the ISA capacity.
+
+               
+       \end{itemize}
 }
 
 \frame{\frametitle{Pospopcount}
@@ -205,11 +212,10 @@ for (i = 0; i < VL; i++)
        \end{center}
 
   \begin{itemize}
-               \item   The challenge is to perform an appropriate transpose of the data (the CPU can only work on registers, horizontally),
-                               in blocks that suit the processor and the ISA capacity.
-               \item   The draft gbbd instruction implements the transpose, 
-                               preparing the data to use the standard popcount instruction.
 
+               \item   The draft gbbd instruction implements the transpose (shown above), 
+                               preparing the data to use the standard popcount instruction.
+                          (gbbd is based on Power ISA vgbbd)
        
        \end{itemize}