<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="354018" data-post-id="354018">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="jackalcooper" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/jackalcooper/120/5647_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  jackalcooper
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<blockquote>
<p>I was considering how I could build something straightforward that might be improved by SIMD (like matrix math) but it feels like I’m missing something.</p>
</blockquote>
<p>The status quo is the very first step to enable this (like 10%). It only allows generating MLIR vector types and generate CPU code to process them. To really make it things really “out of box”, we need to compile the vector types to native SIMD instructions on CPU or GPU. (At this point, I am not sure how far I can push it forward. Maybe I need to find ways to raise money to find people solve problems I can’t solve)<br>
The general plan is to implement equivalent functions to SIMD in mojo: <a href="https://docs.modular.com/mojo/stdlib/builtin/simd/SIMD/" rel="noopener nofollow ugc">https://docs.modular.com/mojo/stdlib/builtin/simd/SIMD/</a></p>
<p>More on this:</p>
<ul>
<li>Vector type in MLIR: <a href="https://mlir.llvm.org/docs/Dialects/Vector/" class="inline-onebox" rel="noopener nofollow ugc">'vector' Dialect - MLIR</a></li>
<li>Instructions of different targets<br>
<a href="https://mlir.llvm.org/docs/Dialects/X86Vector/" rel="noopener nofollow ugc">https://mlir.llvm.org/docs/Dialects/X86Vector/</a><br>
<a href="https://mlir.llvm.org/docs/Dialects/ArmNeon/" class="inline-onebox" rel="noopener nofollow ugc">'arm_neon' Dialect - MLIR</a><br>
<a href="https://mlir.llvm.org/docs/Dialects/ArmSME/" class="inline-onebox" rel="noopener nofollow ugc">'ArmSME' Dialect - MLIR</a></li>
</ul> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="354018" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/mojo-by-chris-lattner-looks-very-similar-to-the-nx-approach-for-elixir/55669/12">Post #11</a>
	                </div>
	            </div>
              <div id="likers-container-354018" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="354018"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-last-post cat-last-post" title="Last post!"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <span class="all-loaded">— All posts loaded —</span>
</div></template></turbo-stream>