<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Ulysses on Duo&#39;s Tech Blog</title>
    <link>https://duoan.github.io/tags/ulysses/</link>
    <description>Recent content in Ulysses on Duo&#39;s Tech Blog</description>
    <image>
      <title>Duo&#39;s Tech Blog</title>
      <url>https://duoan.github.io/images/papermod-cover.png</url>
      <link>https://duoan.github.io/images/papermod-cover.png</link>
    </image>
    <generator>Hugo -- 0.153.1</generator>
    <language>en-us</language>
    <lastBuildDate>Mon, 19 May 2025 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://duoan.github.io/tags/ulysses/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Sequence Parallelism II: DeepSpeed Ulysses and All-to-All Attention</title>
      <link>https://duoan.github.io/posts/sequence-parallelism-ulysses/</link>
      <pubDate>Mon, 19 May 2025 00:00:00 +0000</pubDate>
      <guid>https://duoan.github.io/posts/sequence-parallelism-ulysses/</guid>
      <description>&lt;h1 id=&#34;sequence-parallelism-ii-deepspeed-ulysses-and-all-to-all-attention&#34;&gt;Sequence Parallelism II: DeepSpeed Ulysses and All-to-All Attention&lt;/h1&gt;
&lt;p&gt;Megatron SP is a careful memory optimization around an existing tensor-parallel block.
DeepSpeed Ulysses starts from a different question.
What if each device owns a sequence slice most of the time, but attention temporarily wants each device to own a head slice instead?&lt;/p&gt;
&lt;p&gt;The answer in DeepSpeed Ulysses is an All-to-All transpose (&lt;a href=&#34;https://arxiv.org/abs/2309.14509&#34;&gt;arXiv:2309.14509&lt;/a&gt;).
Before attention, every rank has all heads for a subset of tokens.
After All-to-All, every rank has all tokens for a subset of heads.
That one layout change lets local attention run per head while the rest of the layer can remain sequence-sharded.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
