<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Matrix Transposition on Dispatch3 Inc.</title><link>https://dispatch3.com/tags/matrix-transposition/</link><description>Recent content in Matrix Transposition on Dispatch3 Inc.</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Sun, 07 Apr 2013 00:00:00 -0400</lastBuildDate><atom:link href="https://dispatch3.com/tags/matrix-transposition/index.xml" rel="self" type="application/rss+xml"/><item><title>Memoryless Matrix Transposition II</title><link>https://dispatch3.com/posts/fast_matrix_transpo_kepler_2/</link><pubDate>Sun, 07 Apr 2013 00:00:00 -0400</pubDate><guid>https://dispatch3.com/posts/fast_matrix_transpo_kepler_2/</guid><description>Last time I presented a clever way of transposing that exploited the GPU&amp;rsquo;s support of 32-byte stores as its smallest &amp;ldquo;100% efficient&amp;rdquo; transaction size.
An open question was whether designing a transpose that performed 64-byte stores would achieve better performance at the cost of more instructions.
The answer is yes. Performing 64-byte transactions improves throughput by ~8%. The new 64-byte transpose kernel reaches ~148 GB/sec. on a 1024x1024 matrix of 32-bit elements on a K20c (758MHz).</description></item><item><title>Memoryless Matrix Transposition</title><link>https://dispatch3.com/posts/fast_matrix_transpo_kepler/</link><pubDate>Tue, 26 Mar 2013 00:00:00 -0400</pubDate><guid>https://dispatch3.com/posts/fast_matrix_transpo_kepler/</guid><description>I needed a fast and minimal routine that could transpose a warp with 32 elements per lane and store the result to device memory as the final step in a complex kernel.
However, I had a hypothesis that Kepler SHFL instructions and 16-byte stores by pairs of lanes would be functionally equivalent to the standard matrix transpose approach but not require any shared memory or thread block synchronization yet still achieve 100% memory store efficiency.</description></item></channel></rss>