(no commit message)
authorlkcl <lkcl@web>
Mon, 20 Jun 2022 16:55:07 +0000 (17:55 +0100)
committerIkiWiki <ikiwiki.info>
Mon, 20 Jun 2022 16:55:07 +0000 (17:55 +0100)
openpower/sv/vector_ops/discussion.mdwn

index 55c8bec8d545c7e6ddd716b8277e645f3c436806..397807cecfd7b1c412f557bcf45c8b88634fd838 100644 (file)
@@ -9,14 +9,12 @@ Links:
 * <https://lists.libre-soc.org/pipermail/libre-soc-dev/2022-May/004884.html>
 * <https://bugs.libre-soc.org/show_bug.cgi?id=213>
 
-# Vector
-
 Both of these instructions may be synthesised from SVP64 Vector
 instructions.  conflictd is an O(N^2) instruction based on
 `sv.cmpi` and iota is an O(N) instruction based on `sv.addi`
 with the appropriate predication 
 
-## conflictd
+# conflictd
 
 This is based on the AVX512 conflict detection instruction.  Internally the logic is used to detect address conflicts in multi-issue LD/ST operations.  Two arrays of values are given: the indices are compared and duplicates reported in a triangular fashion.  the instruction may be used for histograms (computed in parallel)
 
@@ -69,7 +67,7 @@ To investigate:
 * <https://stackoverflow.com/questions/39266476/how-to-speed-up-this-histogram-of-lut-lookups>
 * <https://stackoverflow.com/questions/39913707/how-do-the-conflict-detection-instructions-make-it-easier-to-vectorize-loops>
 
-## iota
+# iota
 
 Based on RVV vmiota.  vmiota may be viewed as a cumulative variant of popcount, generating multiple results.  successive iterations include more and more bits of the bitstream being tested.