On Wed, Jan 22, 2025 at 07:59:34AM -0800, Joshua Hahn wrote: > On Wed, 22 Jan 2025 09:37:20 +0800 "Huang, Ying" <ying.huang@xxxxxxxxxxxxxxxxx> wrote: > > > The current code makes sure that when you switch modes from auto > > > to manual, it inherits the current state - instead of there being > > > some hidden state that suddenly takes precedence. > > > > I think that we can do that with two weight arrays. > > > > > So I prefer to just have one IW array and no hidden state. > > > > Then, when we switch from manual to auto mode, where to find > > auto-generated weights? Re-calculate them? > > Even in manual mode, incoming bandwidth data is continuously stored. > This way, when a user does decide to switch back to auto mode later, > the system doesn't have to retrieve the bandwidth data all over again. > As for the auto-generated weights, they are re-calculated based solely > on the bandwidth data available. (I will note that re-calculating > the weights are very quick, see reduce_interleave_weights) > > Based on your description of the expected behavior, everything you > listed out is actually what currently happens in the one-layer system. > Switching from auto --> manual inherits the auto-generated weights, and > switching from manual --> auto wipes all previous user-stored data. > Piling on - the single-layer system is very bluntly simpler (one fewer array) with the exact same behavior. Therefore it's better (in my opinion). But this is all hidden from the user - so I don't care. If you (Ying) have strong feelings, we're happy to ship either. ~Gregory